TapCub is live — analytics, insights and live chat, free on one platform
Growth & Marketing

Ecommerce KPIs: One Revenue Equation and What Moved It

Ecommerce KPIs organised around one equation: revenue = sessions × conversion rate × average order value. Compare months factor by factor, add repeat purchase and refunds, and know where each number comes from.

Lucas Hayes Published Nov 3, 2026 6 min read Growth & Marketing
Illustrative numbers. Revenue rose because traffic and order value rose, while conversion fell.Sample data

Try it on your own data

Every report in this article is in the free plan. One snippet for web and apps, up to 10 sites.

Start free

Ecommerce KPI lists can run to 75 items. This guide builds the ones that matter week to week from one equation, revenue = sessions × conversion rate × average order value, shows how to read which factor moved, adds repeat purchase and refunds, and says where each number should come from.

What you will learn

  • Revenue is sessions × conversion rate × average order value; compare months factor by factor
  • Revenue per session combines conversion and order value into one comparable KPI
  • Take orders and refunds from the backend, report refunds separately, and dedupe by order id

The revenue equation

Lists of ecommerce KPIs run from 10 to 75 items. Most of the ones that matter week to week are factors of one equation:

revenue = sessions × conversion rate × average order value

Sessions is how many visits the store got. Conversion rate is orders divided by sessions. Average order value (AOV) is revenue divided by orders. Multiply the three and you get revenue; change one and you can see exactly how much revenue it is worth.

A fourth number falls out for free: revenue per session (revenue ÷ sessions, also called revenue per visitor). It combines conversion and order value into one figure, which makes it a good single KPI for comparing channels or landing pages.

Read which factor moved

The example compares two months. Revenue went up 1.6%, which looks fine. The equation shows why it is not:

  • Sessions rose 7.7%, mostly from a new paid campaign.
  • Conversion rate fell from 2.3% to 2.1%. The new traffic converts worse.
  • AOV rose from $60 to $62, from a free-shipping threshold.
  • Revenue per session fell from $1.38 to $1.30.

Without the breakdown, the team would read "revenue up" and spend more on the campaign. With it, the question becomes whether the campaign's visitors are worth what they cost. Break conversion rate down by channel next, as in marketing KPIs.

app.tapcub.com/dashboards/ecommerce

Revenue equation · September vs October

USD
FactorSeptemberOctoberChange
Sessions78,00084,000+7.7%
Conversion rate2.3%2.1%−0.2 pts
Orders1,7941,764−1.7%
Average order value$60$62+3.3%
Revenue per session$1.38$1.30−5.7%
Revenue$107.6k$109.4k+1.6%
Sample data
Illustrative numbers. Revenue rose because traffic and order value rose, while conversion fell.

After the first order

The equation describes one month. Whether the store grows over years depends on what happens after the first order:

  • Repeat purchase rate: customers with two or more orders ÷ customers who bought.
  • Time between orders: the median days from first to second order.
  • Customer lifetime value: cumulative revenue per customer, grouped by the month of their first order.
  • Refund rate: refunded orders ÷ orders, and refunded amount ÷ revenue.

Split these by first channel or first product to see which customers come back. See customer segmentation analysis.

Ecommerce KPI table

The table lists the KPIs by layer with formula and source. Traffic and behaviour come from analytics. Orders, refunds and margin should come from the store or payment backend, sent as server events, so that the money in analytics matches the money in the bank.

Cart abandonment rate is useful but easy to misread. It counts sessions that added to cart and did not buy, and many of those buyers come back later in another session. Read it next to the purchase funnel, not alone.

LayerKPIFormulaSource
TrafficSessions by channelCount of visitsAnalytics
ConversionConversion rateOrders ÷ sessionsAnalytics + orders
ConversionCart abandonmentSessions with add-to-cart and no purchase ÷ sessions with add-to-cartAnalytics
ValueAverage order valueRevenue ÷ ordersOrders
ValueRevenue per sessionRevenue ÷ sessionsAnalytics + orders
LoyaltyRepeat purchase rateCustomers with 2+ orders ÷ customersOrders
LoyaltyLifetime valueCumulative revenue per customer by first-order monthOrders
QualityRefund rateRefunded orders ÷ ordersRefunds

Orders and refunds should come from the store backend as server events.

Consistency rules

Ecommerce numbers disagree between tools mostly because of a few choices. Decide them once:

  1. Gross or net of refunds. Report revenue and refunds as separate lines rather than silently netting.
  2. Currency. Convert each order on its order date into one base currency.
  3. Tax and shipping. Include or exclude them consistently in revenue and AOV.
  4. Denominator for conversion. Sessions or visitors; say which. Session-based rates look lower than visitor-based ones.
  5. Dedupe. Every order has an order id; retries and duplicate confirmation pages do not create new orders.

GMV and revenue are also different: GMV is the total paid value of orders, before refunds and fees.

Ecommerce KPIs in TapCub

TapCub reads money from the purchase event's properties (amount, currency and order id) rather than guessing from pageviews. Defaults are purchase, refund, revenue, currency and order_id; the order id is the dedupe key. Amounts are converted into the base currency on the order date, and refunds in the same period are reported separately, not subtracted. The commerce page shows revenue, orders, buyers, average order, paying rate, repeat rate, refunds, cart abandon rate and lifetime value by first-purchase month (commerce & revenue).

The e-commerce industry pack defines the event line (view_item, add_to_cart, begin_checkout, purchase, optional refund) and installs metrics, a purchase funnel and dashboards in one step (industry packs). Send purchases and refunds from the server; see revenue tracking and the e-commerce page.

FAQ

What are the most important ecommerce KPIs?

Sessions, conversion rate, average order value and revenue per session for each month; repeat purchase rate, refund rate and lifetime value over longer periods.

How do you calculate ecommerce conversion rate?

Orders divided by sessions (or by visitors, if you say so). Use the same denominator every month.

What is revenue per session?

Revenue divided by sessions. It equals conversion rate times average order value, so it moves when either one does.

Should refunds be subtracted from revenue?

Report them as a separate line. Subtracting silently makes months hard to compare when refunds arrive late.

Why does cart abandonment look so high?

It counts every session with an add-to-cart and no purchase, including people who come back and buy later. Read it with the purchase funnel.

See also: Ecommerce analytics, Ecommerce funnel.

Was this article helpful?

We use your answers to fix and expand this page.

Lucas Hayes

Data Engineer

Writes about event design, data quality, and collection workflows, with verifiable implementation methods for reliable analytics.

See your store numbers in one place

Orders, refunds and currency from purchase events, a purchase funnel, repeat rate and lifetime value, set up by the e-commerce pack.

See your data clearly. Find your growth.

Every click, backed by data. Install one line of code and see your first numbers in a minute.

No credit card · Free plans for analytics and chat · Cookieless analytics