E-Commerce Profit Margin Explained
Gross, contribution and net margin answer different questions. Channel fees, shipping and returns sit between list price and cash. Worked numbers included.
Profit margin is a family of ratios, not one number. E-commerce adds payment fees, outbound shipping, marketplace commissions, and returns between the price on the PDP and cash in the bank. If you only track “I doubled my cost,” you are using markup, and you will misprice ads and channels.
Margin = profit / selling price (for the profit definition you chose)
Markup = profit / cost
Use the profit margin calculator and the markup calculator so the two stay distinct.
Gross, contribution, and net
Gross margin (merchandise):
Gross profit = selling price − cost of goods sold (COGS)
Gross margin = gross profit / selling price
COGS should be landed: product, inbound freight, duties, packaging that leaves with the unit. A factory quote is not landed cost.
Contribution margin (what can pay for ads and overhead):
Contribution = selling price − COGS − variable selling costs
Variable selling costs typically include payment processing, outbound shipping you absorb, pick-and-pack that scales per order, estimated return/RTO cost, and channel fees.
Net margin is after rent, salaries, software, and other overhead allocated however finance allocates them. Useful for the company; noisy for SKU decisions. Do not use net margin as the denominator for break-even ROAS on a single campaign unless you know what you are doing.
| Layer | Question it answers | Typical use |
|---|---|---|
| Gross | Did we buy the unit right vs list price? | Buying, first price test |
| Contribution | Can this order pay for ads and still help? | Channel and SKU keep/kill |
| Net | Did the company make money this period? | Finance, not bid rules |
Channel fees
A D2C checkout and a marketplace settlement are different businesses at the same list price.
Use the marketplace fee calculator before you match a mall price. Referral percentage, fulfillment fees, storage, and ads on the platform all sit in contribution. Amazon listing work does not override the fee table.
Payment fees belong here too—see payment gateways. COD adds collection cost and rejection risk (COD vs prepaid).
Worked example (illustrative)
Suppose a SKU:
- List price: $60
- Landed COGS: $22
- Payment fee: 2% + $0.30 → $1.50
- Outbound shipping absorbed: $6
- Expected return cost (rate × reverse logistics): $3
- No marketplace
Gross profit = 60 − 22 = $38 → gross margin 63%.
Variable extras = 1.50 + 6 + 3 = $10.50
Contribution = 38 − 10.50 = $27.50 → contribution margin ≈ 46%
If the same SKU sells on a marketplace with a 15% referral fee ($9) and $8 fulfillment:
Contribution = 60 − 22 − 1.50 − 3 − 9 − 8 = $16.50 → ≈ 28%
(Assuming marketplace shipping is in the fulfillment fee and you do not also absorb D2C freight.)
The 63% gross number would have told you to bid as if you were rich. The 28% number is the one that sets a higher break-even ROAS (1 / 0.28 ≈ 3.6 on a simple model).
Pricing and ads
Price from landed cost and the channel stack, not from a competitor’s homepage. The selling price calculator helps invert a target margin.
Ads spend contribution. What Is ROAS? and CAC should use contribution, not gross. AOV without margin is vanity.
Shipping is often the silent margin killer—How E-Commerce Shipping Works.
Returns, COD, and the second trip
Gross margin on the outbound order is not the end of the story. If 12% of units come back, you did not keep 88% of contribution automatically: reverse freight, inspection, and unsellable units come out too.
A simple expected contribution:
Expected contribution ≈ (contribution if kept × keep rate) − (reverse cost × return rate)
COD refusal is the same shape with a higher return rate and often two legs of freight—see COD vs Prepaid Orders. If you report margin on “orders placed,” you will scale a SKU that only looks profitable at checkout.
Restocking fees (where lawful and disclosed) are a partial offset, not a reason to ignore the rate.
Overhead: what not to stuff into SKU margin
Do not allocate the founder’s salary and the annual theme fee into every SKU’s contribution unless you are doing a fully loaded cost model on purpose. That model is useful for “should this company exist.” It is noisy for “should we keep this colorway.”
Use contribution for SKU and channel keep/kill. Use net margin for the monthly P&L. Mixing them is how a high-overhead month becomes an argument to discount the only SKU that still contributes.
Apps and subscriptions are closer to overhead unless they scale per order (a pick-fee, a per-transaction SMS). Put per-order tools in variable costs.
A weekly margin habit
- Export last week’s orders with SKU, channel, discounts, shipping charged, refunds.
- Join landed cost and a fee table (payments, marketplace).
- Rank SKUs by contribution dollars, not by units.
- Delist or reprice the negative tail, or change the pack so dimensional weight drops.
The profit margin calculator is for a single ticket. The habit is the export. Before you open a catalog, this math belongs in What You Need Before You Open an Online Store and the start an online store guide. Margin is not a vibe. It is the list of costs you actually pay. Discounts belong in the same export: a week of 30% off can make a “healthy” category look broken until you split promo vs full price.
Key takeaways
- Gross margin is (price − product cost) / price. Contribution also subtracts variable selling costs. Net is after overhead.
- Marketplace and payment fees are not optional footnotes. They change whether a list price is viable.
- Markup is not margin. Mixing them up is a pricing error—see markup vs margin.
- Break-even ROAS and CAC limits should be computed from contribution, not from gross on the spreadsheet’s first row.
Frequently asked questions
Is a 50% margin good?+−
It depends which margin you mean and what the rest of the cost stack looks like. 50% gross can be negative contribution after shipping and ads. Compare to your channel’s fee and return profile, not to a round number.
Should shipping I charge the customer count as revenue?+−
For margin on the product, many operators look at merchandise contribution separately from shipping passthrough. If you profit on freight, include it; if you lose on freight, that loss is a variable cost. Be consistent with finance.
How do I handle returns in margin?+−
Use an expected return rate for the SKU or category: contribution × (1 − return rate) minus reverse-logistics cost. COD rejection is a related cash leak, not a ‘marketing’ problem only.
Related tools
- Profit Margin Calculator
Calculate gross profit and profit margin from revenue and cost. Use it before you set a selling price or judge a channel.
- Markup Calculator
Convert cost into a selling price using a markup percentage, and see the implied profit margin.
- Marketplace Fee Calculator
Estimate take-home after referral fees, closing fees and payment charges on a marketplace sale.
Related guides
- How to Start an Online Store
Start an online store from offer and unit economics through platform, catalog, payments, shipping and a launch checklist — without treating legal registration as a how-to.
- E-Commerce Product Page Guide
Build product pages that shoppers and search engines can use: media, specs, shipping and returns, related products, and SEO working with conversion — without invented reviews.
Related articles
- Markup vs Margin
Markup is the add-on over cost. Margin is profit as a share of selling price. Mixing them up is a common pricing error. Formulas and a conversion table.
- What Is ROAS?
ROAS is ad revenue divided by ad spend. Useful for media, incomplete for profit. Learn the formula, break-even ROAS from margin, and attribution limits.
- Amazon Product Listing Optimization
Amazon listings convert inside Amazon’s search and buy box. Titles, bullets, backend terms and fees matter. This is conversion work, not a scraping playbook.