D2C ProfitCalculate My Profit

Contribution margin vs gross margin: which should you track?

Gross margin vs contribution margin for ecommerce, with a worked Amazon example of how fees and RTO shrink a healthy margin, plus margin vs markup.

Published 26 Oct 2026

Key takeaways

  • Gross margin subtracts only product cost; contribution margin subtracts every cost that comes with an order.
  • The same Amazon shirt shows a 61% gross margin but a 29% contribution margin per order — and less across a month, once RTO, returns and ads come in.
  • Use gross margin to screen products; use contribution margin to decide what to sell, where, and how much to spend on ads.
  • Margin ≠ markup: a 100% markup is only a 50% margin.

Gross margin is the number most sellers quote. Contribution margin is the one that tells you whether an order — or a product, or a channel — actually makes money. They can be miles apart, and the gap is where most ecommerce businesses quietly lose money.

The two definitions

  • Gross margin = (selling price − product cost) ÷ selling price. It only subtracts what the product costs you.
  • Contribution margin = (selling price − every cost that comes with the order) ÷ selling price. That means product cost plus shipping, packaging, marketplace commission and fees, payment charges — and, across a month, the cost of cancellations, RTO, returns and ads.

In both cases, use the selling price excluding GST: the GST in your price belongs to the government, not to you.

One order: the same shirt, two very different margins

Worked example

A ₹1,299 shirt sold on Amazon, costing ₹480 to make — the Ecommerce Margin Calculator's example.

Inputs

Selling price (incl. 5% GST)
₹1,299
Product cost
₹480
Shipping + packaging
₹85
Referral fee + closing fee
21% + ₹58

Result

Gross margin
61.2%
Contribution margin
28.6%
Profit per order
₹354.34

A 61% gross margin looks like a great product. But after the referral fee, closing fee and shipping, each order actually contributes 29% — and that's an order that gets delivered and kept.

Same gross margin, different contribution margin on every channel

Gross margin can't tell channels apart — the shirt costs the same to make wherever you sell it. Contribution margin can:

One ₹1,299 shirt onGross marginContribution marginProfit per order
Your own website61.2%52.2%₹646.16
Amazon61.2%28.6%₹354.34
Flipkart61.2%50.6%₹626.16

That's why channel decisions — and channel-specific pricing — have to be made on contribution margin. Your own website still has to pay to bring customers in, though, which is the next layer.

A whole month: where the rest goes

Across 300 orders a month, some cancel, some come back undelivered (RTO), some are returned, and you spend on ads to get them. Contribution margin counts all of that; gross margin counts none of it.

MeasureThis monthMargin
Gross profit (revenue − product cost)₹1,67,54561.2%
Contribution profit (after all variable costs and ads)₹40,34714.7%
Operating profit (after ₹15,000 fixed overhead)₹25,3479.3%

Net revenue ₹2,73,762 on 221 orders that were delivered and kept, after GST.

Which one should you track?

  • Gross margin for sourcing and pricing at a glance — is this product even worth considering?
  • Contribution margin for every decision about selling: which products to push, which channel to sell on, how much you can spend on ads, whether COD is worth it. If it's negative, selling more makes things worse.
  • Operating (net) profit for the business as a whole, once rent, salaries and software are paid.

What is a good profit margin for ecommerce?

There's no single good number, because a margin is only good if it covers what comes after it. Work backwards instead:

  • Gross margin has to leave room for shipping, packaging, fees, RTO, returns and ads. If those eat 40 paise of each rupee of revenue, a 40% gross margin leaves you nothing.
  • Contribution margin has to cover your fixed costs and leave a profit. If fixed overhead is 10% of revenue, a 10% contribution margin is break-even for the whole business.
  • Before ads, contribution margin sets the ROAS you need: 1 ÷ margin. A 25% margin needs a 4× ROAS just to break even — see break-even ROAS.

Margin is not markup

Markup divides profit by cost; margin divides it by price. Mixing them up is one of the most common pricing mistakes:

Markup on costGross margin
25%20.0%
50%33.3%
100%50.0%
200%66.7%

What to do with this

FAQ
What is the difference between gross margin and contribution margin?

Gross margin is (price − product cost) ÷ price. Contribution margin also subtracts every variable cost that comes with an order — shipping, packaging, marketplace fees, payment charges, RTO, returns and ads. Contribution margin is the one that shows whether an order makes money.

What is the gross margin formula?

Gross margin = (selling price excluding GST − product cost) ÷ selling price excluding GST. A ₹1,000 product (ex-GST) that costs ₹400 has a 60% gross margin.

Is gross profit the same as contribution margin?

No. Gross profit only subtracts product cost. Contribution margin subtracts all variable costs, so it's always lower — often much lower for COD-heavy Indian stores.

How do I convert markup to margin?

Margin = markup ÷ (1 + markup). A 50% markup is a 33% margin; a 100% markup is a 50% margin; a 200% markup is a 67% margin.

What is a good profit margin for an online store?

One that covers everything after it. Your contribution margin needs to pay your fixed costs and leave a profit, and your margin before ads sets the ROAS you need to break even. Work out yours with the Ecommerce Margin Calculator.