Glossary
What Is Cohort Profitability Analysis for Ecommerce?
Cohort profitability analysis groups customers by when and how they were acquired (same month, same channel, same campaign) and tracks that group's cumulative gross profit against its acquisition cost over time. A cohort counts as profitable once LTGP:CAC clears 3× with a 1.3× repurchase rate: not from a single order, but from how the whole group behaves after the sale.
The formula
Cohort LTGP:CAC = (Cohort revenue − Cohort COGS) ÷ Cohort acquisition cost Repurchase multiplier = Total orders placed by the cohort ÷ Total customers in the cohort Quadrant: LTGP:CAC ≥ 3× and repurchase ≥ 1.3× → Compounding · ≥3× and <1.3× → One-Hit · <3× and ≥1.3× → Trap · <3× and <1.3× → Drain
A cohort is every customer acquired together: by default, everyone who placed their first order in the same calendar month; for an ad-set or campaign view, everyone acquired through that specific channel, with no time grain at all. Contribution margin and LTGP:CAC on a single order tell you whether that one sale worked. Cohort profitability analysis rolls the same math up across every buyer in the group and re-checks it as the group ages. A store acquiring too few new customers in a given month to reach a reliable sample gets its cohorts coarsened to quarterly or yearly instead, disclosed rather than silently blended.
Not every cohort is plotted as a firm number. A cohort needs at least 10 orders behind it before Upstream renders a quadrant at all; short of that, it's shown as still building confidence rather than a guess dressed up as data. Between 10 orders and the full bar (30+ orders, real ad attribution, and real per-SKU or category cost rather than a blended store average), it renders with a visible caveat. Only cohorts clearing all three render without one.
Worked example
A cohort of 150 customers, all acquired the same month through the same channel, $20 CAC per customer:
Month 0: right after acquisition
- Customers acquired
- 150
- Acquisition spend (CAC)
- −$3,000
- Orders to date
- 150 (1.00× repurchase)
- Gross profit to date (150 × $45)
- $6,750
- LTGP:CAC
- 2.25×
LTGP:CAC already clears cost, but repurchase sits at 1.00×; nobody has reordered yet. That plots this cohort as a One-Hit, not Compounding.
Month 6: after repeat purchases
- Orders to date
- 240 (1.60× repurchase)
- Gross profit to date (240 × $45)
- $10,800
- Acquisition spend (unchanged)
- −$3,000
- LTGP:CAC
- 3.60×
Same 150 customers, same $3,000 in ad spend. Six months of reorders pulled repurchase past 1.3× and LTGP:CAC past 3× (the same two thresholds behind every quadrant on Upstream's Cohort Matrix), moving this cohort from One-Hit to Compounding.
Nothing about the acquisition changed between the two snapshots: same 150 people, same channel, same $3,000 spent to get them. What moved the cohort was behavior after the sale: reorders pulled cumulative profit up and repurchase over the line. That's the point of tracking a cohort instead of a single order: a group can look thin on day one and turn Compounding months later, or look great on day one and never earn a second order.
How Upstream computes this for your store automatically
Upstream builds this view from your real Shopify orders, not a spreadsheet: it groups customers into cohorts by acquisition month (or by ad set/campaign for channel-level attribution), computes LTGP:CAC and repurchase multiplier for each one, and plots every cohort that clears its confidence bar onto the four-quadrant Cohort Matrix (Compounding, One-Hit, Trap, and Drain), so you can see which groups of buyers are actually compounding and which ones only looked good on the first order.
No credit card required · Installs in 60 seconds
A Fox & Otter Data product