Profitability Inputs

A framework for the cost and margin components that make ROI honest — so the number you report to the board matches the cash that actually lands in the bank.
Profitability Inputs
The cost and margin components — COGS, contribution margin, fulfillment, returns, overhead — that turn ROAS into real profit.
Profitability inputs are the line items you have to subtract from revenue before any marketing or experiment result becomes a profitability claim. They typically include cost of goods sold, inbound freight and duties, payment processing, pick-pack-ship, last-mile shipping, return rates and reverse logistics, discounts, and an allocated share of fixed overhead.
Without them, ROAS and conversion lift look healthy while the bank balance quietly shrinks. With them, you get an honest contribution margin per order and a defensible ROI calculation — the same number whether it comes from your Shopify dashboard, your accountant, or your board deck.
Most performance dashboards stop at revenue and ROAS. That's the number ad platforms optimise for, so that's the number that ends up in the Monday standup. The problem is that a 4× ROAS on an apparel store with 32% gross margin and 18% returns is not the same business as a 4× ROAS on a beauty SKU with 68% margin and 4% returns.
Profitability inputs are how you collapse those two realities into a single, comparable number. You decide which costs are variable per order, which are allocated, and which you ignore — then you apply that schema consistently across channels, campaigns, and experiments. The schema matters more than perfection: a roughly right model used everywhere beats a precise model used nowhere.
The five input categories that change the answer
Five buckets cover almost every meaningful cost in an online store. The first is product cost: landed COGS, which means the supplier invoice plus inbound freight, duties, and any per-unit packaging that ships inside the box. Getting this allocated correctly per SKU is its own discipline — see COGS Allocation for the methods (standard cost, weighted average, batch-specific).
The second is transaction cost: payment processing (typically 1.8–3.2% plus a fixed fee), gateway fees, fraud screening, and any wallet-specific surcharges. The third is fulfillment: pick-pack labour, outbound shipping, packaging, and 3PL handling fees. The fourth is post-purchase: return rates, reverse logistics, refurbishment write-downs, and customer service time. The fifth is overhead — the share of fixed costs (platform fees, apps, headcount, rent) you allocate to each order.
COGS and landed cost: the foundation
Landed COGS is the single biggest input for most online retailers and the one with the most hidden error. The invoice price from your supplier is rarely the real cost. Add inbound freight (which has moved 3–5× in the last few years), import duties, customs brokerage, and inspection — and a €8 supplier unit can land at €11.40 before it ever sees a shelf.
The cleanest pattern is to maintain landed cost per SKU as a standard, update it when batches arrive, and roll any variance into a quarterly true-up. That gives you contribution margin per order that's stable enough to drive day-to-day experiment decisions, while keeping the finance team honest at quarter end.
Contribution margin: the operating number
Contribution margin per order is the number you actually run the store on. It's revenue minus all variable costs — landed COGS, processing, fulfillment, expected returns — leaving the cash that contributes to fixed overhead and profit. On most apparel stores it lands somewhere between 25% and 45% of order value; on beauty and supplements, 50–70% is realistic.
The reason this metric matters for experimentation: a checkout test that lifts conversion 8% but shifts mix toward heavier or lower-margin SKUs can be flat or negative on contribution. ROAS won't catch it. Contribution-weighted reporting will. This is the bridge between marketing performance and the ROI number the board sees.
Don't allocate overhead into experiment math
Overhead allocation is essential for quarterly P&L and for setting target contribution margins — but pulling fixed costs into per-order experiment math will mislead you. Tests change variable economics; rent doesn't move because a button changed colour. Keep overhead in the strategic view, keep contribution margin in the experiment view.
Putting it into practice
Operationalising this looks like three deliverables. First, a standard landed cost per SKU, refreshed at least quarterly. Second, a variable cost schema (processing %, fulfillment per order, shipping by weight band, expected return rate by category) applied to every order in your warehouse. Third, a single contribution margin field surfaced wherever decisions get made — campaign reporting, experiment readouts, merchandising dashboards.
Once that's wired up, your ROI calculations stop arguing with finance. A €40k campaign at 4.2× ROAS becomes a clear €12k contribution gain or a €3k loss, and the team stops chasing the wrong number. This is what separates stores that scale profitably from stores that scale into cashflow problems.
How each input shrinks the gap between revenue and real profit
Apparel store (€65 AOV)
Beauty store (€42 AOV)
Profitability inputs: common questions
Gross margin subtracts only COGS from revenue. Contribution margin goes further: it subtracts every variable cost — processing, fulfillment, expected returns, variable marketing — leaving the cash available to cover fixed overhead and profit. For experiment and channel decisions, contribution margin is the more honest number.
It depends on what you're measuring. For per-order unit economics, exclude marketing — contribution margin should reflect the order itself. For channel ROI or campaign payback, include the marketing cost attributable to that order. Keep the two views separate so you don't double-count.
Apply an expected return rate per category as a variable cost on every order, then true up actual returns monthly. For categories with high return rates (apparel sizing, furniture), also subtract reverse-logistics cost and any refurbishment write-down. Don't ignore returns just because the refund hasn't hit yet.
Realistic ranges by category: apparel 15–30%, footwear 20–35%, beauty and supplements 2–6%, home goods 8–15%, electronics 8–18%. Use your own trailing 90-day rate where you have data; use category averages only for new SKUs without history.
Yes — ROAS is still the fastest leading indicator for ad-platform optimisation. But ROAS targets should be set from contribution margin math: if your contribution margin is 35% and you want 20% net margin after marketing, your minimum ROAS is roughly 1 / (0.35 − 0.20) = 6.7×. Without the margin math, ROAS targets are guesses.
Quarterly is the minimum for stable supply chains. Update immediately when a new batch lands with materially different freight or duty costs, or when supplier pricing changes. Maintain a standard cost for day-to-day reporting and reconcile variance to a true cost at quarter end.
The two common methods are per-order (total monthly overhead ÷ orders) and per-revenue (overhead as a % of revenue). Per-order is fair when AOVs are similar; per-revenue is fairer when AOVs vary widely. Either way, keep overhead allocation in the strategic P&L view, not in per-experiment math.
Reconstruct a per-order fulfillment cost from the monthly invoice: total 3PL spend ÷ orders shipped, plus average shipping cost from the carrier. It won't be perfectly accurate per SKU, but it's far better than ignoring fulfillment entirely. Refine by weight band or zone as you scale.
Discounts are a direct deduction from order revenue, not a separate line. A €60 order with a 20% discount is a €48 order for margin math — apply COGS and other variable costs against €48, not €60. Promo-funded shipping (free shipping above threshold) goes into fulfillment cost.
Shopify gives you revenue, discounts, and processing fees cleanly. You'll need to layer in landed COGS (often via a cost field per variant), 3PL fulfillment cost, return rates, and overhead from outside Shopify. The work is mostly schema design and one-time wiring, not ongoing data entry.
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.