How to track SKU-level margin in an Indian trading business?

Industry PlaybooksHowBy Maharshi SapariaReviewed
SHORT ANSWER

Connect AI to your Tally, CRM, and inventory systems together. Read every discount layer (volume, scheme, payment-term, channel-specific rates) and compute true net realization per SKU per customer. Aggregate P&L hides the truth - SKU-level margin shows which products and customers are actually profitable after all the deductions.

Why SKU margin is hard in trading

A trading business looks deceptively simple from the outside. You buy at one price, sell at another, the difference is the margin. The reality on the ground is messier. Several layers of cost and incentive sit between invoice price and true realised margin.

THE DIFFICULTY DRIVERS
  • Landed cost is not invoice cost. The same SKU arrives from three different suppliers in a quarter, each with a different invoice price, freight share, octroi or state entry tax, and credit period.
  • Channel pricing is not uniform. The same SKU goes out to a modern trade buyer at one price, a sub-distributor at another, and a counter retailer at a third.
  • Schemes and rebates change net realisation. Volume schemes, quantity discounts, monthly turnover incentives, and year-end rebates change the realised price further, often booked weeks after the sale.
  • Annual P&L smooths everything. By year-end every layer has been collapsed into a single ₹40 L of gross margin number, hiding which 20% of SKUs actually lose money once costs are honestly allocated.

SKU-level margin tracking is the discipline of carrying every cost and every deduction back to the product line and the customer. It is unglamorous work, and it is the single highest-leverage MIS exercise a trader can run.

The data sources you must combine

No single system has all of this. Most BI tools connect to one and ignore the others. The result is a margin report that is technically correct on the data it sees and badly wrong as a business signal. KolossusAI reads all of the below as a single fabric and treats the SKU as the join key.

THE INPUT STREAMS
  • Purchase invoices from Tally. The base inward cost per SKU per supplier per consignment.
  • Freight and inward logistics bills. Often in a separate vendor or in an Excel maintained by the warehouse team. Apportioned across SKUs in the consignment.
  • Customs and entry tax records. Per-consignment overlays that need to attach to the right lot, not get lost in a generic overhead head.
  • Sales invoices from Tally or CRM. Gross sale value with line-item discounts visible at the point of sale.
  • Scheme and discount registers. Usually a Google Sheet that sales and finance jointly maintain. Volume schemes, channel rebates, and payment-term incentives that get knocked off later.
  • Stock ledger from your inventory module. How long each lot sat before moving, which is the input to carrying cost and obsolescence reserves.

Landed cost vs invoice cost

The most common SKU margin error in Indian trading is treating invoice cost as landed cost. A consignment of 500 units arrives at ₹100 invoice price per unit. The freight bill is ₹5,000, the inward octroi or state entry tax is ₹2,500, and there is ₹500 of breakage that the supplier did not credit. The true landed cost is ₹116 per unit, not ₹100. If you sell at ₹120, your real margin is ₹4 not ₹20. Across a year, this gap is the difference between a trader who knows they are profitable and a trader who finds out at year-end audit they are not.

The right approach allocates inward freight, duties, and adjustments per consignment, by either weight, value, or quantity, and writes the landed cost back to each lot. Every subsequent sale of that lot uses the lot-specific landed cost. This is straightforward in theory and tedious in practice, which is why most traders skip it. KolossusAI automates it - read the consignment, read the freight, run the allocation rule you choose, and surface the corrected landed cost in every margin view downstream.

Same SKU, same sales, different cost method, different decision.
AspectFIFOWeighted average
Cost basis used per saleOldest lot's landed cost firstBlended cost across all open lots
Behaviour in rising pricesLower cost, higher reported marginSmoothed cost, smoothed margin
Behaviour in falling pricesHigher cost, lower reported marginSmoothed cost, hides the trend
Audit and statutory comfortCleaner lot trail, harder to compute manuallyEasier to maintain in Tally, default for most
Best for SKU margin signalVolatile commodities, imports with FX swingsStable price categories, FMCG-style turn

Channel-wise and customer-wise margin

The same SKU goes to different channels at different prices and different incentive structures. Modern trade typically gets the lowest gross price but the highest tail of listing fees, returns, and slotting allowances. Distributors pay a wholesale price net of a channel margin and may additionally claim a quarterly volume scheme. Counter retailers pay closer to MRP but expect 90-day credit. The honest gross-to-net per SKU per channel can vary 8 to 15 percentage points across these three buckets.

A trader who sees only the company-wide P&L will conclude all three channels are profitable. A trader who runs SKU x customer x channel will often find that one or two large accounts are actually destroying margin and a quiet retail chain is the most profitable in the book. Plain English questions like 'show me net margin per SKU for the south modern trade channel this quarter, after all schemes' are the everyday output of the AI sitting on this data.

Stock turn and the cost of capital

