Tracking & analytics14 min readUpdated October 14, 2026

Ecommerce Analytics: Which Metrics to Track, and Where the Numbers Come From

Ecommerce analytics for DTC brands: the metrics that matter, their exact formulas, where each number lives, and a starter dashboard you can build this week.

Article summary

TL;DR

Ecommerce analytics is the practice of measuring how your store acquires, converts, earns from and keeps customers, then acting on it. A useful setup answers five questions: what a customer costs, where shoppers drop, what each order earns, who comes back, and how much revenue the payment layer actually collects.

  • Group metrics by question: acquisition, funnel, order economics, retention, payments. Each one drives a different decision.
  • Use the exact definitions of your tools. Shopify's conversion rate counts sessions that completed checkout; GA4's session key event rate counts sessions with any key event.
  • Your store platform, GA4, ad platforms and payment processor each count revenue differently. Pick one source of truth per metric.
  • Revenue isn't real until it's settled: processor payouts minus refunds, disputes and fees is the number finance trusts.
  • Most dashboards skip payments. Acceptance rate, refund rate and dispute rate belong next to conversion rate.
Want to go further? AskChatGPTClaudePerplexityGrok
On this page

Ecommerce analytics isn't a dashboard. It's a short list of questions about your business, each answered by a metric with an exact formula and one trusted source. This guide groups the metrics that matter for a DTC brand by question, gives the definitions your tools actually use, and shows how to reconcile the numbers when your store, GA4, ad platforms and payment processor disagree. By industry: benchmarks for supplement brands, benchmarks for skincare brands, benchmarks for online pharmacies, benchmarks for telehealth companies, benchmarks for fitness brands and benchmarks for info product businesses.

What is ecommerce analytics?

Ecommerce analytics means collecting data from every system that touches an order, then using it to decide what to change. The data comes from your store platform, your analytics tool, your ad accounts, your email and SMS tools and your payment processor. None of them sees the whole picture.

The simplest way to organize it is by the question each metric answers.

  1. Acquisition

    What does a new customer cost, and which channels bring them? CAC, CPA, ROAS, new customer share.

  2. Funnel

    Where do shoppers drop between landing and paying? Sessions, add-to-cart, reached checkout, conversion rate.

  3. Order economics

    What does each order earn after costs? AOV, net sales, contribution margin, LTV.

  4. Retention

    Who buys again, and for how long? Returning customer rate, purchase frequency, cohorts, churn.

  5. Payments

    How much of the revenue is actually collected? Acceptance rate, refund rate, dispute rate, settled revenue.

