How to calculate ecommerce KPIs — GMV, AOV, CAC and LTV — what GA4 calls a key event rate today, and how to build a five-number dashboard to run your store.

Running an online store comes down to five numbers: GMV, AOV, conversion rate, CAC and LTV. The trouble starts when someone calculates them their own way — treating GMV taken from a marketplace's annual report as revenue, calling conversion rate by the name it had in Universal Analytics, or calculating LTV with a formula from a SaaS article even though the store has no subscription. Ecommerce KPIs aren't hard to calculate — they're hard to calculate the same way the report you're reading them off calculates them. This article goes through each of the five numbers with a definition taken directly from GA4's and Shopify's documentation and from how marketplaces define GMV for themselves, and ends with a sixth thing none of them talks about on its own: margin per order.
GMV (Gross Merchandise Value) is a term that came to ecommerce from marketplaces, and it's worth knowing a marketplace's own definition before you calculate your own version. Allegro, a marketplace group operating across Central and Eastern Europe (its platforms include Allegro.pl, Allegro.cz, Allegro.sk and Allegro.hu, plus Mall.cz, Mall.sk, Mall.hu, Mall.hr and Slovenia's Mimovrste.com), defines GMV in its annual report for 2024, under "Alternative Performance Measures", as: "'GMV' means gross merchandise value, which represents the total gross value of goods and tickets sold on the following platforms (including value added taxes)" — that is, the gross value, including VAT, not the company's revenue. The same report states explicitly that alternative measures, GMV included, are "not accounting measures within the scope of IFRS", and that third-party GMV (3P GMV) is a "non audited measure" — one not reviewed by an auditor (Allegro.eu investor reports, read 2026-10-01).
Treat this as one example of how a marketplace defines GMV for itself, not as the definition for the whole market: each marketplace that reports GMV writes its own definition, and the details — VAT, shipping, cancelled or returned orders — need not match, so a number called "GMV" on one platform doesn't automatically mean the same thing as "GMV" on another.
For your own store, that has one practical consequence: if you calculate "your GMV", calculate it with the same logic — the total gross value of orders placed (or paid, if that's how you define the period), before deducting returns, after-the-fact discounts and costs. GMV isn't what ends up in the till. If someone at your company says "GMV is growing" and means net revenue after returns in the same sentence, those are two different numbers — worth separating before either one reaches a board report or an investor.
This also matters when you compare GMV over time within a single company: one release might report growth as a quarter-on-quarter percentage, another might report the full-year total as an absolute figure — treat those as two separate statements, not one trend line, unless you've checked they cover the same period on the same basis.
AOV (Average Order Value) has a simpler, more standardised definition. Shopify gives the formula without ambiguity: "You can calculate average order value (AOV) by dividing your total revenue by the number of orders in the same time period: AOV = Total Revenue ÷ Number of Orders" — revenue for a given period divided by the number of orders in that same period.
GA4 doesn't have a metric literally called "AOV", but it has an equivalent one — "Average purchase revenue", defined as "The average purchase revenue over the selected time frame" (support.google.com/analytics/answer/9143382, read 2026-10-01). Watch out for a near-identical name: GA4 also has "Average purchase revenue per active user", defined as "The sum of the purchase revenue per active user" — a different number (revenue divided by the number of active users, not by the number of orders), easy to confuse by name alone in the interface.
A purely illustrative example, not a real store's data: if purchase revenue in a given month is X, and the number of orders in that same month is N, Shopify's formula gives AOV = X ÷ N. Plugging in illustrative values: at X = €24,000 and N = 400 orders, AOV = €60. The same company, with a different definition of "order" in the denominator (say, including or excluding cancelled orders), produces a different N — and therefore a different AOV for the same month, which is why what matters is keeping one written-down definition of "order" over time, not just one formula.
If you're using GA4 and looking for a metric called "conversion rate" the way it was named in the old Universal Analytics — you won't find it under that name. Per GA4's documentation, the metrics go by different names today: "Key events" is "The number of times users triggered a key event", and "conversion rate" itself comes in two variants, session-based and user-based:
In other words: GA4 still talks about "conversion" when describing these metrics ("the percentage of sessions/users that converted") — only the metric's name in the interface changed, not the underlying concept. If a report or an agency gives you a "CR" without saying whether it's the session or the user variant, ask — the difference is real for customers who buy across several sessions.
The difference between the session and user variants isn't cosmetic. Take a purely illustrative case: if one user visits the store across three sessions and buys only in the third, for the session-based rate that user contributes three sessions to the denominator, of which the key event occurred in only one. For the user-based rate, the same user counts once, regardless of how many sessions they came back in before buying. For products customers look at several times before deciding (a higher price point, a longer decision process), these two variants can diverge noticeably — another reason to always state which one you're quoting, instead of saying "conversion X%" in general.
Take care when reading the number of orders in GA4: the documentation separately defines the metrics "Transactions" and "Ecommerce purchases" — described almost identically ("the number of completed purchases on your site" / "the number of times users completed a purchase") and both fed by the same purchase event. The documentation doesn't explain when the two numbers diverge — so pick one of them for reporting and stick with it, and if they do differ in your data, check first how your store sends the purchase event.
How to calculate AOV, GMV, CAC and LTV
Our own diagram based on Shopify (blog posts on AOV, CLV and CAC) and Allegro's annual report (Alternative Performance Measures), read 1 October 2026
CAC (Customer Acquisition Cost), per Shopify's definition, is "total cost of acquiring a single customer", calculated as: "Divide this total [marketing and sales spend for the period] by the number of new customers who made purchases for the first time during that same period" — the total spent on acquiring customers divided by the number of new customers in that same period. Shopify's own worked example puts $500 of marketing spend against 10 new customers, giving a CAC of $50 per customer (shopify.com/blog/customer-acquisition-cost, read 2026-10-01) — an illustration from the article, not an industry benchmark.
For LTV (Lifetime Value, which Shopify calls CLV), Shopify's blog gives two formulas (shopify.com/blog/customer-lifetime-value, read 2026-10-01). Basic: "CLV = (Average Order Value × Purchase Frequency) × Average Customer Lifespan" — AOV times purchase frequency times the average length of the customer relationship. Extended, accounting for the time value of money: "CLV = Gross Margin Per Customer Lifespan × [Retention Rate / (1 + Discount Rate − Retention Rate)]" — gross margin over the whole relationship, adjusted by the retention rate and the discount rate.
Shopify's CAC article also says that if your CLV-to-CAC ratio "falls between 3:1 to 5:1, your acquisition strategy is working efficiently" (its CLV article simply calls 3:1 "a good LTV to CAC ratio") — but neither page gives a methodology or a sample size behind those figures, so we don't cite them here as a number to benchmark your store against. What's left is the construction itself: calculate CAC and LTV separately, watch the trend of each, don't chase a magic ratio without a source.
Two variables in the basic LTV formula need their own interpretation, not an industry benchmark. "Purchase frequency" is the number of orders per customer in a given period (a year, say) — calculate it from your own order history, customer by customer, not by guessing one value for the whole catalogue. "Average customer lifespan" is the average length of time a customer keeps coming back before they stop — and this figure differs even within a single store, between product categories with different purchase frequencies (fast-rotating cosmetics versus furniture bought once every few years). Calculating one LTV for the whole catalogue without that breakdown usually produces a number that describes no real customer segment.
One distinction matters straight away: ecommerce LTV and SaaS LTV are two different formulas, despite the identical name. The formula above calculates LTV from purchase frequency and relationship length — typical of a transactional model, where a customer buys repeatedly but without a subscription. A subscription model calculates LTV differently — from churn rate and recurring revenue, not from order frequency. If you also run a SaaS product alongside the store (or you're reading an article about SaaS metrics and trying to carry the formula over 1:1 to a store), our article on SaaS metrics — ARR, MRR, churn and retention-based LTV — covers that; it isn't the same calculation, despite sharing the metric's name.
GMV, AOV, CAC and LTV talk about value and the cost of winning a customer — none of them says whether a given order was profitable after deducting the payment provider's fee, the shipping cost that doesn't always land entirely on the customer, and packaging. The mechanism is simple and can stay invisible in the sales reports themselves: GMV and AOV can rise month over month while contribution margin per order falls, if, say, the share of free-shipping orders rises, a marketplace's commission rises, or the payment-method mix shifts towards options that cost the seller more.
Written out with variables rather than percentages: if AOV is A, the cost of goods in that order is k, the payment provider's fee is g, shipping cost not covered by the customer is d, and packaging cost is p, contribution margin per order is A − k − g − d − p. Each letter on the right changes independently of A — which is why GMV and AOV can rise month over month while this calculation breaks down, if, say, d rises faster than A (more free-shipping orders at an unchanged average basket value). We cover the exact breakdown of payment-gateway and payment-method fees that feed into g and d separately in payments and logistics — what matters here is only that without this calculation, the previous four numbers can show growth that, in practice, means nothing for profit.
purchase event — don't add them together, pick one name for reporting). In the interface these metrics sit in the standard reports (the sections covering engagement and monetisation) or in Explorations if you need a custom breakdown, say AOV split by traffic channel — Explorations give you more control over dimensions, but you have to build the report yourself, while standard reports are ready immediately.For how these numbers fit into the rest of running a store — product data, automation, integrations — see our ecommerce operations section.
GMV is the total gross value of goods sold in a given period, including VAT — that's how Allegro, for example, defines it in its annual report, as an Alternative Performance Measure, i.e. a measure outside IFRS; other marketplaces word their own definitions differently. When calculating your own GMV, don't deduct returns or costs. Revenue in your P&L is usually calculated net, after returns and discounts. These are two different numbers — if someone says "GMV is growing" and means revenue after returns, they're mixing up two concepts.
With Shopify's formula: AOV = revenue ÷ number of orders in the same period. GA4 doesn't have a metric literally called "AOV", but it has an equivalent one — "Average purchase revenue", defined as the average purchase revenue over the selected time frame. Watch out for a similarly named metric, "Average purchase revenue per active user" — that's a different calculation (per active user, not per order).
Not under that name. GA4 replaced "conversion" terminology with "key events" and has two rate metrics: "Session key event rate" (the percentage of sessions with a key event) and "User key event rate" (the percentage of users who triggered one). Both descriptions still use the word "conversion" in their definition — only the metric's name in the interface changed, not the underlying concept.
CAC: total marketing and sales spend in the period divided by the number of new customers in that same period (Shopify's formula). LTV, basic formula: average order value × purchase frequency × average customer lifespan. There's also an extended formula factoring in retention and the discount rate. There's no confirmed, methodology-backed benchmark for a "healthy" CLV-to-CAC ratio — don't bank on any specific ratio without a source.
Five — GMV, AOV, conversion rate, CAC and LTV — calculated consistently, with the same definition, month over month. Worth adding a sixth thing none of the five shows on its own: margin per order after deducting the payment fee, shipping cost and packaging — without it, GMV and AOV can rise while profitability falls.
We'll review how you calculate GMV, AOV, CAC and LTV, and show you where the dashboard shows growth that isn't really there in the account.
Ecommerce operations after launch: orders and product data, warehouse and shipping, customer contact, measurement. What to automate, what to outsource.
Omnichannel in e-commerce: the definition versus multichannel, the shared-inventory mechanism between a store and a till, and when to implement it.
Ecommerce fulfillment: what the service covers, how EU providers price it, and when outsourcing your warehouse pays off instead of doing it in-house.
How to integrate a wholesaler XML product feed, CSV file or API with your online store, and when each format actually makes sense.
ERP for ecommerce: how ERP, WMS and CRM own different data, three integration architectures, and what EU e-invoicing rules change.
Ecommerce customer service: WISMO tickets, the EU AI Act chatbot-disclosure duty from 2 August 2026, and the two support metrics that actually matter.
PCI DSS v4.0.1, which SAQ applies to your payment setup, GDPR duties (Art. 6, 13, 28, 32), the 72-hour breach clock, and whether NIS2 applies to a small shop.
Ecommerce automation: what to automate first, Zapier, Make and n8n pricing, and a formula for ROI in hours worked, not promises.
Your Partner in Business, Digital Vantage Team
Digital Vantage team is a group of experienced professionals combining expertise in web development, software engineering, DevOps, UX/UI design and digital marketing. Together we carry out projects from concept to implementation - websites, e-commerce stores, dedicated applications and digital strategies. Our team combines years of experience from technology corporations with the flexibility and immediacy of working in a smaller, close-knit structure. We work in agile methodologies, focus on transparent communication and treat each project as if it were our own business. The strength of the team is the diversity of perspectives - from systems architecture and infrastructure, frontend and design, to SEO and content marketing strategy. As a result, the client receives a cohesive solution where technology, aesthetics and business goals go hand in hand.
Rate this article

SMS marketing for online stores: GDPR and ePrivacy consent, what a campaign costs by EU country, and the Gmail, Yahoo and Outlook rules for email.

Affiliate marketing and influencer marketing for online stores: networks and their fees, commission maths, and EU rules on disclosing paid posts.

How price comparison websites work for a retailer: the CPC model, when a click pays for itself, Google's CSS rule, and EU rules on reviews and discounts.

TikTok Shop runs in 13 of the EU's 27 states, no company needed — but TikTok Shop Ads (GMV Max) reaches only 4-5 of them. What's open, what isn't.

Meta Ads for online stores: Shops availability, the product catalogue, Advantage+ shopping, dynamic retargeting, and Pixel plus Conversions API.

Google Shopping ads explained: free listings vs paid ads, the CSS requirement, Performance Max and how to set a Target ROAS for a product campaign.

Omnichannel in e-commerce: the definition versus multichannel, the shared-inventory mechanism between a store and a till, and when to implement it.

Ecommerce fulfillment: what the service covers, how EU providers price it, and when outsourcing your warehouse pays off instead of doing it in-house.

What a product page needs: photos, the EU 30-day lowest-price rule, mandatory GPSR information, delivery, returns, reviews and Google structured data.