The Forecast Was Right. The Cash Was Not.
The allocation followed the revenue signal. The margin did not follow the allocation.
The forecast was right.
Demand came in exactly as planned. The velocity was real. The channel was growing. Every number pointed in the same direction and the allocation followed.
Three months later finance closed the month and the margin was not what anyone planned for.
Not because the forecast failed. Not because demand disappeared. Because the allocation decision that preceded the season followed the revenue signal without ever modeling the margin signal.
The person who could see the fee stack did not govern the allocation. The person who governed the allocation could not see the fee stack.
Same gap. Different consequence. Same planning meeting.
Two Stories. One Planning Meeting.
Every channel allocation produces two stories simultaneously.
Story one is revenue by channel. The fastest growing channel is producing an impressive share of total sales. The velocity is visible. The demand is measurable. The allocation looks correct because the numbers support it.
Story two is margin contribution by channel. The same channel producing the impressive revenue share is contributing a significantly smaller share of total margin. The selling costs, the fulfillment fees, the fee stack behind the velocity number have compressed the return to a fraction of what the revenue percentage suggested.
Same channel. Same season. Same forecast. Two completely different stories depending on which number was in the room when the allocation was made.
Most planning meetings only have story one.
Story two does not exist in most planning meetings because nobody built it before the allocation was made. The velocity is visible. The demand is measurable. The margin contribution comparison requires someone to model the full cost stack by channel before the capital commits. That work almost never happens before the planning meeting. It almost always happens after the margin variance surfaces.
By then the allocation is already made. The inventory is already placed. The selling costs are already accumulating. The only conversation left is explanation.
The Amazon Example
A startup brand enters Amazon. The sales velocity is impressive. The demand signal is real and the growth is real. Every planning cycle the Amazon allocation gets deeper because Amazon is performing on the top line.
Nobody runs the full fee stack before the allocation is made. FBA fees, ad spend, storage costs, returns, and selling costs are not modeled against the contribution margin before the capital commits. The planning meeting has the revenue number. It does not have the margin contribution number.
When the comparison is finally run across channels the story inverts.
Amazon's percentage of total sales is impressive. Amazon's percentage of total margin contribution is not. The channel that looked like the growth engine was consuming a disproportionate share of capital while producing a disproportionate minority of margin.
The forecast was right. The demand materialized. The allocation followed the demand signal. And the cash and margin outcome did not match what the top-line numbers suggested they would be.
This is not an Amazon problem. Amazon's fee structure is transparent and publicly available. The selling costs are knowable before the allocation is made. The problem is that nobody built the model before the planning meeting happened.
Why the Margin Comparison Never Makes It Into the Room
The planning meeting that governs the allocation runs on velocity data. Units sold. Revenue by channel. Growth rate. Forecast versus actual. These are the numbers that are visible, accessible, and already in the planning system.
The margin contribution comparison requires additional work. Someone has to model the full cost stack by channel. Selling costs, fulfillment structure, fee stack, return rates, storage exposure. Applied to every SKU in every channel being allocated. Before the planning meeting. Before the PO releases.
That work requires an operator who understands the channel economics at the SKU level and has the authority to put the margin contribution number in front of the allocation decision before the capital moves.
Most businesses do not have that operator in the seat. The person who understands the fee stack is running the channel. The person governing the allocation is running the plan. They are not the same person and they are rarely in the same planning meeting.
So the allocation follows the velocity. The margin comparison happens three months later when finance closes the month. And the conversation that follows is about explaining the variance rather than preventing it.
The Commitment Point
The allocation decision that produced the margin variance was not made when the numbers came back wrong.
It was made three months earlier. In a planning meeting. Where the velocity number looked like a clear signal and nobody asked what it was costing to capture it.
That moment is the commitment point.
Not the purchase order. Not the fulfillment decision. The planning meeting where the allocation gets made without the margin model in the room and without the operator who understands it.
The commitment point is where every margin outcome is decided. Before the season starts. Before the inventory moves. Before the fee stack begins accumulating. Before the only conversation left is explanation.
It is also the only moment where the outcome can still be changed.
A purchase order can be amended but only at cost. A fulfillment decision can be redirected but only partially. A planning meeting can be governed before the capital commits. The allocation can be made against both stories — revenue signal and margin signal — before the PO releases.
That is what a governed commitment point looks like. Not a better forecast. Not more data. The margin model in the room at the moment the allocation is made. Before the capital moves.
What Governed Allocation Looks Like
When the margin contribution comparison exists before the planning meeting the allocation decision changes.
The channel growing fastest does not automatically get the deepest inventory commitment. The channel earning the most on the capital committed to it does.
Sometimes those are the same channel. Often they are not.
The brand with impressive Amazon velocity and compressed Amazon contribution margin makes a different allocation decision when both numbers are in the room. It does not necessarily pull back from Amazon. It allocates with eyes open. It models the selling costs before the commitment. It decides which SKUs justify FBA economics and which belong in a different fulfillment path. It builds the Amazon position with margin discipline rather than velocity momentum.
The operator who can see the fee stack governs the allocation. The leader who governs the allocation can see the fee stack. The gap closes.
And when finance closes the month the margin reflects the decision that was made in the planning meeting rather than the one that was made by default.
The Diagnostic Question
If your business is making channel allocation decisions and you cannot answer the following question before the next planning meeting, the gap exists right now.
What is the margin contribution percentage by channel for your top ten SKUs after every channel-specific selling cost is applied?
Not the revenue percentage. Not the gross margin. The net contribution by channel after fulfillment, selling costs, fees, returns, and storage are all in the model.
If that number does not exist before your next allocation decision is made, the planning meeting only has story one.
Story two is the one that tells you where the capital is actually going.
⚜️