Ecommerce metrics are the numbers that tell you whether your store actually makes money. They fall into five families: acquisition efficiency (ROAS, POAS, MER, CAC), customer value (AOV, LTV, LTV:CAC), the on-site funnel (conversion rate, cart abandonment), retention (repeat rate, churn), and cost and margin (COGS, contribution margin, break-even). The single metric that matters most is contribution margin per order — the profit left after every variable cost — because every other number is only "good" or "bad" relative to it. ROAS tells you revenue-per-dollar; contribution margin tells you whether that dollar was actually profitable. This guide defines each metric, works the math, and shows how they connect.
Why most metric guides steer you wrong
Most ecommerce metric lists hand you a wall of formulas and stop. They rarely tell you the one thing that decides whether a "good" number is actually good: your margin. A 4.0 return on ad spend looks great until you learn the product only keeps a quarter on the dollar after costs — then it is a loss.
The current conversation among growth-stage brands has shifted hard. As Always on Ward puts it, contribution margin transforms paid media from "spend to hit ROAS" into "invest to print profit," aligning marketing with P&L outcomes. The problem is not the media buying — it is the financial lens being used to evaluate it. ROAS measures how much revenue a platform claims per dollar spent; it does not account for cost of goods, fulfillment, payment processing, returns, or any of the other variable costs that determine whether a sale was worth making.
So this guide is organized around profit, not vanity. We define every metric with an exact formula, walk a numeric example you can follow line by line, and then show the identities that tie the metrics together. Wherever a real-world benchmark appears, it links to its source. Wherever you see a worked number, it comes from arithmetic you can check.
Think of this page as the map. Each metric family links to a deeper article in the cluster when you want to go further on one number.
Start with per-order profit, not revenue
Before any ratio, you need the profit of one average order. Everything downstream — break-even, target ROAS, LTV — depends on it.
Say a print-on-demand shirt sells for a $40 order with $16 of product cost (the blank plus printing). Gross profit = $40 − $16 = $24, and gross margin = ($40 − $16) ÷ $40 × 100 = 60%. That is the profit after the product alone.
But an order costs more than the product. Subtract shipping, payment processing, and pick-and-pack — say $5 + $1.60 + $1.40 = $8 of other variable costs. Now contribution margin before ads = $24 − $8 = $16, a margin ratio of $16 ÷ $40 = 0.40.
Then subtract the ad spend that order carried. At a 4.0 ROAS the order absorbs $40 ÷ 4 = $10 of ads, so contribution margin after ads = $16 − $10 = $6, or $6 ÷ $40 = 0.15 of revenue. That $6 — not the $40 top line — is what the order truly leaves behind.
Getting this stack right is the whole game, and the stack has a name: CM3 (contribution margin after all variable costs including ad spend). As Always on Ward notes, many brands target a CM3 ratio of at least 35% before scaling paid — calibrated by vertical, with apparel often running higher. Start with a clean CM3 formula and one "profit" dashboard before you optimize anything else.
Shifting from ROAS to contribution margin reporting
This is the most important operational change growth-stage brands are making right now, and it is worth treating as its own section.
Why ROAS misleads at scale. Heavy discounting typically boosts ROAS because it drives more sales per ad dollar spent — but those discounted sales may contribute little or nothing to actual profit once you account for payment fees, platform fees, or fulfillment charges, according to Bennett Financials. Similarly, retargeting campaigns almost always show the highest ROAS because they capture conversions that would have happened anyway — incrementality-aware reporting shifts budget away from retargeting toward prospecting, per Yashvi Konnect.
The discount trap. A sale that produces your "best ROAS week of the year" can be a margin-destroying week when you look at CM3. Prospecting campaigns that look unprofitable on standard ROAS reporting often have positive contribution at the LTV level when repeat purchases are factored in, per Yashvi Konnect. Model the discount curve before you launch the promotion, not after.
Two reporting layers every brand needs. Per-order contribution calculation (is this SKU/campaign profitable?) and blended efficiency (is the whole engine healthy?). Use ROAS to compare within consistent context — same campaign type, same product, same audience — but never as the absolute profitability metric across very different campaign types, per Yashvi Konnect. MER (see below) is the attribution-free complement for the second layer.
SKU-level contribution margin. Traditional reporting aggregates performance at the brand or channel level, hiding variability across products and campaigns, according to Saras Analytics. Some SKUs generate strong contribution margins; others operate near break-even; a few quietly lose money. Use actual weighted shipping cost and specific pick-and-pack fees per item — not a blended average — or you will hide the reality that heavier or bulkier items may be losing money, per Bennett Financials.
Audit your break-even ROAS every quarter, not once a year. Margins shift. Fulfillment costs move. A target that was profitable six months ago may be destroying margin today, per Funnelytics. The formula never changes: break-even ROAS = 1 ÷ contribution margin % — but the inputs do.
Acquisition and efficiency metrics
These answer one question: is your paid growth paying for itself?
ROAS (return on ad spend)
ROAS = revenue from ads ÷ ad spend. Say ads produced $40,000 ÷ $10,000 = 4.0. It is a revenue ratio, so it flatters you — it says nothing about margin.
Break-even ROAS is the ROAS at which margin dollars exactly cover the ad spend: break-even ROAS = 1 ÷ margin ratio. On a contribution margin of 0.40, that is 1 ÷ 0.40 = 2.5; on a thin 0.20 it climbs to 1 ÷ 0.20 = 5.0, so a "great-looking" 4.0 would lose money. The lower your margin, the higher the ROAS you must clear just to avoid bleeding — this is the most useful identity in paid media, and the break-even ROAS formula breaks it down in full.
A lower-ROAS campaign can outperform a higher-ROAS one on contribution dollars — for example, a 2x ROAS campaign on a high-margin product versus a 6x ROAS campaign on a thin-margin bundle. ROAS is useful as a comparator within consistent context; treat it as a comparator, not a goal, per Always on Ward.
Target ROAS is break-even plus a profit buffer. If you want to keep 0.15 of revenue on a 0.40 margin base, you need roughly 1 ÷ (0.40 − 0.15) = 4.0. You can size that number with a target ROAS calculator instead of guessing.
POAS (profit on ad spend)
POAS puts profit in the numerator instead of revenue: POAS = ROAS × margin ratio. On a 0.60 gross margin, 4.0 × 0.60 = 2.4. The corollary is elegant — POAS = 1 exactly when ROAS hits break-even. So POAS > 1 means the campaign truly profits; POAS < 1 means it loses no matter how healthy the ROAS looks. Same 4.0 ROAS, but 4.0 × 0.60 = 2.4 is healthy while 4.0 × 0.20 = 0.8 is a loss.
For print-on-demand sellers connecting through PodVector, Victor reads your Shopify, Meta Ads, and Google Ads data to surface POAS by campaign and by product — so you can see which campaigns are actually printing profit before deciding where to scale. See also the guide to Shopify Google Merchant Center strategy for POD for how to set up value-based bidding that targets contribution margin rather than revenue ROAS.
MER (marketing efficiency ratio)
MER = total revenue ÷ all marketing spend, store-wide. Say $40,000 ÷ $12,500 = 3.2. It is attribution-free: because it never splits credit by channel, it cannot double-count the way per-platform ROAS does when Meta and Google both claim the same order. Use ROAS to tune a channel and MER to judge the whole engine. The fix for attribution double-counting is reporting at the blended level (MER) rather than per-channel ROAS, per Yashvi Konnect. The marketing efficiency ratio guide and the deeper dive on what MER is both walk this out.
CAC, CPA, CPC
- CPC (cost per click) = ad spend ÷ clicks = $10,000 ÷ 20,000 = $0.50.
- CPA/CPO (cost per acquisition/order) = spend ÷ orders. It decomposes cleanly: CPA = CPC ÷ conversion rate = $0.50 ÷ 0.04 = $12.50.
- CAC (customer acquisition cost) counts new customers, not orders. Paid CAC = ad spend ÷ new customers = $10,000 ÷ 800 = $12.50; blended CAC adds tools and team, so $12,500 ÷ 800 ≈ $15.63.
The distinction matters: a returning buyer creates an order (feeding CPO) but not a new customer (not feeding CAC). Our how-to-calculate-CAC walkthrough covers the blended-versus-paid split in detail. For POD sellers linking their store to an ad platform for the first time, the Google Ads + Shopify setup guide covers the conversion tracking you need to make CAC trustworthy.
Customer value and retention metrics
Acquisition tells you what a customer costs. These tell you what they are worth.
AOV and LTV
AOV (average order value) = revenue ÷ orders = $40,000 ÷ 1,000 = $40.
LTV (lifetime value) is the whole relationship, not one order. On a margin basis: LTV = AOV × purchase frequency × lifespan × margin ratio = $40 × 1.6 × 2 × 0.60 = $76.80. Always state your basis — the revenue version of the same customer would read $40 × 1.6 × 2 = $128, which is why decks that mix a revenue-LTV against a profit-CAC overstate health badly.
One nuance the current top-ranking guides stress: prospecting campaigns that look unprofitable on ROAS often have positive contribution at the LTV level once repeat purchases are factored in, per Yashvi Konnect. That means your CAC decision should be modeled against margin-LTV, not single-order contribution margin alone.
LTV:CAC
LTV:CAC = LTV ÷ CAC = $76.80 ÷ $15.63 ≈ 4.9. The common health benchmark is a ratio of around three to one, a rule that traces back to SaaS economics and is explained by Harvard Business School Online. Below one-to-one you lose money on every customer; far above five-to-one you may be under-investing in growth. Two levers dominate the ratio: margin and lifespan.
New customer rate
New customer rate = new customers ÷ total customers acquired in the period. This metric is gaining prominence because ROAS tells you what happened; new customer rate tells you whether paid media is actually growing the business, per Jordan Glickman. A brand with a high blended ROAS but a declining new customer rate is paying to re-acquire buyers it already has.
Retention and churn
Retention rate = (customers at end − new) ÷ customers at start. Say (5,400 − 800) ÷ 5,000 × 100 = 92%. Churn is the complement: (1 − 0.92) × 100 = 8%, and customer lifespan ≈ 1 ÷ churn = 1 ÷ 0.08 = 12.5 periods — which is exactly the "lifespan" that feeds LTV. Cutting churn stretches lifespan and lifts LTV without touching CAC, which is why the customer retention rate formula is one of the highest-leverage numbers in the whole set.
Repeat purchase rate = customers with two or more orders ÷ total customers = 240 ÷ 1,000 × 100 = 24%. Unlike retention, it is cumulative rather than time-boxed.
For POD sellers, email is one of the highest-leverage retention channels. If you are using Klaviyo, the abandoned-cart, welcome, and post-purchase flows that Victor can draft and schedule directly feed repeat purchase rate without additional ad spend.
On-site funnel metrics
Traffic is worthless until it converts. These measure the store itself.
Conversion rate (CVR) = orders ÷ sessions × 100 = 1,000 ÷ 40,000 × 100 = 2.5%. Watch the denominator: per-session, per-visitor, and per-click all give different numbers.
Add-to-cart rate = cart-add sessions ÷ sessions = 4,000 ÷ 40,000 × 100 = 10%.
Cart abandonment rate = 1 − (orders ÷ carts). Say (1 − 1,000 ÷ 4,000) × 100 = 75%. That is close to the long-run industry norm: roughly seven in ten carts are abandoned, per the Baymard Institute, a figure that has barely moved in years. Small recovery wins here compound fast, which is why the cart abandonment rate deserves its own analysis.
Revenue per session (RPS) = revenue ÷ sessions = $40,000 ÷ 40,000 = $1.00. Neatly, RPS = CVR × AOV = 0.025 × $40 = $1.00, which is why a conversion win and an AOV win multiply rather than add.
Cost and margin metrics
These are the metrics the top-of-funnel guides always skip — and the ones that actually decide profit.
COGS is the direct product cost: $16 per order → $16 × 1,000 = $16,000.
Gross margin = (revenue − COGS) ÷ revenue = ($40 − $16) ÷ $40 × 100 = 60%.
Contribution margin subtracts all variable costs, not just COGS. Pre-ad (CM2): $40 − $16 − $8 = $16. Post-ad (CM3): $16 − $10 = $6. Gross margin tells you if a product is worth making; contribution margin tells you if it is worth selling through this channel at this CAC.
One common data quality pitfall: if your shipping costs, payment fees, and returns are estimates rather than actuals, your CM will be unreliable, per Always on Ward. Start with actual order-level data and refine from there. For POD sellers, this is especially important because fulfillment costs are set by your supplier — the Printful cost breakdown and the fabric and materials cost guide help you get the COGS inputs right before you build your CM model.
Net margin subtracts fixed costs too: total CM3 of $6 × 1,000 = $6,000, minus $4,000 of fixed cost = $2,000 net, or $2,000 ÷ $40,000 × 100 = 5%.
Markup vs margin trips up pricing constantly. Markup is over cost, margin is over price. The same order is ($40 − $16) ÷ $16 × 100 = 150% markup and ($40 − $16) ÷ $40 × 100 = 60% margin. Same gap, two numbers — never confuse them.
Break-even units = fixed costs ÷ contribution margin per order = $4,000 ÷ $6 ≈ 667 orders per month before profit begins.
How the metrics connect
The metrics are not a list — they are a web of identities. A few worth memorizing:
- CPA = CPC ÷ CVR. Cheaper clicks or better conversion both cut acquisition cost.
- Break-even ROAS = 1 ÷ margin ratio. Your margin sets the bar every campaign must clear.
- POAS = ROAS × margin ratio. Profitable exactly when POAS crosses one.
- RPS = CVR × AOV. CRO and merchandising compound.
- MER ≤ blended ROAS, always, because total marketing spend is at least ad spend.
- LTV (margin basis) = AOV × frequency × lifespan × margin ratio. Never compare a revenue-LTV to a profit-CAC.
When these identities disagree, it is almost always a definition problem — a margin used one way in break-even and another in LTV. Keeping one consistent margin basis across every ratio is what separates a real P&L from a pretty chart. As Jordan Glickman notes, the moment a team sees clearly that their planned scaling trajectory compresses contribution margin to near zero within months, the conversation about offer architecture, product mix, and customer retention shifts immediately — and permanently away from debating which platform's ROAS number to believe.
The pitfalls that quietly break the math
- Denominator drift. "Conversion rate" per session, per visitor, and per click are three different numbers. Standardize before comparing.
- Clicks vs link clicks. Meta's "all clicks" includes likes and taps; compute CVR on link clicks or landing-page views.
- Mixed-attribution double-counting. Summing each platform's claimed conversions over-counts shared journeys and inflates every channel's ROAS — the reason MER exists. A customer might discover your brand on one platform, return through search, and convert from email; no single channel deserves full credit.
- Revenue basis vs profit basis. ROAS and revenue-LTV flatter; POAS and margin-LTV tell the truth. Keep numerator bases consistent in any ratio.
- Averages hiding the distribution. One "AOV $40" can mask many one-time buyers plus a few whales. Segment before acting.
- Blended shipping costs masking SKU-level losses. Heavier or bulkier items often lose money when you apply a store-wide average shipping cost instead of actual per-item fulfillment fees, per Bennett Financials. For POD sellers, every supplier and product has a distinct fulfillment cost — see the comparison in Printify vs Printful for how cost structures differ.
- Discount blind spots. Promotions that drive ROAS through discounts often have negative contribution margin after accounting for the discount depth, per Yashvi Konnect. Model the break-even ROAS impact of any promo before you launch it.
Where PodVector fits
Most of the errors above share one root cause: the profit number lives in a spreadsheet while the revenue numbers live in the ad platforms, and nothing reconciles them per order.
PodVector connects Shopify, Meta Ads, Google Ads, Printify, and Printful into a live data warehouse and computes true per-order contribution margin across all of them — so CM2, CM3, POAS, and break-even ROAS are grounded in real supplier fees, real shipping, and real ad spend rather than a rounded guess. PodVector is not a dashboard you read; Victor, its AI employee, analyzes your live data and proposes the next profit move as a structured action — repricing products to a target margin, pausing a losing Meta campaign, raising the free-shipping threshold, or building a Klaviyo retention flow. Each proposed action shows you the old and new values before you approve or reject it. You stay in control of every change; Victor never acts autonomously.
Victor reads your Google Ads and Meta Ads data to surface POAS, MER, and break-even ROAS by campaign and by product, and proposes moves — but his write actions execute on the Shopify side. If you are setting up your Google channel for the first time, the Google Ads + Shopify integration guide and the Merchant Center strategy for POD will get your attribution in order before Victor starts reading your data. And if you are still choosing between suppliers, the PodVector strategy overview explains how the platform fits into a full POD operation.
See your true per-order contribution margin with PodVector →
FAQs
What are the most important ecommerce metrics to track?
Start with contribution margin per order (CM3 — after product cost, variable costs, and ad spend), then the ratios that depend on it: POAS, break-even ROAS, CAC, and LTV:CAC. Revenue-only metrics like ROAS and AOV are useful for tuning individual channels but can hide losses, so never judge whether to scale a campaign on revenue metrics alone.
What is the difference between ROAS and POAS?
Same denominator, different numerator. ROAS = revenue ÷ ad spend; POAS = profit ÷ ad spend = ROAS × margin ratio. ROAS is top-line and can look healthy on an unprofitable product; POAS is bottom-line and turns positive only when ROAS beats your break-even. A 6x ROAS campaign can be unprofitable; a 2x ROAS campaign on a high-margin product can be highly profitable — the difference is contribution margin.
How do I calculate break-even ROAS?
Break-even ROAS = 1 ÷ your contribution-margin ratio. On a 0.40 margin that is 1 ÷ 0.40 = 2.5; on 0.25 it is 1 ÷ 0.25 = 4.0. Use contribution margin (net of shipping and fees), not gross margin, or you will set the bar too low. Audit this number every quarter — margins shift and fulfillment costs move, per Funnelytics, so a target that was profitable six months ago may be destroying margin today.
How do brands shift from ROAS to contribution margin reporting?
Start by building a clean CM3 formula (revenue minus COGS, variable costs, and allocated ad spend) at the order level. Run it for your top three SKUs first — use actual shipping and fulfillment costs, not averages. Add a single "profit dashboard" layer alongside your existing ROAS view rather than replacing it. Then use MER for blended health and per-campaign POAS for channel decisions. Treat ROAS as a comparator within consistent context, not as a profitability goal, per Yashvi Konnect.
What is a good LTV:CAC ratio for ecommerce?
Around three to one is the widely cited benchmark, per Harvard Business School Online. Below one-to-one you lose money per customer; well above five-to-one can signal you are under-spending on growth. Measure LTV on margin, not revenue, so it lines up with a real CAC.
Why don't my ad platform numbers match my analytics?
Because they count different universes. Ad platforms compute conversion on clicks and often over-claim credit for shared journeys; your analytics counts sessions. Never divide a platform's conversions by your analytics sessions — use a blended, attribution-free view like MER to judge whether the whole marketing engine is profitable.
Is revenue or profit the better metric to optimize?
Profit. Revenue metrics like ROAS and revenue-basis LTV can rise while your bank balance falls, especially on thin-margin products. Optimize channels on ROAS if you like, but decide what to scale on POAS and contribution margin. As Jordan Glickman frames it, contribution margin should lead your planning and optimization; ROAS should support as a comparison metric.
How does discounting affect contribution margin?
Deeper discounts compress your margin ratio and push up your break-even ROAS simultaneously. A promotion that drives your "best ROAS week of the year" may be a margin-destroying week when you look at CM3, per Yashvi Konnect. Always model the CM3 impact of a discount before launch, not after, and remember that a sound pricing strategy is essential to protect profit margins so increased sales do not come at the expense of profitability, per Bennett Financials. For POD sellers deciding between supplier options, see the Printify getting-started guide and Printify–Etsy setup guide for how base costs affect your margin ceiling before discounts are applied.