Decision software for grocery chains

Gross margin

Gross margin is gross profit — net sales less cost of goods sold — expressed as a share of net sales; it shows what selling the product earns before operating expenses.

Unit: %Tracking frequency: Weekly; monthly by category and storeHigher is better

Also calledgross profit margin, gross margin percentage, brüt kar marjı

Formula

(Net sales − Cost of goods sold) ÷ Net sales × 100
Net sales
Gross sales less returns, discounts and VAT.
Cost of goods sold (COGS)
Purchase cost of the items sold plus direct costs such as freight, customs and insurance that make them saleable.
Mark-up
The same gross profit divided by COGS: Gross profit ÷ COGS × 100.

Calculator

Enter your own figures and the result updates instantly. The defaults are the figures from the worked example below.

Result%38

Worked example

How to read it, and what good looks like

Margin and mark-up come from the same gross profit but divide it by different numbers. Margin divides by sales and mark-up by cost, so margin can never exceed 100% while mark-up can. When buying says "we put 50% on cost", the margin is 33.3%. The conversion is one line: Margin = Mark-up ÷ (1 + Mark-up). Price lists should state in the header which ratio they carry.

"What should gross margin be?" is answered by the cost base, not the sector. Add up rent, payroll and other operating costs as a share of net sales, add the target operating profit, and the result is the gross margin you need. Margins published by listed Turkish grocery chains give context: in 2025 results prepared under TMS 29, gross margin was 24.3% at Migros and 20.5% at ŞOK, and BİM's consolidated gross margin for the first half of 2026 was 19.1%. Cost definitions differ, so these are points of comparison, not targets.

Track margin weekly by category and store, and never average ratios: sum gross profit and net sales separately and divide at the end. In Mindpera, Mind Cost calculates gross, net and post-markdown margin on both weighted average and last purchase cost, and raises an alert to the pricing owner when last purchase cost breaches the threshold. Where cost data is scattered across the ERP and spreadsheets, installation brings it into a single model.

Reference values
ContextValueNote
Migros, 202524.3%2025 Integrated Annual Report; including TMS 29. 2024: 23.1%.
ŞOK, 202520.5%2025 Integrated Annual Report; including TMS 29. 2024: 18.3%.
BİM, consolidated (Turkey, Morocco, Egypt), January-June 202619.1%Q2 2026 activity report. Same period of the previous year: 19.0%.

Where it misleads

  • Freight, customs and insurance are left out of product cost, so margin looks several points higher and prices are set on that base.
  • Product margins are averaged: a slow seller with a high margin gets the same weight as a fast seller with a low one, and the total margin is inflated.
  • Initial margin (ticket price) and achieved margin (after markdowns, shrinkage and returns) are not separated, so the budget misses by the same amount every period.
  • Weighted average cost and last purchase cost are mixed; in an inflationary period the same product shows two different margins in two reports.

Data you need

  • Sales invoices and POS sales lines (excl. VAT, net of returns)
  • Weighted average cost and last purchase cost per product
  • Freight, customs and insurance invoices
  • Return and discount transactions

Mindpera products that calculate this KPI

Frequently asked questions

What should gross margin be?
There is no single right figure; the margin you need is worked back from your cost base. Add rent, payroll and other costs as a share of sales, then add the target operating profit. A chain whose costs run at 30% of sales and which targets 8% operating profit needs a 38% gross margin. Run the calculation separately for each category.
Does VAT go into the gross margin calculation?
No. Both net sales and cost of goods sold are taken excluding VAT. VAT is not the business's revenue but an amount collected on behalf of the state. A margin calculated on VAT-inclusive sales looks higher by the VAT rate and breaks comparisons between categories, especially where product groups carry different VAT rates.

Sources

  1. Migros 2025 Integrated Annual Report (KGK archive, Turkish) — 2025-12-31
  2. Şok Marketler, 2025 Integrated Annual Report (Turkish) — 2025-12-31
  3. BİM, Q2 2026 Activity Report (Turkish) — 2026-06-30

Track gross margin on your own data

Mindpera runs this calculation every day by product, branch and category; a value that crosses its threshold lands on its owner as a task.