Analytics guides also sort the work into four types: descriptive (what happened), diagnostic (why), predictive (what's likely next) and prescriptive (what to do). For most DTC brands, clean descriptive and diagnostic reporting comes first. A forecast built on purchase counts you can't trust is just a confident guess.

Acquisition metrics: what a new customer costs

Acquisition metrics tell you whether you can afford to keep buying growth. Shopify's own metrics guide defines them this way:16Shopify, Ecommerce metrics guide (formulas for CAC, ROAS, repurchase rate)

MetricFormulaRead it with
Customer acquisition cost (CAC)Total sales and marketing costs ÷ new customers acquiredContribution margin and LTV
Cost per acquisition (CPA)Campaign spend ÷ attributed acquisitionsThe attribution window used
Return on ad spend (ROAS)Revenue attributed to ads ÷ ad spendMargin, not revenue
New customer shareRevenue from first-time customers ÷ total revenue × 100Returning customer rate

ROAS is only as good as its attribution

The "revenue attributed to ads" in ROAS comes from each ad platform's own counting, with its own attribution window. Add up Meta, Google and TikTok and you will often get more purchases than orders in your store. Use blended CAC (all marketing spend ÷ all new customers) as the reality check, and see attribution modeling for how credit gets split.

CAC alone says little. A $60 CAC is cheap if the first order leaves $70 of contribution margin and expensive if it leaves $20. How long it takes to earn that cost back is the CAC payback period.

Conversion funnel: where shoppers drop

The funnel tracks the same shoppers from landing to purchase. In Shopify, every step is measured in sessions, and each rate is that step's session count divided by total sessions.1Shopify Help Center, Behavior reports

Fig. 1Shopify's conversion funnel, step by step

  1. SessionsTotal sessions on the online store
  2. Added to cartSessions where a product was added to a cart
  3. Reached checkoutSessions with user input during checkout
  4. Completed checkoutSessions where a customer purchased

every step is a share of sessions

Source: Shopify Help Center, Behavior reports (Conversion rate breakdown report).

Two definitions matter here:

  • Shopify conversion rate is "the percentage of sessions that resulted in a purchase." Shopify warns that your order count and your sessions that completed checkout "might not be the same": one session can hold more than one purchase.1Shopify Help Center, Behavior reports
  • GA4 session key event rate is the number of sessions in which a key event happened ÷ total sessions.5Google Analytics Help, Analytics dimensions and metrics If you've marked several events as key events, it's not a purchase conversion rate. Build a purchase-only rate instead.

Shopify sessions changed on September 21, 2026

Shopify updated how it measures sessions: the default view now focuses on human visitors and classifies bot traffic more consistently. Sessions, conversion rate, add-to-cart and checkout rates may look different, while orders, sales and customer counts are unchanged. Shopify's advice is to treat post-update reports as a new baseline.3Shopify Changelog, Shopify Analytics session measurement improvements, September 21, 2026 Don't compare September 2026 conversion rates with August without that caveat.

The step between "reached checkout" and "completed checkout" mixes two very different losses: shoppers who leave, and shoppers whose payment was declined. Our guide to checkout abandonment rate shows how to separate them, and how to increase ecommerce conversion rates covers what to fix first.

Order economics: AOV, contribution margin and LTV

Order economics tells you what each sale earns. Use the platform's exact definitions, because "sales" means four different things in Shopify's data model:2Shopify Dev Docs, ShopifyQL sales schema

TermShopify definition
Gross salesSales revenue before discounts and returns are taken out
Net salesGross sales − discounts − sales reversals (refunds, returns, cancellations, edits); excludes taxes, shipping, duties and fees
Total salesNet sales + additional fees + duties + shipping charges + taxes
Average order value (AOV)(Gross sales − discounts) ÷ orders, before post-order adjustments

AOV is measured before refunds. A bundle that lifts AOV but doubles returns can look like a win on the AOV chart and a loss in net sales.

Contribution margin is what an order leaves after the costs that grow with each order: product cost, pick-and-pack and shipping, payment fees, and returns. It's the number to compare with CAC.

Fig. 2From order value to contribution margin

Order · first purchaseOne order, all amounts excluding tax
Gross sales
$80.00
Discount code
−$8.00
Shipping charged
+$6.00
Product cost
−$22.00
Fulfillment and shipping
−$9.00
Payment processing fee
−$2.60
Contribution margin
$44.40

Illustrative record.

the number CAC has to fit inside

Illustrative example. Your cost lines and amounts will differ.

Customer lifetime value (LTV) extends that view over the whole relationship: average order value × purchase frequency × customer lifespan, multiplied by margin. The formulas and their traps are in what is CLTV. The full cost-side view, product by product and channel by channel, is in our guide to profitability analysis.

Retention: who comes back

Retention metrics tell you whether the first order was the start of a relationship. Shopify's metrics guide defines the basics:16Shopify, Ecommerce metrics guide (formulas for CAC, ROAS, repurchase rate)

MetricFormula
Returning customer rateReturning customers ÷ total customers × 100
Repurchase rateCustomers with more than one order in the period ÷ total customers in the period × 100
Purchase frequencyTotal orders ÷ customers who ordered in the period
Churn rate (subscriptions)Customers lost during the period ÷ customers at the start × 100

A blended returning customer rate hides the most useful signal: whether newer customers behave better or worse than older ones. That's what cohort analysis shows, by following each month's new customers separately.

For subscription brands, add churn rate, MRR and gross vs net retention. Split churn into voluntary cancellations and failed renewals: they have different causes and different fixes, covered in subscription payment failures.

Payment metrics most dashboards miss

Searches for "ecommerce payment analytics" and "transaction analytics" point at a gap: most ecommerce dashboards stop at the purchase event. Between "clicked pay" and "money in the bank," three things can still go wrong.

MetricFormulaSource
Payment acceptance rateAuthorized payments ÷ payment attempts, deduplicatedPayment processor
Refund rateRefunded amount (or count) ÷ sales in the periodStore platform or processor
Dispute rateDisputes ÷ settled transactions, by countPayment processor
Settled revenueProcessor gross − refunds − disputes − feesProcessor payout reports

How you count attempts changes the acceptance rate a lot: blocked payments, failed 3D Secure and retries all need a rule. The details are in payment acceptance rate.

The dispute rate isn't just a health metric: card networks measure it too. Visa's acquirer monitoring program (VAMP) counts fraud reports plus disputes, divided by settled card-not-present transactions, in number of transactions, not amount. Its "Excessive" merchant threshold dropped to 150 basis points (1.5%) on April 1, 2026 in Asia-Pacific, Canada, Europe and the US, with a minimum of 1,500 fraud reports and disputes a month.11Visa, Visa Acquirer Monitoring Program fact sheet, 2025 Mastercard divides one month's chargebacks by the previous month's payments.12Stripe Docs, Card network monitoring programs Track your rate the way the networks do, by count. How to keep it down is in chargeback prevention.

  1. Conversion rate drops, add-to-cart steadyThe loss is in checkout or paymentAcceptance rate by processor, card country and payment method
  2. Orders steady, payouts lower than expectedRefunds, disputes or fees are risingPayout report by reporting category
  3. Many small declined attempts in a short timePossible card testingBlock rules and fraud filters; see fraud prevention
  4. Disputes rising on one product or offerDescription, delivery or billing terms confuse buyersDispute reasons by SKU and offer

Inside Tagada

Build the funnel once, route every customer to the right offer

Checkout, upsells and subscriptions on one flow, with conditions per country, order or customer.

Start free

Where each number lives

Every system on your stack counts something slightly different. Knowing which one owns which metric ends most "the numbers don't match" meetings.

SourceWhat it counts wellWhat it misses or inflates
Store platform (Shopify, WooCommerce)Every order, net sales after reversals, customers, AOVTraffic quality, ad attribution, declined payments
GA4Sessions, users, traffic sources, funnel eventsPurchases its tag never received; refunds you don't send
Ad platforms (Meta, Google Ads, TikTok)Clicks, spend, conversions they attribute to themselvesOverlap with other channels; each uses its own attribution window
Payment processor (Stripe, Adyen, PayPal)Attempts, authorizations, declines, refunds, disputes, fees, payoutsWhich campaign or page brought the buyer
Email and SMS toolSends, clicks, revenue attributed to messagesOverlap with ads; its own attribution rules

One owner per metric

Orders and net sales come from the store platform. Sessions and funnel steps come from your analytics tool. Spend comes from the ad platforms. Collected revenue, refunds and disputes come from the payment processor. Never compute a metric by mixing two sources' versions of the same thing.

Why GA4 and Shopify never show the same revenue

Expect a gap. The question is whether it's stable and explainable. The usual causes, from the GA4 and Shopify documentation:

  • Missed events. GA4 only counts purchases its tag received. A refused consent banner, an ad blocker or a closed tab before the thank-you page drops the order from GA4, not from Shopify.
  • Duplicate events. Send each purchase once, with a transaction_id, which Google calls "required for purchases and refunds."9Google for Developers, Measure ecommerce (GA4) A thank-you page that fires on reload counts the same order twice.
  • Refunds. GA4's purchase revenue is revenue "minus any refunds given," but only refunds you send as refund events. Gross purchase revenue ignores them.5Google Analytics Help, Analytics dimensions and metrics
  • Currency. Set currency whenever you send value.9Google for Developers, Measure ecommerce (GA4) GA4 converts to the property's currency using the prior day's exchange rate, so multi-currency stores never match to the cent.8Google Analytics Help, Currency in Analytics
  • What "value" contains. If your purchase event sends items only, while Shopify's total sales include shipping, taxes and duties, the gap is structural.2Shopify Dev Docs, ShopifyQL sales schema
  • Test orders. Shopify keeps test orders and simulated transactions out of payouts and reports.4Shopify Help Center, Placing test orders Your GA4 tag can still record them as purchases. Filter internal traffic or test in a separate property.
  • Time zones. Store, GA4 and processor can each run on a different time zone, so late-evening orders land on different days.
  1. Orders vs analytics purchases. Count store orders and GA4 purchases (with distinct transaction IDs) for the same days and time zone. Track the match rate over time.
  2. Net sales vs purchase revenue. Compare like with like: items only, after refunds, same currency.
  3. Store sales vs processor gross. Store orders paid by card should match the processor's successful charges. Gaps point to manual orders, other payment methods or failed captures.
  4. Processor gross vs payout. At Stripe, the payout reconciliation report lists every payment, refund, dispute and fee included in each payout, grouped by reporting category.10Stripe Docs, Payout reconciliation report
  5. Settled revenue. Gross charges − refunds − disputes − fees = what reached the bank. That's the revenue to divide CAC into.

Run it every month. A stable gap of a few percent is normal; a sudden jump means something broke.

The event setup behind steps 1 and 2 is in GA4 ecommerce events. Sending the purchase from your server, once the payment has succeeded, removes most missed and duplicate events: see server-side tracking for ecommerce.

A starter ecommerce analytics dashboard

Start with one page and no more than a dozen metrics. Every line has a formula, a single source and a cadence that matches how fast you can act on it.

MetricFormulaSourceCadence
Net salesGross sales − discounts − sales reversalsStore platformDaily
OrdersCount of ordersStore platformDaily
Conversion rateSessions that completed checkout ÷ sessionsStore platform or GA4 (pick one)Weekly
Reached-checkout rateSessions that reached checkout ÷ sessionsStore platformWeekly
Payment acceptance rateAuthorized ÷ deduplicated attemptsPayment processorDaily, with alerts
AOV(Gross sales − discounts) ÷ ordersStore platformWeekly
Blended CACAll marketing spend ÷ new customersAd platforms + store platformWeekly
Contribution margin per orderNet revenue − product, fulfillment, payment and return costsStore platform + cost sheetMonthly
Returning customer rateReturning customers ÷ total customersStore platformMonthly
Refund rateRefunds ÷ salesStore platform or processorWeekly
Dispute rateDisputes ÷ settled transactions, by countPayment processorWeekly
Settled revenueProcessor gross − refunds − disputes − feesProcessor payout reportMonthly

Segment before you add metrics

When a number moves, split it by channel, device, country, new vs returning and, for payments, by processor and card type. Twelve metrics split five ways answer more questions than sixty metrics in a blend.

What to watch in real time

Most metrics are fine weekly. A few need eyes or alerts within minutes, because a broken checkout or a processor outage costs orders every hour. Know how fresh each source really is:

Fig. 3How fresh is each number?

  1. Shopify Live ViewVisitors right now: active in the last 5 minutes
  2. GA4 RealtimeLast 30 minutes, best effort, limited attribution
  3. GA4 intradayAbout 2 to 6 hours
  4. GA4 dailyAbout 12 hours
  5. Full processingCan take 24 to 48 hours

realtime views are for alerts, not reporting

Sources: Shopify Help Center, Live View; Google Analytics Help, Realtime report and Data freshness.

Shopify's Live View counts visitors who loaded a page or clicked in the last 5 minutes, in store time.15Shopify Help Center, Live View GA4's Realtime report covers the last 30 minutes, caps each card at 700 rows and has limited attribution,13Google Analytics Help, Realtime report and Google notes that data processing can take 24 to 48 hours.14Google Analytics Help, Data freshness Don't close the books on yesterday from a realtime view.

What deserves an alert: a drop in payment acceptance rate, a processor returning errors (where dynamic payment routing can send payments elsewhere), and bursts of small declined attempts that look like card testing (see ecommerce fraud prevention).

Common ecommerce analytics mistakes

MistakeWhy it misleadsFix
Mixing sessions and usersGA4 active users are "distinct users"; sessions restart after 30 minutes of inactivity by default. A per-user rate and a per-session rate can't be comparedPick one denominator per metric and write it down
Comparing tools' conversion ratesShopify's rate is purchases per session; GA4's session key event rate counts any key eventCompare each tool with itself over time
Ignoring attribution windowsGA4 defaults to a 90-day lookback for most key events; lookback changes only apply going forward, while a model change rewrites historyNote the settings next to the report; don't change them mid-quarter
Summing platform-reported revenueEach ad and email tool credits itselfUse blended CAC and store orders as the total
Leaving test orders inShopify excludes them, GA4 may notFilter internal traffic; test on a separate property
Mixing currenciesGA4 converts at the prior day's rateReport in one currency and reconcile in the processor's settlement currency
Treating gross sales as revenueRefunds and disputes arrive weeks laterReport net sales weekly and settled revenue monthly

The session and user definitions come from Google's documentation: a session times out after 30 minutes of inactivity by default, and session counts in standard reports are estimates.6Google Analytics Help, About Analytics sessions The attribution rules are in GA4's attribution settings: 30-day default lookback for acquisition key events, 90 days for the others.7Google Analytics Help, Select attribution settings

The tracking behind the numbers

Metrics are only as good as the events underneath. If your purchase counts don't hold up, fix collection before building more reports:

How Tagada helps

Checkout, payments and tracking from one system

Tagada runs the checkout with one-click upsells, order bumps, A/B tests, Apple Pay and Google Pay, and sends tracking server side to Meta, Google and TikTok. On the payment side, it routes across TagadaPay and processors such as Stripe, NMI and Airwallex, with one logic and a cascade to another processor when one is down or times out. It runs standalone, with Shopify, with WooCommerce or headless. Pricing is on the pricing page. Tagada follows Visa and Mastercard rules and the laws that apply to payments.

Whatever tools you use, the test is the same: can you put store orders, analytics purchases and processor payouts for one month side by side, and explain every gap?

Nick Bonnassies

CMO at Tagada

CMO at Tagada. Before Tagada, Nick built direct-to-consumer brands that generated over $115M in sales, raised over $25M in crowdfunding and sold two of them. He also works as a fractional CMO on marketing operations and AI systems.

Frequently asked questions

What is ecommerce analytics?

Ecommerce analytics is collecting data from your store, analytics tool, ad platforms, email tool and payment processor, then using it to decide what to change. For a DTC brand it boils down to five questions: what a new customer costs, where shoppers drop, what each order earns, who buys again, and how much revenue is actually collected.

What metrics should an ecommerce analytics dashboard track?

Start with one or two metrics per question: CAC and ROAS for acquisition, conversion rate and reached-checkout rate for the funnel, AOV and contribution margin per order, returning customer rate for retention, and acceptance, refund and dispute rates for payments. Write the formula and the source next to each one so everyone reads the same number.

What are the types of ecommerce analytics?

Guides usually list four: descriptive (what happened, like last month's sales), diagnostic (why it happened, like a drop in checkout completion), predictive (what is likely next, like a sales forecast for inventory) and prescriptive (what to do about it). Most DTC brands get the most value from solid descriptive and diagnostic reporting first.

Why doesn't GA4 revenue match Shopify?

They count different things. GA4 only records purchases its tag received, so consent refusals, ad blockers and closed tabs drop orders, while a purchase event fired twice without a transaction ID inflates them. GA4 subtracts refunds only if you send refund events, and converts currencies at the prior day's rate. Shopify counts every order, net of sales reversals.

What is ecommerce payment analytics?

Payment analytics measures what happens after the shopper clicks pay: how many attempts are authorized, why the others are declined, how much is refunded or disputed, and what fees and payouts look like. It explains revenue gaps that a storefront conversion rate hides, such as a processor declining more cards in one country.

How often should you check ecommerce metrics?

Match the cadence to how fast you can act. Watch acceptance rate and checkout errors daily or with alerts, since a processor problem costs orders by the hour. Review acquisition and funnel metrics weekly, order economics and cohorts monthly, and reconcile analytics revenue against processor payouts every month.

Sources

Checked October 14, 2026
  1. Shopify Help Center, Behavior reports
  2. Shopify Dev Docs, ShopifyQL sales schema
  3. Shopify Changelog, Shopify Analytics session measurement improvements, September 21, 2026
  4. Shopify Help Center, Placing test orders
  5. Google Analytics Help, Analytics dimensions and metrics
  6. Google Analytics Help, About Analytics sessions
  7. Google Analytics Help, Select attribution settings
  8. Google Analytics Help, Currency in Analytics
  9. Google for Developers, Measure ecommerce (GA4)
  10. Stripe Docs, Payout reconciliation report
  11. Visa, Visa Acquirer Monitoring Program fact sheet, 2025
  12. Stripe Docs, Card network monitoring programs
  13. Google Analytics Help, Realtime report
  14. Google Analytics Help, Data freshness
  15. Shopify Help Center, Live View
  16. Shopify, Ecommerce metrics guide (formulas for CAC, ROAS, repurchase rate)

Tagada

Checkout, payments and tracking in one place

Funnels, one-click upsells, subscription billing and payment routing, on one customer record.

  1. 01Create your free account
  2. 02Connect your store or build a checkout
  3. 03Launch funnels, upsells and subscriptions