After eight years running mature Amazon brands across multiple categories and geographies, the question I get asked most often is some version of: is our ad spend too high?
Nobody can tell, because almost no one has built the model that would let them answer it. Most teams know their ACoS target. Many know their gross margin. Very few have written down their CM1 by SKU bucket. Almost none have layered working capital and promo-period economics on top of that. The result is a spend posture built on intuition, defended by ACoS dashboards, and disconnected from the actual business.
This post is about the foundation of that model: the unit-economics ceiling on Amazon advertising. It sits inside a wider three-layer model - unit economics, working capital, and strategic exceptions - but the unit-economics layer is where every brand has to start. The companion pieces cover the other two layers: working capital and promo period economics.
What this post is, and what it is not
This is a piece about the financial logic that decides whether spend is sane or insane. It is not a campaign-optimization piece. It is not a TACoS-versus-ACoS explainer. Those are upstream of nothing - they explain a metric but do not tell you whether your business is profitable.
I am writing this for operators who already understand what TACoS means and want the layer above: how the metric becomes a decision rule, where the decision rule fails, and what the failure modes look like in practice.
What CM1 actually is - and what it is not
Contribution margin level 1 (CM1) is the dollar amount per unit you can spend on ads and still be break-even at the unit level. It is what's left after you have paid for the product, the inbound and outbound logistics, the marketplace fees, and the variable selling costs that are not advertising.
A clean CM1 stack on a hypothetical consumer-goods SKU at $100 sell price:
- Sell price: $100
- COGS (landed at port): $30
- Inbound freight and 3PL to Amazon FC: $8
- Amazon referral fee (15% standard): $15
- FBA fulfilment fee (varies by size tier): $7
- Returns and damages reserve (3% of revenue): $3
- Coupon and promotion reserve (4% of revenue): $4
- CM1: $33 - or 33% of gross revenue
That 33 is the dollar amount per sold unit you can spend on ads and still break even. Every ad dollar comes out of those 33 cents on the revenue dollar.
Three failure modes are common.
Failure mode one - incomplete stack. Teams forget the variable cost layer that is not COGS: pick-and-pack adjustments, customer service contact-rate cost per unit, low-inventory fees, removal fees on FBA inventory that did not sell. None of those individually move the number much. Together they can move it 3-5 points.
Failure mode two - gross margin confusion. Teams use gross margin (sell price minus COGS) as CM1. Gross margin on the example SKU is 70%. CM1 is 33%. Confusing the two collapses the entire model.
Failure mode three - stale CM1. Amazon FBA fees have changed materially several times in the last four years, including 2023 inbound placement fees and 2024 low-inventory and storage utilization surcharges. A CM1 calculated in early 2024 may be 5 points stale by 2026. Anyone running stale CM1 numbers is using a fictional ceiling.
On the category benchmarks people quote: industry data on category-level CM1 distributions is published intermittently by Pacvue, Marketplace Pulse, and Helium 10. Numbers vary widely and depend on whether the publisher includes promo reserves, returns, and ad-adjacent variable costs. Treat any published benchmark as a triangulation aid, not as your number. Your CM1 is your CM1, calculated with your finance team, against your actual cost stack.
The base mismatch nobody flags
There is a quiet trap in this math that is responsible for most CM2 models being silently wrong by 1-2 points: CM1 and CM2 are commonly measured against different revenue bases.
Use the same denominator for both and your CM2 number drifts by the size of the gap between gross and net - which on a promo-heavy SKU is often 5-8%.
The fix is to pick one base and stay there. Most finance teams report on net. Most performance teams pull data on gross. Reconcile the two before you publish a single CM2 number. The first half-day of the model build is this reconciliation. Skip it and the rest of the model is built on sand.
Why TACoS is the right metric - and where it stops working
ACoS measures ad-attributable revenue only. It is useful for diagnosing campaign-level efficiency. It cannot tell you whether the business makes money, because it does not include the unattributed sales that ads may or may not be incremental to.
TACoS measures total ad spend over total revenue. It is the only ad metric that compares directly to CM1, because both are denominated against revenue. Subtract one from the other and you have a layer of contribution.
That is the strength. Here are three places it stops working.
Where TACoS breaks - new launches. A launching SKU has no organic baseline. Its TACoS in week two is meaningless because almost all sales are ad-attributable by definition. Apply steady-state TACoS thinking to a launch and you will either starve it or pretend a 60% TACoS is a problem.
Where TACoS breaks - DSP and off-Amazon spend. TACoS as everyone uses it means Sponsored ad spend over total Amazon revenue. It does not include Amazon DSP. It does not include off-Amazon driving traffic through Buy with Prime or coupon-site referrals. For brands at $1M+ in monthly ad spend, the published TACoS is one slice of total acquisition cost, and the gap matters.
Where TACoS breaks - post-promo flywheel periods. After a strong Prime Day, an account might see organic sales spike for 4-8 weeks as BSR improvements compound. TACoS during that recovery period looks artificially low because the denominator is inflated by post-event organic. Using a 3-week-rolling TACoS during this window will tell you you have over-bid when in fact you under-bid the post-event window.
The fix for all three is the same: do not read TACoS as a daily decision input. Read it weekly at minimum, with awareness of the SKU's lifecycle stage and where you are in the promo calendar.
The spend ceiling formula
With CM1 calculated and the base mismatch closed, the steady-state ceiling formula is short.
For an account with 33% CM1 and a 10% target CM2, the maximum sustainable TACoS is 23%. Spend above 23% in TACoS and you are net-negative on ads.
A common refinement is to run a 3-point buffer below the ceiling - target 20%, ceiling 23% - so that bad weeks do not blow through the month. The buffer is the difference between a target and a hard wall. Bigger buffer in volatile categories, tighter buffer in stable categories.
This is also the formula that exposes why flat ACoS targets across a catalog are dangerous. A 20% ACoS on a SKU with 22% CM1 is awful. A 40% ACoS on a SKU with 48% CM1 is fine. The catalog-wide ACoS target was always going to over-spend the low-margin SKUs and under-spend the high-margin SKUs. CM1-derived per-bucket ceilings fix this.
CM3 - the layer almost no Amazon ads post acknowledges
CM2 - what is left after ads - is not profit. It is the contribution toward fixed costs. A brand with 12% CM2 is not a 12%-profitable brand. Subtract overhead (warehousing fixed costs, salaries, agency retainers, software, capital cost of inventory) and you get CM3, which on most consumer brands is 3-8 points below CM2.
For owner-operators of small brands this distinction is academic - their fixed costs are themselves and one VA. For brands at $10M+ revenue with real teams, the distinction matters. A 12% CM2 with 9 points of overhead allocation is a 3% CM3 business - which cannot fund growth from operations and needs external capital to expand. A 12% CM2 with 4 points of overhead allocation is an 8% CM3 business - which can fund its own growth.
The decision rule above (TACoS ceiling = CM1 − target CM2) is silent on which side of that line your brand is on. Even a rough overhead allocation per dollar of revenue is enough to put a CM3 floor underneath the CM2 target. CM2 alone is not a business metric. It is an ads metric. CM3 is the business metric.
Portfolio prioritization - the framework most operators are missing
A real catalog has 200-500 SKUs. Modeling individual ceilings for all of them is not feasible. The portfolio framework is therefore not optional.
The simplest workable cut: a 2x2 grid of revenue share against CM1 percentile.
- High revenue × high CM1 - the cash-generating core. Model these individually. Set tight buffers. Defend share. Typically 5-15 SKUs producing 60-70% of contribution.
- High revenue × low CM1 - the dangerous category. These produce revenue but bleed margin. Deepest individual analysis. Often these are hero SKUs whose CM1 has eroded over time without anyone noticing.
- Low revenue × high CM1 - the underspend pool. Often deserving of more ad spend than they currently receive. Bucket together; raise the bucket ceiling; let bids find the winners.
- Low revenue × low CM1 - the harvest or kill set. Should be on minimum ad spend or no ad spend. Most operators waste 5-15% of their budget here without realizing it.
You do not model 200 individual ceilings. You model the top quartile by revenue individually, you bucket the rest, and you re-tier the catalog quarterly so SKUs that drift between quadrants are caught.
Working CM2 versus actual CM2
The target CM2 is a monthly average reported by finance after the month closes. The performance team cannot operate against that number because it lags by 30 days. What the performance team operates against is working CM2 - built daily from yesterday's ad spend, attributed revenue, and a current CM1 estimate.
Same formula. Different cadence. Different precision. Different decision use.
- Finance team needs the actual CM2. Monthly. Reported to the board. Comes out of the full P&L after the month closes. There is one number, and it is past tense.
- Performance team needs working CM2. Daily. Built from yesterday's ad spend, attributed revenue and a current CM1 estimate.
Finance defends 10% to the board. Performance defends 12-13% in the working number, because performance knows the gap between working and actual will erode some points by month-end through returns, late-attributed refunds, and CM1 estimate adjustments.
The risk in this gap is real. A bad five-day stretch can chew through the monthly buffer before anyone notices, and finance does not see the damage until the month closes. Two safeguards.
Safeguard one - vigilance. Performance reads working CM2 every working day. Not to flinch at it, but to catch a trend deviation early enough to act inside the month it occurs in.
Safeguard two - internal buffer. Performance runs to 12-13% target when finance defends 10% to the board. The trade is real - less margin to advertise against, less room for offensive top-of-funnel spend - and the payoff is real too: monthly actual CM2 survives the down weeks because the up weeks were not run to the wire.
Two cases - what the model exposes when you actually build it
Case A - the hero-SKU loss-maker
A consumer brand I worked with had CM1 of 30% on their flagship SKU according to the founder, who was running it at 22% TACoS. The conversation took three hours of cost-stack reconstruction with finance. The actual CM1 was 18%, not 30%. The 12-point gap was a combination of FBA size-tier reclassification the brand had not repriced for, a returns rate that had crept up two points, and a promotional reserve the founder did not carry on his back-of-napkin math.
The hero SKU was running 4 points above the ceiling. Translated into dollars, this was a meaningful monthly contribution loss on a single SKU. The brand had been making it back through two supporting SKUs whose CM1 the founder underestimated, so the blended number looked fine. When we cut hero-SKU spend by 30%, organic sales held up better than expected - roughly 60% of the cut ad-attributable revenue was incremental, 40% had been cannibalizing organic. The CM2 line flipped positive within six weeks.
The lesson: blended numbers hide problems for quarters. SKU-level CM1 work surfaces them in an afternoon.
Case B - the model said cut, the right answer was spend
A different client was facing a competitor's launch in their core category. The CM1-derived ceiling said 18% TACoS. The competitor was running aggressive Sponsored Brand video creative against the client's branded search terms. Holding the line at 18% TACoS meant losing two points of branded SOV per week. Two points per week compounded to losing the category.
The model said cut. The strategic situation required holding - and arguably increasing - spend, at the cost of 60-90 days of negative CM2, to defend share that would compound in value over the following two years. We ran 28% TACoS for ten weeks, took the contribution loss against budget, and held share. Q3 CM2 came in 4 points below plan. Q1 of the following year, CM2 was 3 points above plan, because the brand had retained its category position and the competitor had spent down without consolidating the share grab.
The lesson - and the reason the ceiling rule is not the whole story - is that the math gives you a steady-state answer. Strategy decides whether you should be in steady state. When you should not, the discipline is to take the ceiling-breach decision deliberately, with a defined time horizon and a defined exit condition, not to drift into it.
When to deliberately break your own ceiling
The CM1 ceiling is the default. The exceptions are explicit. The exceptions I have run in practice:
Exception one - share defense. Competitor launch on a high-LTV category, where the cost of losing 5 points of share materially exceeds the cost of 60-90 days of above-ceiling spend.
Exception two - share offense. Competitor weakness window where they are out of stock, between agencies, or on a promo pause. Time-boxed share-take where the math is "how much margin will I burn to take 5-7 points of share that compounds for 18 months at steady-state CM2."
Exception three - launch. New SKU, new market, new variation.
Exception four - fee-change recovery. When Amazon hikes fees mid-year, CM1 compresses overnight. The right response is not always instant ceiling tightening; sometimes the right response is to run a 60-90 day above-ceiling window while you renegotiate freight, raise prices, or reformulate the SKU.
Exception five - strategic exit positioning. If the brand is positioning for sale within 12 months, the buyer cares about top-line growth in the trailing 12. Some controlled above-ceiling spending in months 7-12 is sometimes a defensible move toward the exit multiple. This is a CFO conversation, not an ads-team conversation, and it requires explicit board sign-off.
In every case, the discipline is the same: name the exception, write down the time horizon, write down the exit condition, and re-impose ceiling discipline the moment the exit condition is met or violated. Drift is the failure mode. A documented exception is not drift.
The diagnostic tree - when TACoS exceeds the ceiling
The most useful thing a ceiling model gives you is not a number. It is a trigger. When TACoS goes above ceiling on a SKU bucket, the response is not "lower bids." The response is to ask why.
Question 1: Did inventory go below cover threshold in the last 30 days? If yes - IPI score dropped, stockout or near-stockout occurred, Amazon throttled buy-box share - the TACoS drift is mostly mechanical. Fix the inventory, the ratio normalizes. Do not cut bids.
Question 2: Is search-term mix the same as 30 days ago? Pull the top 20 search terms by spend in the current period and the comparison period. If 5+ terms have shifted, a category trend is moving against you. The fix is targeting and creative, not bid floor.
Question 3: Is branded SOV declining? If yes, a competitor is bidding aggressively on your brand terms. The fix is brand-defense investment, which sometimes means breaching the ceiling temporarily, not cutting bids.
Question 4: Did organic revenue drop while ad-attributed revenue held? If yes, the listing or the offer has degraded. The fix is listing operations, not ad spend.
Question 5: Did ad CPCs rise materially? If CPCs are up 15%+ without a corresponding CVR improvement, the auction has heated up. The fix is bid posture adjustment per campaign.
Question 6: Did your CM1 actually change? If freight prices moved, FBA fees changed, or a coupon stack ran longer than planned, your CM1 is lower than the ceiling assumed. The ceiling needs to be lowered.
Bottom line
A spend ceiling is not a constraint on growth. It is the thing that tells you when growth is real and when it is bought.
The model has three layers:
- The CM1-derived ceiling - maximum profitable TACoS based on unit economics (this post)
- The working-capital ceiling - maximum fundable TACoS based on cash flow
- The promo-period override - different math for the ~20% of annual revenue that runs through Prime windows and BFCM
The real ceiling is the binding constraint among the three. Most brands have never named any of them.
If you want a second read on whether the model and the operating cadence are sound for your account, the Amazon Account Audit covers exactly this ground.
Frequently asked questions
What is the Amazon ad spend ceiling?
The maximum TACoS an account can sustain while still hitting target CM2 and remaining fundable from operating cash. It has three layers: unit-economics ceiling (CM1 minus target CM2), working-capital ceiling, and the strategic exception layer. The binding ceiling is the lowest of the three.
What is CM1 versus CM2 versus CM3?
CM1 is the per-unit margin after product cost, fulfilment, marketplace fees, returns, and promo reserves - the dollar you have left to spend on advertising. CM2 is CM1 minus ad spend - the contribution toward fixed costs. CM3 is CM2 minus fixed cost allocation - the actual profit margin.
How do I model my Amazon spend ceiling?
Calculate CM1 by SKU bucket with your finance team. Set a target CM2 finance will defend to the board (typically 10-15% on consumer goods). Subtract target CM2 from CM1 to get steady-state TACoS ceiling. Layer in a working-capital sanity check. Document the bucket-level ceilings and re-run the model quarterly.
When should I break the ceiling deliberately?
Five named exceptions: share defense, share offense in a competitor weakness window, new-SKU launches, fee-change recovery, and strategic exit positioning. Each exception requires a documented time horizon and exit condition.
What's the most common mistake?
Calculating CM1 once and treating it as static. Amazon fee changes, freight volatility, and returns drift all move CM1 by 2-6 points per year on the median consumer SKU. A ceiling built on stale CM1 is no ceiling.