A SKU that turns 12 times a year at 10% gross margin makes you more money than a SKU that turns twice a year at 18%. Both look like winners on a static margin report. The slow-mover is consuming working capital, warehouse space, and exposure to obsolescence that the fast-mover is not. Real SKU margin needs a capital cost overlay - usually the working capital interest rate times the average inventory value times the days held.

For Indian traders running on cash credit lines at 9 to 12% and dealing with tight festive-driven cycles, the capital cost adjustment changes which SKUs you push and which you quietly delist. Slow movers that look 18% profitable on paper may be 4% profitable after carrying cost, which is when you stop renewing the supplier order or you renegotiate credit terms with that supplier.

Why margin reports lie

Six common reasons SKU margin reports drift from reality. Each one is fixable individually. Fixing all six manually every month is a full-time job.

THE SIX QUIET DISTORTIONS
  • FIFO vs weighted average mismatch. Tally's accounting basis differs from the inventory module's physical issue, so the cost per unit on a margin report does not match the cost per unit at the warehouse.
  • Scheme expense booked to a generic overhead. The volume rebate that triggered on Customer X's Tower B order shows up as 'scheme expense' on the P&L, not as a deduction on Customer X's SKU-level margin.
  • Sales returns netted but cost not reversed. This month's sales line is reduced but the original cost of the returned lot stays at standard, inflating margin on the remaining sales.
  • Free goods and replacements treated as zero-zero. Real landed cost was incurred. Treating it as zero understates the true cost of acquiring the customer.
  • Inter-warehouse transfers at standard cost. Standard cost differs from actual landed cost of the lot moved. The receiving warehouse's margin view is wrong from day one.
  • Vendor credit notes posted to the wrong period. Credit arrives in March for a December consignment. The December margin overstates and the March margin gets a phantom boost.

The point of an AI layer is that the rules are encoded once during onboarding and applied consistently to every query thereafter, with the underlying source data one click away when finance wants to verify a number.

What live SKU margin looks like in practice

A working SKU margin view answers questions in seconds, not weeks. 'Top 20 loss-making SKUs in the south region after all discounts and capital cost.' 'Net margin trend per SKU for our top 10 customers over the last 6 months.' 'Which customers have improved or worsened on net realisation since we changed the scheme structure in March.' 'Compare the margin profile of imports versus domestic-sourced for the same product line.'

See AI Analytics for Indian Traders and Distributors for the full pattern, or talk to AI for Tally users if Tally is your main system. The 14-day POC validates that our SKU margin numbers match your internal reconciliation row for row before you commit.

FREQUENTLY ASKED

Questions readers actually ask.

How does FIFO vs weighted average impact SKU margin?

Tally typically maintains weighted average cost per stock item. Your physical FIFO discipline at the warehouse may issue older lots first, which had a different landed cost. Over a quarter the gap can be 2 to 6% of margin per SKU on volatile commodities. KolossusAI can compute margin under either method and show the gap, so you decide which one to use for management reporting versus statutory reporting. The lot-level allocation is the underpinning either way.

How are returns and scheme adjustments handled?

Sales returns reverse both the revenue and the original cost of the lot they came from, not the current landed cost. Schemes that pay out at quarter-end are accrued back to the SKUs they were earned on and shown in the margin view, not parked in a generic discount overhead. Free goods and replacements carry their actual landed cost into the margin calculation. All of this is encoded once during onboarding and applied consistently to every query.

Can it slice margin by channel or distributor?

Yes. SKU x customer x channel is the standard slicing pattern. The AI links the customer ledger in Tally to the channel tag in your CRM or master data, then carries the channel-specific scheme structure through to the net margin calculation. Plain English questions like "compare net margin per SKU between modern trade and traditional trade for the south region this quarter" work out of the box once the channel tagging is set up during onboarding.

How is slow-moving stock and capital cost factored in?

We add a capital cost overlay using your working capital rate (typically 9 to 12% for cash credit borrowers) times the average inventory value times the days held per lot. The number gets surfaced as a separate line in margin views so you can see SKUs that look profitable on paper but are eroding margin once the carrying cost is honest. For perishable or fashion-type SKUs we also overlay an obsolescence reserve based on age buckets you define.

What about composite SKUs or kits?

Kits and combo packs need a bill of materials so the landed cost rolls up from the constituent SKUs. We read the kit definition from your inventory module or from a BOM sheet during onboarding, and the AI computes kit margin as the sale price of the kit minus the rolled-up landed cost of components, after kit-level schemes. If you assemble kits in-house with packing labour, the assembly cost is added as a per-unit overhead.

How long until our trading team sees SKU-level margin live?

Two to three weeks for most traders running on Tally Prime plus an inventory module. Week one connects Tally, the inventory module, and the freight or scheme registers, then validates landed cost row by row against your existing reconciliation. Week two encodes the scheme structure, channel mapping, and capital cost rule. By week three the sales head and finance head are using SKU margin in their weekly review. See how the trading deployment works.