Almost every beauty brand we meet can quote its revenue, its return on ad spend and its cost per purchase. Far fewer can tell us what a customer contributes after everything variable has been paid for. That number decides whether the business works, and it is the one that almost never appears on the reporting sheet. These are the rules we run, in the order they matter.
One. Contribution margin is the number, revenue is the vanity
Revenue tells you how much money moved. Contribution margin tells you how much stayed. It is what is left from an order after every cost that scales with that order: product, shipping, payment processing, pick and pack, and returns. Not overheads, not salaries, not your software stack. Only the costs that arrive with the order and leave with it.
Manage to it and every other decision gets easier, because you finally have a ceiling. Manage to revenue and you will grow yourself into a cash problem while the dashboard looks excellent.
Two. Put every variable cost in it, including the ones that feel fixed
The most common error we correct is a contribution margin built from product cost alone. Payment fees are variable. Shipping is variable, and in beauty it is rarely the flat rate the founder remembers. Pick and pack is variable. Returns are variable and category dependent. Leave them out and you will overstate contribution by enough to change which channels look profitable.
The test is simple. If you sold one more unit tomorrow, which costs would go up? Those belong in the calculation. Everything else belongs below the line.
Three. Count new customers, not orders
If reorders sit in the denominator of your acquisition cost, the metric flatters you exactly as acquisition gets harder, because every loyal customer's repeat purchase quietly lowers the reported figure. Use first time customers only. Your acquisition cost will jump, sometimes by half, and the higher number is the true one. It is also the only version you can compare against lifetime value without counting the same person on both sides.
Worked example
A skincare brand runs a $92 average order value at a 48% contribution margin. That is $44.16 of contribution per order. Its weighted acquisition cost, calculated across channels on new customers only, is $73.86.
The first order therefore loses $29.70. That is not a failure, it is the model, and it is only a problem if the second order never arrives. At 1.9 orders per customer in twelve months, contribution reaches $83.90 against $73.86 of cost, and the cohort clears with about $10 to spare.
Same acquisition cost, same margin. The entire outcome turns on a repeat rate most brands assume rather than measure.
Four. Know your break even order count before you set a budget
Divide acquisition cost by contribution per order. That quotient is how many times a customer has to buy before they have paid for themselves, and it is the most useful number on the sheet. In the example above it is 1.67 orders. In a lower basket category it can be three or more.
Once you know it, the budget question answers itself. If your actual orders per customer sit above break even, spend is limited only by how much volume the channel absorbs at a stable acquisition cost. If they sit below it, more spend buys more loss faster, and the work belongs in merchandising and retention until the gap closes.
Five. In some categories, returns are a marketing cost
In skincare a return is usually a service event. In colour cosmetics it is a shade mismatch, which makes it a direct output of your creative and your product page rather than a customer service failure. Where that is true, the return rate belongs in the acquisition maths, not in a support report. Reduce contribution per order by the return rate before you calculate anything else, and watch the break even threshold move.
Six. Decide the payback window first, then the spend
A brand with strong repeat behaviour can deliberately accept an acquisition cost above first order contribution. That is a legitimate strategy and it is how most good beauty businesses are built. It only works if the window is set in advance, at 60 or 90 days or whatever your cash position tolerates, and the spend follows from it.
Set the window afterwards and you are not running a payback model, you are rationalising a number you should have cut. The discipline is entirely in the sequence.
Seven. One ceiling per product line, not one for the business
A $92 serum and a $28 lip product can carry identical acquisition costs and produce opposite outcomes. Running a single company wide ceiling across lines with genuinely different margins means your strongest line silently subsidises your weakest, and nobody notices until the mix shifts. Calculate contribution and break even per line wherever the margins diverge by more than a few points.
Eight. Report the same three numbers every month
Target return on ad spend decides which campaigns scale or get cut this week. Blended efficiency tells you whether the whole engine is paying. Weighted acquisition cost tells you what a genuinely new customer costs against contribution. Read alone, any one can be gamed. Read together they close the gaps, because if every campaign beats its target while weighted acquisition cost climbs, you are buying the same customers more expensively and taking platform credit for it. Our ROAS calculator and the primer on what return on ad spend actually measures carry the arithmetic.
The four inputs, in order
- Contribution per order: average order value multiplied by contribution margin.
- Acquisition cost on new customers only, with fees and production included.
- Break even order count: acquisition cost divided by contribution per order.
- Actual orders per customer in twelve months, measured rather than assumed.
None of this needs new tooling or a quarter of history. Pull last month's spend including fees, pull first time customers, divide, and put the result next to your contribution margin. That single row will tell you whether acquisition is paying for itself. Everything else in your reporting stack is commentary on it. More of how we run these numbers sits in our insights library.