From "Are We Profitable?" to "Where Do We Make and Lose Money?"
An annual income statement answers one question: did the company make a profit overall? It does not tell you which products carry the business and which drain it, which large customer costs more to serve than they pay, or which branch covers its own costs. A company reporting an 8% net margin can easily be a blend of products earning 20% and products losing money on every unit, of strong branches and branches that have been running below break-even for months.
Cost management and profitability analysis through an ERP means getting those answers from the same daily transactions you already record, not from a spreadsheet rebuilt once a year. This article covers the layers of full cost, compares traditional overhead allocation with activity-based costing using a worked example, walks through the main profitability dimensions, explains contribution margin and break-even, and finishes with the decisions the analysis supports and the mistakes that ruin it.
The Three Layers of Full Cost
- Direct cost: anything traceable straight to the product, such as purchase price or raw materials, inbound freight, non-recoverable duties and direct labor in manufacturing.
- Indirect production or operating cost: shared costs such as warehouse rent, machine depreciation, supervisors' salaries and power.
- Cost to serve: what it takes to serve a customer or channel after the sale: delivery, handling many small orders, returns, sales visits and the financing cost of slow-paying receivables.
Financial reporting uses the first two layers to value inventory under IAS 2, which measures inventories at the lower of cost and net realisable value. Cost to serve never goes into inventory cost, yet it often decides whether a customer or product is worth keeping. Management profitability analysis brings all three layers together, which is why it gives a different picture from the gross margin in your financial statements.
One accounting rule matters here. IAS 2 requires fixed production overheads to be allocated on the basis of the normal capacity of the facility. When output drops or a machine stands idle, the fixed overhead per unit does not rise; the unallocated amount is expensed in the period. This stops inventory being inflated in slow months, and your ERP costing setup should reflect it.
Why Traditional Allocation Misleads
The simplest way to spread overheads is in proportion to revenue or volume. It looks fair, but it assumes every riyal of sales consumes the same resources, which is rarely true.
Hypothetical example: a distributor sells two products and has SAR 600,000 of annual operating overhead.
| Item | Product A: bottled water by the carton | Product B: supplements by the unit |
|---|---|---|
| Annual revenue | SAR 3,000,000 | SAR 1,000,000 |
| Cost of goods | SAR 2,400,000 | SAR 600,000 |
| Gross margin | SAR 600,000 (20%) | SAR 400,000 (40%) |
| Orders | 1,200 | 4,800 |
| Warehouse space | 70% | 30% |
| Deliveries | 900 | 3,100 |
Allocation by revenue: Product A takes 75% of overhead, SAR 450,000, leaving a profit of SAR 150,000. Product B takes SAR 150,000 and keeps SAR 250,000. Conclusion: Product B is the star.
Allocation by activity: suppose the overhead breaks down into SAR 240,000 for order processing, SAR 200,000 for storage and SAR 160,000 for delivery. Each pool goes out by its own driver:
| Cost pool | Driver | Rate | Product A | Product B |
|---|---|---|---|---|
| Order processing 240,000 | Orders (6,000) | SAR 40 per order | 48,000 | 192,000 |
| Storage 200,000 | Space share | By share | 140,000 | 60,000 |
| Delivery 160,000 | Deliveries (4,000) | SAR 40 per delivery | 36,000 | 124,000 |
| Total | 224,000 | 376,000 |
Product A now earns SAR 376,000 and Product B only SAR 24,000. The product with the higher gross margin barely breaks even once its many small orders and deliveries are counted. That does not mean dropping it; it means its pricing or minimum order size needs attention.
Building an Activity-Based Model Step by Step
- Pick the main activities. Eight to twelve is plenty for most companies: purchasing, receiving, storage, picking, delivery, customer service, collections and, in factories, line setups.
- Cost each activity. Salaries of the people doing it plus its share of rent, depreciation and systems. Cost centers make this far easier because expenses land in the right place when they are posted.
- Choose a driver per activity. The driver is whatever makes the activity's cost go up: orders, deliveries, invoice lines, inspection hours.
- Calculate the driver rate: activity cost divided by total driver volume.
- Charge products and customers: driver rate times the driver volume each one consumed.
- Review the model at least every six months or whenever operations change materially.
An ERP makes steps three and five practical because driver volumes already sit in your transactions: orders from sales orders, deliveries from delivery notes, returns from return notes. For how cost centers differ from analytic distribution, see our article on cost center types and uses.
Profitability Dimensions
| Dimension | Question it answers | Data needed from the ERP |
|---|---|---|
| Product or service | Which items earn money after full cost? | Net sales after discounts, cost of goods, activity drivers per item |
| Customer | Who costs more to serve than they pay? | Orders, returns, discounts, actual days to pay |
| Branch or region | Does each branch cover its local costs and head-office share? | Branch revenue and expenses posted to its cost center |
| Channel | Which sales channel is most profitable after its own costs? | Platform commissions, delivery costs, distributor discounts |
| Project | Is the project tracking its estimated margin? | Labor, materials and subcontractor costs posted to the project |
Customer Profitability: Biggest Is Not Always Best
Hypothetical example: two customers each buy SAR 1 million a year at a 25% gross margin, SAR 250,000 each.
- Customer one orders twice a month in full loads, pays in 30 days and rarely returns anything.
- Customer two orders every other day in small quantities, gets an extra 3% discount, pays after 120 days and returns 6% of goods.
Using SAR 40 per order, SAR 40 per delivery and an 8% annual cost of funds on receivables: customer one generates 24 orders and 24 deliveries, SAR 1,920, plus about SAR 6,600 of financing cost. Customer two generates about 180 orders and 180 deliveries, SAR 14,400, an extra SAR 30,000 discount and around SAR 26,300 of financing cost, before the cost of handling returns. Same sales, same gross margin, yet more than SAR 60,000 a year apart. That opens a concrete conversation: a minimum order size, a fixed delivery schedule, or tying the extra discount to on-time payment.
The Cost of Capital Tied Up in Stock
Some costs never appear on the income statement at all. An item with SAR 500,000 on the shelf that sells SAR 50,000 a year ties up capital for ten years at current rates. At an 8% cost of funds that is roughly SAR 40,000 a year in financing alone, plus the space it occupies and the risk of obsolescence or expiry.
IAS 2 requires a write-down when net realisable value falls below cost, but the financing cost itself stays outside the accounts. Add it in management analysis as an annual percentage on average stock per item. The ERP already holds average balances and turnover from stock movements, so items that look profitable on margin but consume more capital than they deserve become visible.
Contribution Margin and Break-Even
Contribution margin is selling price minus variable cost per unit: what each unit contributes toward fixed costs and then profit. Break-even in units equals fixed costs divided by contribution margin per unit.
Hypothetical retail branch: monthly fixed costs of SAR 180,000 (rent, salaries, head-office share) and an average contribution margin of 30% of sales. Break-even sales = 180,000 / 0.30 = SAR 600,000 a month. If the branch averages SAR 540,000, it loses about SAR 18,000 a month before any further allocation.
The value of having this in the system is that it updates as costs or sales mix change, so the branch manager knows mid-month how far there is to go, instead of finding out after the close.
Decisions the Analysis Supports, and a Warning
The most dangerous thing about profitability analysis is reading it too quickly. A product that shows a loss after allocation will not necessarily raise profit if you drop it. The right question is which costs actually disappear.
Back to Product B: drop it and you lose SAR 1,000,000 of revenue and SAR 600,000 of cost of goods, so SAR 400,000 of gross margin goes. Will the SAR 376,000 of allocated overhead go with it? Only part of it: the extra deliveries and perhaps one picker. The warehouse lease stays. If SAR 200,000 genuinely disappears, dropping the product cuts profit by about SAR 200,000. Raising the price, setting a minimum order or consolidating deliveries may be the smarter move.
- Reprice high cost-to-serve items or introduce minimum order values.
- Link customer discounts to payment behavior and order size, not sales volume alone.
- Rethink weak branches, for example converting them to lower-cost collection or distribution points.
- Move sales incentives from revenue to contribution margin.
For the difference between cutting cost and spending it well, read our piece on cost effectiveness versus cost efficiency.
Data the ERP Must Capture From Day One
- Cost center or branch on every purchase invoice, expense and manual journal.
- Project on every material issue, timesheet and subcontractor invoice that belongs to a project.
- Return reason on every sales return, since defects and ordering errors mean different things.
- Discount type: invoice discount, retrospective volume rebate or early payment discount.
- Channel and salesperson on sales orders, so channels and reps are judged on margin.
- Actual collection date on every invoice, to cost each customer's receivables.
A Monthly Profitability Dashboard
| Metric | Calculation | Act when |
|---|---|---|
| Contribution margin by item | (Net price minus variable cost) / net price | It falls below the floor set for that category |
| Cost to serve by customer | Activity costs charged to the customer / their sales | It sits well above the segment average |
| Branch margin after direct costs | Branch revenue minus cost of goods and local expenses | Below break-even three months running |
| Return rate | Returns / sales, by item and customer | A sudden rise for one item or supplier |
| Discounts as share of sales | Total discounts / gross sales | Discounts widen without matching volume |
| Days to collect by customer | Average gap between invoice and collection | It exceeds agreed credit terms |
A Realistic Rollout
- Review chart of accounts and cost centers (2 to 3 weeks): make sure expenses are recorded in enough detail to group by activity, and every branch, warehouse and project has its own cost center.
- Agree activities and drivers (2 weeks): a workshop with finance, operations and sales to pick no more than eight activities.
- Clean item costs (2 weeks): check the costing method and fix zero or illogical item costs.
- First reports (2 to 3 weeks): item and customer profitability first, then branch and channel.
- First review cycle (1 month): present results with avoidable-cost analysis before any decision is taken.
Do not wait for a perfect model. A simple three-driver model reviewed monthly is worth more than a precise one nobody opens.
Mistakes That Undermine the Analysis
| Mistake | Result | Fix |
|---|---|---|
| Expenses posted without a cost center | Large "general" balances spread arbitrarily | Make cost center mandatory on journals and purchases |
| Stale item costs | Phantom margins | Weighted average or FIFO updated on every receipt |
| Ignoring rebates and returns | Overstated revenue for specific customers | Link credit notes to customer and item |
| Too many complex drivers | A model nobody understands or maintains | Start with three or four clear drivers |
| Dropping a loss-maker without avoidable-cost analysis | Profit falls instead of rising | Separate costs that disappear from those that stay |
For product costing in manufacturing specifically, see our guide to true product costing.
How Tranquil Supports Cost and Profitability Analysis
Tranquil connects financial accounting with inventory, sales, purchasing and projects in one cloud system, so cost of goods, discounts and returns reach the ledger from the transaction itself. The projects module captures labor and parts costing per project or job. The Tranquil team also customizes reports and screens, such as profitability by item, customer or branch. See accounting and finance, or contact us to discuss the right costing model for your business.
Frequently Asked Questions
What is the difference between traditional costing and activity-based costing?
Traditional costing spreads overhead with a single base such as revenue or labor hours. Activity-based costing assigns it according to the activities each product or customer actually consumes, such as orders and deliveries.
Can activity-based costing be used in the financial statements?
Its logic can help allocate production overheads into inventory cost, provided you follow IAS 2. Selling, distribution and cost-to-serve figures remain management tools and do not enter inventory cost.
Which dimensions should I analyze first?
Start with product and customer, since the data is usually already in the system. Add branch and channel once cost centers are posted consistently.
Should I drop a product that shows a loss?
Not until you know which costs actually disappear when you drop it. Many allocated costs remain, and repricing or changing terms is often better.
How often should profitability be reviewed?
Product and branch margins monthly, the driver model every six months, and major customers quarterly or before renewing their terms.

