All articles

Profit Analytics

The hidden costs eating your Amazon margins (and how to spot them)

Most Amazon sellers calculate margin as revenue minus COGS minus Amazon fees. That's wrong. Here are seven hidden costs that flip 'profitable' SKUs into losses.

SellerPulse Team 8 min read

Ask ten Amazon sellers how they calculate margin on a SKU and you’ll get this answer roughly ten times:

Revenue minus COGS minus Amazon’s fees.

That’s the formula every spreadsheet template uses. It’s the one Seller Central appears to suggest. And it’s wrong in a way that quietly bankrupts SKUs you think are winners.

The real cost stack has seven layers. Most sellers track two or three of them. The other four to five accumulate silently and only show up when you reconcile against your bank statement at year-end and wonder where the cash went.

22%
average gap between perceived margin and actual margin for FBA SKUs that don't track hidden costs
based on aggregated post-reconciliation analyses across mid-market sellers

This article walks through what’s missing from your margin math, in priority order from most-commonly-missed to most-frequently-tracked.

1. PPC spend allocated per SKU

The biggest miss. If you run Sponsored Products, Sponsored Brands, or Sponsored Display campaigns, your total ad spend is sitting in a single number in Campaign Manager — but each dollar of that spend was either driving conversions for a specific SKU, or being wasted on irrelevant clicks.

The mistake almost everyone makes: dividing total ad spend by total order count to get a “blended ACoS.” This averages a profitable SKU’s $1.20 ACoS against a loss-making SKU’s $4.80 ACoS, hiding the underlying truth.

What it should look like: per-SKU ad spend = (campaign-level spend) × (this SKU’s share of campaign attributed sales). Run that monthly, and you’ll find SKUs spending 40-60% of their gross margin on ads without anyone noticing.

2. Returns processing + restock fees

When a customer returns an item, you eat three costs that don’t appear on the order’s profit line:

  • Return shipping, which Amazon often (but not always) covers — when they don’t, it’s $4-8 per return
  • Restock fees of 20% on opened items returned within the return window
  • The fulfillment fee on the original outbound order, which is rarely refunded even when the item is returned in saleable condition

For categories with 10-15% return rates (apparel, electronics, beauty), this stack can wipe out 15-20% of gross margin per SKU. If you’re treating returns as “revenue reversed” without also reversing the embedded fees, you’re double-overstating profit.

3. Long-term storage fees (LTSF)

Amazon charges aging storage fees on inventory that sits 181+ days in their warehouses. The current rates are punitive:

Days in fulfillment centerStorage fee per cubic foot per month
0–180Standard ($0.78–$2.40)
181–365Standard + $0.50 surcharge
365+Standard + $6.90 surcharge

A single cubic foot of inventory sitting unsold for a year costs you over $90 in storage alone. Multiply by your slow-mover SKU count and the number gets ugly fast.

The mistake: treating storage fees as “overhead” rather than allocating them back to the specific SKUs incurring them. Slow movers should be subsidizing their own storage, not the rest of your catalog.

4. Inbound transportation

Getting product from your supplier or 3PL into an Amazon fulfillment center costs real money. Sea freight from China is $2,000–$4,000 per 40’ container right now. Domestic LTL into Amazon is $200–$600 per pallet. Amazon’s own Partnered Carrier program isn’t free — it’s just amortized across your shipment.

The mistake: lumping all inbound logistics into a single “shipping” line on your P&L without allocating per-unit. A SKU that ships heavy and slow has a much higher landed cost than a light, fast one — and your true margin reflects that.

Quick formula: landed cost per unit = (supplier price + inbound freight to your warehouse + outbound freight to Amazon) ÷ units per shipment.

5. FBA placement service fees (2024+)

Amazon introduced inbound placement fees in March 2024 that many sellers still aren’t tracking properly. If you ship to one Amazon warehouse and Amazon needs to redistribute to multiple regions to meet Prime delivery times, they charge you a placement fee per unit.

The fee varies by category and product dimensions but typically runs $0.30–$0.80 per unit. For a SKU shipping 500 units a month, that’s $150–$400 in fees that don’t appear on your fulfillment-fee report — they show up as a separate line item buried in your monthly statement.

6. Disposal and removal fees

The ones you actively initiate (sending old stock back to your 3PL, having Amazon dispose of unsellable inventory) are easy to track. The ones you don’t are harder: Amazon disposal of expired or damaged units at fees of $0.25–$0.50 per unit.

For health, beauty, and supplements with expiration dates, this fee compounds quickly when seasonality misses or restock timing slips. A single batch of 2,000 expired supplements is $500–$1,000 in disposal fees on top of the unrecovered COGS.

7. Software stack allocation

Every tool in your operations costs real money: SP-API connectors, analytics platforms, repricing software, listing optimizers, accounting tools. The mistake is treating them as fixed overhead instead of variable cost.

The right way: total monthly tooling spend ÷ active SKU count = software cost per SKU per month. A seller paying $800/month in tools across 200 active SKUs is paying $4/SKU/month — meaningful for low-margin SKUs.

What the corrected math looks like

For an FBA seller in the $1M–$5M revenue band, here’s what the gap typically looks like:

32%
Reported gross margin using the standard formula
25%
Actual margin after all 7 costs allocated
$210K
Hidden cost per year on $3M revenue (7-point spread)

The 7-point spread isn’t unusual. We’ve seen it run as wide as 12 points for sellers with high PPC spend and high returns categories. The good news: most of these costs are recoverable through better tracking, not just visible.

Once you know which SKUs are eating their own margin, you can fix them. Until you know, you'll keep restocking the losers and starving the winners.

What to do this week

  1. Pull the last 30 days of payments statement from Seller Central and identify every transaction type you don’t currently allocate
  2. Calculate true per-SKU ad spend for your top 20 SKUs by revenue — even a rough manual attribution will reveal surprises
  3. Reconcile inventory age against your storage fee invoice and identify which SKUs are subsidizing storage for others
  4. Rebuild your margin spreadsheet with all seven cost categories as separate columns, even if some are zero initially

You don’t need software to do this — it’s two hours of spreadsheet work the first month and 30 minutes per month after. But the first time you do it, you’ll find SKUs you’ve been losing money on for the better part of a year.

(If you’d rather have this run automatically on every order, that’s exactly what SellerPulse’s profit analytics module is built for. Flat $99/mo on the Pro plan; the savings on a single misidentified SKU usually pay for the year.)

The actionable summary

Hidden costWhere to find itTypical impact
Per-SKU PPC allocationSponsored Ads reports × order attribution5-15% of margin
Returns + restock feesCustomer Returns × Reimbursements3-10% of margin
Long-term storageStorage fee invoice × inventory age1-5% of margin
Inbound transportationFreight invoices ÷ units per shipment3-8% of margin
FBA placement feesPayments statement, post-March 20241-3% of margin
Disposal/removalRemoval Order Detail Report0.5-3% of margin
Software allocationTotal tool spend ÷ active SKU count0.5-2% of margin

Track all seven and the picture sharpens. Track only the first three (as most sellers do) and you’ll keep wondering why the bank balance never matches the spreadsheet.

Want this on autopilot?

SellerPulse automates the audit described above and many others — flat $99/mo on the Pro plan, not a commission. Start a 30-day free trial, no credit card required.