Selling More Doesn't Mean Earning More: How to Calculate True Gross Margin
Sales revenue and book gross margin cannot tell you whether a deal is worth doing. Only by factoring in direct operating costs can you see the real operating contribution a product actually leaves behind.
When distributors hold business review meetings, two numbers most easily lead them astray: sales revenue and book gross margin.
A certain SKU sold 5,000 cases this month, generating 230,000 yuan in sales against a purchase cost of 200,000 yuan—at first glance, a gross margin of 30,000 yuan. The sales rep says the product moves well, the manufacturer says the promotion worked, and everyone naturally leans toward loading up more inventory and investing more in promotional spend.
Yet at the end of the month, there is no extra cash.
The warehouse says it added handling labor for this batch, delivery says the routes were scattered, finance says customer payment terms have stretched, and sales submits yet another display fee. Once all these costs are deducted one by one, the original book gross margin of 6 yuan per case may shrink to just over 2 yuan.
This is not an accounting error. It is that the business judgment only calculated “selling price minus purchase price,” without putting all the resources this deal actually consumed into the same picture.
This article aims to drive home one principle: sales volume is the result, book gross margin is the starting point, and what the owner really needs to judge is how much contribution a product leaves the company after bearing its direct operating costs.
To avoid confusion, this article calls this management metric “SKU operating contribution.” Many owners habitually call it “true gross margin,” but it is neither the statutory “gross margin” on accounting statements nor the company’s final “net profit.” Its purpose is to help owners compare whether products, customers, and promotions are worth continuing.
1. Why Selling More Doesn’t Bring In More Money
Beyond purchase cost, a SKU consumes many resources on its way from the warehouse to the customer:
- Delivery vehicles have to run;
- The warehouse must load, unload, and sort;
- Goods suffer damage, near-expiry losses, and returns;
- Customer receivables tie up capital;
- Displays, promotions, and giveaways cost money;
- Sales reps may offer extra discounts to hit volume targets;
- Manufacturer rebates may arrive late, come with conditions, or never materialize at all.
These costs do not automatically disappear just because the ERP’s “gross margin” field doesn’t show them.
What’s more troublesome is that different products consume resources in different ways.
A high-turnover product delivered by full truckload and paid in cash on delivery may contribute cash steadily even with a somewhat lower book gross margin; a new product that looks high-margin may actually contribute very little if its orders are fragmented, returns are frequent, display fees are heavy, and payment terms are long.
So the owner cannot just ask “what’s this product’s gross margin rate?” but must also ask:
- To sell it, what identifiable extra costs did the company incur?
- Which expenses would have occurred anyway, and which were caused by this product or this promotion?
- Have the manufacturer’s rebate conditions been met, and can the rebate be recognized?
- When does the money come back, and how much capital is tied up?
- After all deductions, how much remains to cover the company’s fixed expenses and profit?
2. First, Separate Three Different Metrics
If the metrics are not clearly separated, it doesn’t matter how fast AI can calculate.
Metric One: Book Gross Margin
The simplest formula is:
Book gross margin = Sales revenue − Purchase cost of goods sold
It answers the price spread between buying and selling the product.
Metric Two: SKU Operating Contribution
The formula used in this article is:
SKU operating contribution = Book gross margin + Recognized rebates − Attributable delivery costs − Attributable loading and sorting costs − Damage and return losses − Cost of capital tied up − Attributable promotion expenses − Other directly attributable costs
It answers: after bearing the operating costs that are directly related to it and can be reasonably attributed to it, how much money does this deal leave behind?
Metric Three: Company Net Profit
SKU operating contribution is still not net profit. The company also has shared costs such as office rent, management salaries, system fees, and taxes. These are not necessarily suitable for forced allocation to every single case of goods.
Therefore, the correct use of SKU operating contribution is for operational comparison and decision-making, not as a substitute for accounting statements.
If shared costs are arbitrarily averaged out, a large-scale product with stable contribution may look terrible; if shared costs are ignored entirely, one may mistakenly believe that the sum of all SKU contributions equals what the owner ultimately earns.
3. Recalculating with a Complete Data Set
Below is a fully public set of demonstration data that does not represent any real client. Every number can be verified with a calculator.
A distributor runs a promotion for a beverage product, with the following data for the period:
| Item | Value | Notes |
|---|---|---|
| Sales quantity | 5,000 cases | Sales completed |
| Tax-inclusive selling price | 46 yuan/case | For demonstration, a uniform tax basis is used throughout |
| Tax-inclusive purchase cost | 40 yuan/case | Consistent with the sales basis |
| Attributable delivery cost | 8,000 yuan | Added for this promotion; verifiable |
| Loading and sorting cost | 0.5 yuan/case | 2,500 yuan in total |
| Damaged quantity | 40 cases | Loss calculated at purchase cost |
| Average receivables outstanding | 200,000 yuan | Demonstration input |
| Days outstanding | 45 days | Demonstration input |
| Annual cost-of-capital rate | 6% | Company-defined management parameter |
| Display and promotion expenses | 5,000 yuan | Direct expense of this promotion |
| Recognized rebates | 0 yuan | Recognition conditions not yet met; excluded |
Step 1: Calculate Sales Revenue
5,000 cases × 46 yuan = 230,000 yuan
Step 2: Calculate Purchase Cost
5,000 cases × 40 yuan = 200,000 yuan
Step 3: Calculate Book Gross Margin
230,000 − 200,000 = 30,000 yuan
On paper, the gross margin is 6 yuan per case, and the book gross margin rate is approximately:
30,000 ÷ 230,000 = 13.04%
Up to this point, the promotion looks pretty good.
Step 4: Deduct Direct Operating Costs One by One
Delivery cost: 8,000 yuan.
Loading and sorting cost: 5,000 × 0.5 = 2,500 yuan.
Damage loss: 40 × 40 = 1,600 yuan. This is calculated at purchase cost, without counting sales revenue that never occurred as a loss.
The cost of capital tied up uses a management estimate:
Average receivables outstanding × Annual cost-of-capital rate × Days outstanding ÷ 365
Plugging in the data:
200,000 × 6% × 45 ÷ 365 ≈ 1,479 yuan
Display and promotion expenses: 5,000 yuan.
Step 5: Calculate SKU Operating Contribution
30,000 − 8,000 − 2,500 − 1,600 − 1,479 − 5,000
= 11,421 yuan
Converted to a per-case figure:
11,421 ÷ 5,000 ≈ 2.28 yuan/case
Operating contribution rate:
11,421 ÷ 230,000 ≈ 4.97%
For the same deal, the books show 6 yuan per case and a 13.04% gross margin rate; once direct costs are factored in, what remains is roughly 2.28 yuan per case and an operating contribution rate of about 4.97%.
It is still not a loss, but it feels completely different from the operating impression of “earning 6 yuan per case.”
4. The Real Difficulty Isn’t the Formula, but Where Each Number Comes From
AI can easily compute the formula; the hard part is whether the inputs are credible.
How to Attribute Delivery Costs
If a truck delivers only for this promotion, you can use the actual vehicle and route costs; if one truck carries a mixed load of multiple products, you can allocate by case count, weight, volume, order count, or number of delivery points.
There is no single universal method. The key is long-term consistency and explainability. If you allocate by case count today and switch to allocating by sales revenue tomorrow to make a certain product look better, the results can no longer be compared.
How to Account for Damage and Returns
You need to distinguish:
- Physical damage;
- Near-expiry markdowns;
- Customer returns that can still be resold;
- Goods already written off;
- Reversals or canceled orders.
You cannot treat all returns as total losses, nor can you assume there is no cost just because the goods are still sitting in the warehouse.
How to Calculate the Cost of Capital Tied Up
Ideally, calculate by customer, order, and actual payment collection dates. When data is insufficient, you can make a management estimate using the average receivables balance and average days outstanding.
The annual cost-of-capital rate is not a number copied off the internet, either. It can be based on the company’s actual financing cost, target return on capital, or a management parameter set uniformly by the owner—but it must be stated explicitly in the worksheet.
When to Recognize Rebates
A rebate written in the contract does not mean it has been earned.
If the rebate requires meeting targets for sales volume, payment collection, displays, or channel coverage, you must wait until the conditions are clearly met, or at least recognize it under the company’s consistent, prudent rules. Counting unconfirmed rebates in full ahead of time to make a promotion look profitable is one of the most common misjudgments.
The Tax Basis Must Be Consistent
If sales revenue is tax-inclusive while purchase cost is tax-exclusive, or some expenses include tax while others don’t, the resulting numbers are not comparable.
Management estimates may use either tax-inclusive or tax-exclusive figures, but a single worksheet must be uniform. Formal financial and tax treatments should still be confirmed by finance staff.
5. Getting AI to Help: The Right Sequence Is Not “Upload a Spreadsheet and Ask Whether It’s Profitable”
AI is well suited to four tasks:
- Checking whether input fields are complete;
- Batch-calculating according to formulas that have already been confirmed;
- Comparing differences across products, customers, or promotions;
- Identifying the cost items with the greatest impact on the results and generating a review checklist.
But before handing the data to AI, people must first complete three things:
First, Finance Confirms the Metrics
The data scope for sales, purchases, returns, rebates, and expenses must be consistent. In particular, guard against double deduction—for example, when a certain expense is already included in the purchase cost and then deducted again later.
Second, the Business Team Confirms Attribution
Does a display fee belong to a specific product, a specific brand, or the entire store? Is a delivery cost part of a regular fixed route, or newly added for a promotion? These require business facts.
Third, the Owner Confirms Decision Thresholds
How low does operating contribution have to fall before a review is triggered? How many consecutive months of negative contribution before discontinuing? Are strategic products and traffic-driving products allowed short-term low contribution? Without these boundaries, AI can only rank—it cannot decide for the owner.
A more reliable way to assign the task is:
Based on this SKU worksheet with already-verified metrics, calculate book gross margin, operating contribution, per-case contribution, and contribution rate according to the given formulas; list any missing inputs; do not fill in numbers on your own; sort by contribution rate from lowest to highest; for the five lowest products, only explain the main drag factors, and do not give delisting conclusions.
This way, AI does the calculating and flagging, while people retain the judgment.
6. Don’t Settle for a Single Answer—Do Sensitivity Analysis
Operating data often contains estimates. Rather than pretending to be precise, it’s better to see whether the conclusion changes when key parameters change.
Using the same example as above:
- If delivery cost drops from 8,000 yuan to 6,000 yuan, operating contribution increases by 2,000 yuan, or 0.40 yuan per case;
- If payment terms shorten from 45 days to 20 days, the cost of capital tied up decreases by about 822 yuan;
- If promotion expenses increase from 5,000 yuan to 9,000 yuan, operating contribution falls to about 7,421 yuan, leaving only about 1.48 yuan per case;
- If a 10,000-yuan rebate is ultimately confirmed, operating contribution rises to about 21,421 yuan—but only if the rebate conditions are truly met.
From this, the owner can see whether to renegotiate delivery, chase collections, control expenses, or fight for rebates. This value is far greater than simply slapping a “profitable” or “unprofitable” label on a product.
7. After the Calculation, How to Turn It into Operating Actions
For low-contribution products, don’t discontinue them immediately. First sort them into four categories by cause:
Pricing Problems
The price spread is too thin, or extra discounts are excessive. Actions may include renegotiating purchase prices, adjusting selling prices, or tightening ad-hoc policies.
Fulfillment Problems
Fragmented orders, distant deliveries, heavy handling, frequent returns. Actions may include setting minimum order quantities, adjusting routes, or changing packaging or delivery frequency.
Capital Problems
Long customer payment terms, slow collections. Actions may include adjusting credit limits, supplying in installments, or strengthening receivables aging management.
Investment Problems
Display, promotion, and giveaway spending is too high but has not brought sustained sales. Actions may include shrinking the pilot, setting stop conditions, or requiring post-promotion reviews.
The same product may contribute completely differently across different customers, regions, and fulfillment methods. So don’t just build a “product leaderboard”—gradually move toward viewing “product × customer,” “product × promotion,” and “product × route.”
8. Three Risk Boundaries That Must Be Held
First, the formulas in this article are business management tools; they do not replace formal accounting, tax treatment, or audit opinions.
Second, the demonstration parameters are not industry standards. The cost-of-capital rate, expense allocation, and rebate recognition method must all be determined by the company based on its actual situation, and kept consistent.
Third, AI’s results must be traceable back to the original sales, purchase, expense, and collection records. A “true gross margin” that cannot be recalculated is just another number that merely looks precise.
Finally: Calculate One Product Today—Don’t Start with the Whole Company
Open the SKU True Gross Margin Worksheet and pick one product that has recently sold in high volume, run many promotions, or that the owner feels is “somehow off.”
First fill in sales quantity, sales revenue, and purchase cost; then enter delivery, loading and unloading, damage, capital tied up, promotions, and recognized rebates item by item. Mark anything missing as missing—don’t guess.
After the calculation, don’t rush to ask “should we discontinue it?” First identify the two biggest drag items and assign someone responsible to verify them.
When the owner can change “this product sells pretty well” into “how much does this product leave per case, where does the money go, and what do we improve next,” AI and data truly begin to help the business.
References
- Accounting Regulatory Department, Ministry of Finance: Accounting Law of the People’s Republic of China (2024), cited to note that formal accounting must follow the unified national accounting system; this article does not replace accounting.
- Internal project research working paper: “Research Notes on AI Applications for FMCG Distributors,” 2026-07-24.
- The worked example in this article uses public demonstration data, with the calculation process and assumptions fully disclosed. Verification date: 2026-07-27.
Next: “Employees Know How to Use AI, So Why Hasn’t the Business Changed?”—between individuals saving time and processes truly changing, which two layers are still missing.