CM-per-Order Benchmarks by Channel for €1M–€15M Shopify Stores Benchmarks
Reference ranges for contribution margin per order across the eight channels that move the needle for mid-market Shopify stores — plus how to read your own numbers against them.
CM-per-Order Benchmarks by Channel (€1M–€15M Shopify)
Reference ranges for contribution margin per order across the eight acquisition channels that drive the bulk of orders in mid-market Shopify stores.
Contribution-margin-per-order (CM/order) is the euros each order contributes after product COGS, payment fees, fulfilment, and the variable marketing cost attributed to that order. Benchmarking it by channel tells you which parts of your acquisition mix are actually paying their way — and which are quietly leaking margin even when ROAS looks fine.
These ranges are calibrated for Shopify stores in the €1M–€15M revenue band, AOV between €45 and €120, blended gross margin of 55–70%. They cover Meta prospecting, Meta retargeting, Google branded, Google non-brand, Klaviyo flows, Klaviyo campaigns, organic, and affiliate.
Most stores in this revenue band track CAC and ROAS by channel but never roll the numbers down to CM/order. That's the gap these benchmarks fill: a channel can post a 2.5x ROAS and still hand back less than €3 per order once fulfilment and returns are subtracted.
Read the ranges as 'healthy mid-market', not 'world-class'. The low end is where you should be questioning whether to scale a channel down; the high end is what efficient operators see after 12–18 months of disciplined creative testing and flow tuning.
Contribution margin per order by channel — Shopify stores, €1M–€15M, AOV €45–€120
| Channel | CM/order — low | CM/order — typical | CM/order — strong | Share of orders |
|---|---|---|---|---|
| Meta prospecting | €1–€4 | €5–€9 | €10–€14 | 20–35% |
| Meta retargeting | €8–€12 | €13–€18 | €19–€26 | 5–10% |
| Google branded | €18–€24 | €25–€32 | €33–€40 | 8–15% |
| Google non-brand | €2–€6 | €7–€12 | €13–€18 | 5–12% |
| Klaviyo flows | €20–€26 | €27–€34 | €35–€42 | 10–18% |
| Klaviyo campaigns | €14–€19 | €20–€26 | €27–€33 | 8–14% |
| Organic / direct | €22–€28 | €29–€36 | €37–€44 | 15–25% |
| Affiliate | €6–€10 | €11–€16 | €17–€22 | 2–6% |
The spread between Meta prospecting and Klaviyo flows is the single most important number on this table. A store relying on prospecting for 40%+ of orders will struggle to break even on first purchase; the same store with 15% flows and 20% organic prints cash even before LTV kicks in.
Typical CM-per-order by channel (mid-market Shopify, €1M–€15M)
How to read your own numbers against this table
Pull 90 days of Shopify orders, tag each one with its last-non-direct channel, and subtract COGS, payment fees (typically 1.8–2.4% + €0.25), fulfilment (€3–€7 depending on parcel size), and the channel's variable ad spend attributed to that order.
For paid channels the variable cost is platform spend divided by attributed orders. For Klaviyo, allocate the platform fee per order it touched. For organic and direct, treat the variable marketing cost as zero — those orders pick up only the SEO retainer or content cost, which you can keep at the channel-mix level.
The Meta-attribution trap
If you're reading Meta's reported ROAS straight off Ads Manager, your prospecting CM/order will look 30–50% better than reality. Cross-check against a post-purchase survey or a GA4-based last-non-direct view before deciding to scale. The parent topic, contribution margin by channel, walks through the reconciliation step in detail.
What a healthy channel mix actually looks like
A blended CM/order of €14–€20 is the floor for a profitable Shopify store at this scale. Below €10 blended, you're either underpriced or over-reliant on cold paid. Above €22 blended is where you have real room to reinvest in creative testing without bleeding cash.
The healthiest mixes we see lean 35–45% on owned channels (Klaviyo + organic + direct), 25–35% on paid prospecting, and 15–25% on intent-led paid (Google branded + non-brand). Affiliate sits as a tail at 2–6% — useful for incremental reach, never the engine.
Frequently asked questions
ROAS ignores COGS, fulfilment, payment fees, and returns. Two channels can post identical 3x ROAS while one contributes €15 per order and the other contributes €4. CM/order is the number that actually pays salaries and inventory.
Retargeting CPMs are similar to prospecting but conversion rates are 3–5x higher because the audience already has intent. That collapses CAC per order and pushes CM/order into the €13–€18 typical band.
Strictly, no — most branded clicks would have converted via direct or organic anyway. We include it for completeness but recommend you also track an 'incremental branded' view that discounts the share that would have come through unpaid.
€16–€22 blended, assuming 60–65% gross margin and an AOV around €70. Stores below €14 blended at this revenue are usually either over-discounting or scaling Meta prospecting past its profitable ceiling.
The variable cost per flow-attributed order is typically under €0.10 (platform fee allocation), so almost the entire gross margin drops through. Welcome, abandoned-cart, and post-purchase flows are the three that move the number most.
The shape holds (organic and Klaviyo highest, Meta prospecting lowest) but absolute numbers scale roughly linearly with AOV. Multiply every range by AOV/70 for a rough adjustment, then re-validate with your own 90-day data.
Apparel and footwear should subtract a return reserve of 15–30% of gross margin before posting CM/order. For beauty, supplements, and electronics, 3–8% is closer. The benchmark ranges above assume those reserves are already taken.
TikTok prospecting tends to track Meta prospecting at the low end (€1–€6 CM/order typical) but with higher variance. YouTube non-brand sits closer to Google non-brand. Both are too small a share of orders in this revenue band to warrant their own benchmark row yet.
Monthly at the channel level, quarterly at the campaign level. Creative fatigue on Meta and seasonal shifts on Google move the numbers more than most operators expect — a channel that was healthy in Q1 can drift into the loss-making band by Q3.
Three levers, in order of impact: raise AOV via bundles or thresholds (biggest), cut creative production cost per winning ad, then tighten audience to higher-intent lookalikes. Bid changes alone rarely move CM/order more than €1–€2.
Track CAC, channels, and funnel conversion in one place
Metricuno connects ad spend, funnel events, and revenue so you can see CAC by channel, cohort, and campaign — without stitching together five tools.