Real net profit margin is what's left after subtracting every cost tied to selling a product — not just what you paid the supplier. The formula is: Net Profit = Revenue − (COGS + Shipping/Fulfillment + Payment Gateway Fees + Ad Spend/CPA + Refunds + Overhead). Divide that number by Revenue and multiply by 100 to get your Net Profit Margin %.
If you're only tracking COGS, you're not looking at profit — you're looking at markup. And markup lies to you.
Why COGS Is Only Step One
Most sellers calculate margin like this: sell a product for $50, it costs $20 to make or source, so that's a 60% margin. Feels great. Except that number ignores every dollar that leaves your account between "customer clicks buy" and "money actually settles in your bank."
Here's where profit quietly disappears:
- Payment gateway fees — Stripe and PayPal both charge roughly 2.9% + $0.30 per transaction. On a $50 order, that's $1.75 gone before you've shipped anything.
- Shipping and fulfillment — Even "free shipping" isn't free. You're absorbing $5-$15 per order, and if you're using 3PL fulfillment, pick-and-pack fees stack on top.
- Ad spend / CPA — This is the big one. A 50% gross margin product with a $18 blended CPA on a $50 order just lost 36% of revenue to acquisition cost alone.
- Refunds and returns — A 5-10% return rate isn't just lost revenue; you often eat the outbound shipping, the return shipping, and restocking labor, with zero product resold.
- Packaging materials — Boxes, inserts, tape, branded mailers. Small per-unit, but it adds up at volume.
- Overhead — Software subscriptions (Shopify/WooCommerce plans, apps), team wages, warehousing.
This is why a seller can run a "50% margin" store and still be losing money every month. The gross margin was never the real number — it was the starting number.
The Step-by-Step Math (The Actual Formula)
Here's the full breakdown, in the order costs typically hit:
- Step 1: Calculate Revenue
Total sale price collected from the customer, including any shipping charged to them. - Step 2: Subtract COGS
What you paid the supplier/manufacturer per unit, landed cost included (freight-in, customs, duties if applicable). - Step 3: Subtract Fulfillment & Shipping
Your outbound shipping cost + pick/pack fees + packaging materials, minus whatever the customer paid you for shipping (if anything). - Step 4: Subtract Payment Gateway Fees
Apply your processor's actual rate. For Stripe/PayPal standard: (Order value × 2.9%) + $0.30. - Step 5: Subtract Ad Spend (Allocated CPA)
Use blended CPA (total ad spend ÷ total orders), not last-click CPA, since blended reflects what you're actually paying across all channels. - Step 6: Subtract Refunds/Returns (Prorated)
Take your return rate (e.g., 8%) and factor the average loss per returned order (product cost + both-way shipping) across your total order volume. - Step 7: Subtract Overhead (Per-Unit Allocated)
Monthly fixed costs (software, staff, rent) ÷ monthly order volume = overhead cost per order. - Step 8: Net Profit Margin
Net Profit Margin % = (Net Profit ÷ Revenue) × 100
Running this manually across hundreds of SKUs and daily ad spend changes is exactly why the E-commerce Profit Calculator on this page exists — plug in your revenue, COGS, shipping, gateway fee rate, blended CPA, and return rate, and it outputs real net margin instantly instead of you rebuilding a spreadsheet every time a cost changes.
Gross Margin vs. Net Margin vs. Markup: A Real Example
These three terms get used interchangeably, and that's the single biggest source of miscalculated profit. Here's the same $50 product broken out three ways.
| Metric | Formula | Calculation | Result |
|---|---|---|---|
| Markup | (Price − COGS) ÷ COGS | ($50 − $20) ÷ $20 | 150% |
| Gross Margin | (Price − COGS) ÷ Price | ($50 − $20) ÷ $50 | 60% |
| Net Margin | (Price − All Costs) ÷ Price | ($50 − $20 COGS − $8 shipping − $1.75 gateway − $12 CPA − $2 refund allocation − $2 overhead) ÷ $50 | 8.5% |
Notice the gap: a 150% markup and a 60% gross margin collapse to 8.5% net margin once ad spend, fees, and returns enter the picture. That gap is where most eCommerce businesses quietly bleed cash while believing they're profitable.
Break-Even ROAS: The Number Most Sellers Get Wrong
Break-even ROAS tells you the minimum return on ad spend needed before you start losing money on every sale. The formula:
Break-Even ROAS = 1 ÷ Net Margin (excluding ad spend)
If your product has a 40% margin before ad spend is factored in, your break-even ROAS is 1 ÷ 0.40 = 2.5x. Anything below 2.5x ROAS on that product is a loss, even if the ad dashboard shows "positive" ROAS at 1.8x — because 1.8x still isn't covering your non-ad costs.
The common mistake: sellers set a "target ROAS" based on gut feeling (often 3x, because it sounds safe) without ever calculating their actual break-even point per SKU. Products with thinner margins need a higher ROAS floor; products with fatter margins can tolerate more aggressive, lower-ROAS scaling.
Troubleshooting: Edge Cases That Break the Standard Formula
Bulk or tiered discounts
Don't apply your standard margin to discounted units. Recalculate net margin at each discount tier separately — a 20%-off bulk deal can turn an 8% net margin product into a break-even or loss-making one if COGS and shipping stay fixed while revenue drops.
High return rates (10%+)
Don't just subtract the refunded revenue. You're also out the original outbound shipping, likely the return shipping, and the product may be unsellable (damaged, opened, out of season by the time it's back). Build a "true return cost" per unit: COGS + outbound shipping + return shipping + restocking labor, and multiply that by your return rate to get a per-order allocation across ALL orders, not just returned ones.
Free shipping offers
"Free shipping" doesn't remove the cost — it moves it from the customer's line item into your COGS-adjacent expenses. If you offer free shipping, your break-even price threshold needs to rise, or your product price needs to be padded, to absorb that $6-$12 you're now covering per order.
Sudden shipping rate increases
Carriers raise rates annually, sometimes mid-year with fuel surcharges. If you're pricing based on last year's shipping cost, you're overstating margin right now. Re-run your net margin calculation quarterly, not annually — shipping and gateway fee changes hit faster than most sellers update their spreadsheets.
Currency conversion / international orders
Add a 1-3% buffer for FX conversion fees if you're sourcing internationally or selling in multiple currencies — this is a silent cost most net margin calculations skip entirely.
The Weekly Habit That Actually Protects Your Margin
Net margin isn't a number you check once a quarter — CPA shifts weekly, return rates fluctuate by season, and gateway or shipping costs change without warning. Pull your blended CPA, return rate, and shipping cost every week, run them through the formula (or the calculator above), and track net margin as a trend line, not a snapshot. The stores that stay profitable are the ones that catch a margin slide in week two, not the ones that find out in the Q3 bank statement.
.webp)

0 Comments