Why Your CPG Gross Margin Is Worse Than You Think — and Where to Find It
Most CPG brands manage margin at the category level — and they are surprised when the P&L does not improve even after pricing actions. The reason is almost always the same: the margin leak is not at the category level. It is at the SKU level, the channel level, and the customer level. And most brands have never built a model that shows them where it actually is.
The gap between reported gross margin and true profitability in CPG is larger than most founders realize. The issue is not that brands do not care about margin. It is that the tools most brands use to measure it — category-level P&Ls, top-line revenue reporting, quarterly financial statements — hide the problem rather than revealing it.
True profitability in CPG requires a cost-to-serve model: a bottom-up view of what it actually costs to get each SKU to each customer through each channel. That means freight-in, co-manufacturer fees, inbound logistics, warehousing allocation, outbound freight, retailer fees, broker commissions, promotional trade spend, and chargebacks — all attributed to the specific SKU-channel-customer combination.
When brands build this model for the first time, the results are almost always surprising. Some retail customers that look like top-line revenue drivers are actually margin-negative when full cost-to-serve is calculated. Some SKUs that appear to be core to the assortment are subsidizing others. Some promotional programs with high velocity have negative promotional ROI.
The fix starts with the model — not with pricing actions. You cannot fix what you cannot see. Once the model exists, the decisions become clearer: which customers to reprice, which SKUs to rationalize, which promotional programs to reform, which channels to invest in versus pull back from.
The brands that manage to sustain gross margin through growth cycles are almost always the ones that built this model early. Not because they are smarter, but because they can see what is actually happening in their P&L — and they can act on it before the problem becomes structural.
Building a cost-to-serve model is not a sophisticated analytics project. It is a discipline problem. The data exists in most brands. The challenge is pulling it together in a consistent framework and reviewing it regularly — not as an annual exercise, but as part of the operating cadence.
- Category-level margin reporting hides SKU and channel-level leakage
- True CPG profitability requires a cost-to-serve model at SKU × channel × customer
- Freight, co-man, trade spend, and chargebacks must all be attributed to the unit
- Some top-line revenue accounts are margin-negative at full cost-to-serve
- The model is a discipline problem, not a data problem — the data usually exists
- Build the model before taking pricing action — you cannot fix what you cannot see