The complete guide to Amazon FBA fee reconciliation (2026)
Amazon settlements list 40+ fee types. Here is what each one means, how to match it back to orders, and how to recover the 3 to 8 percent of revenue most brands silently leak.
Most brands match 60 to 70 percent of those line items back to specific orders and book the rest as miscellaneous COGS. That bucket typically hides 3 to 8 percent of revenue in unrecognized cost. Proper reconciliation requires matching every fee line to an order, an SKU, or a period, and the matching keys are inconsistent across fee types. This guide explains the fee taxonomy, the matching strategy, and the operational fixes.
Why Amazon FBA reconciliation is hard
Amazon does not bill you. It deducts. Every 14 days, FBA sellers receive a net deposit and a settlement report. The report contains a long list of credits (sales, reimbursements) and debits (fees, refunds, advertising spend). Adding them up matches the deposit. The hard part is what comes next: figuring out which order, SKU, or inventory event each line is attached to.
Three properties of the report make this hard:
- Fee types are inconsistent in granularity. Referral fees are per order. FBA fulfillment fees are per unit. Monthly storage fees are aggregated across all SKUs for the period. Long-term storage fees are per SKU. Reimbursements are per claim ID. Each requires a different matching strategy.
- The matching keys are inconsistent across fee types. Some fees include the order ID, some include the SKU, some include both, and some include neither (the period-level fees). You cannot write a single JOIN and be done.
- The reports are append-only. A return that processes today affects a sale from 3 weeks ago. The reconciliation has to be rolling, not period-locked.
Brands that try to reconcile this in a spreadsheet typically match the easy 60 to 70 percent (referral fees on orders, FBA fulfillment fees on units) and dump the rest into an “Amazon Fees” bucket. That bucket is where the 3 to 8 percent margin distortion lives.
The Amazon fee taxonomy
For reconciliation purposes, every line in the settlement report falls into one of six categories. Each has its own matching strategy.
| Category | Examples | Match to | Frequency |
|---|---|---|---|
| Referral fees | Per-sale commission (typically 8 to 15 percent) | Order | Per sale |
| FBA fulfillment fees | Pick-pack-ship, size/weight tiered | Order + SKU | Per unit shipped |
| Storage fees | Monthly storage, long-term storage, aged-inventory surcharges, removals, disposals | SKU + period | Monthly + event |
| Returns and reimbursements | Return processing, customer refunds, lost-inventory credits, damaged-inventory credits, FBA overcharge reimbursements | Order + claim ID | Event-driven |
| Advertising | Sponsored Products (PPC), Sponsored Brands, Sponsored Display, DSP | Campaign + SKU (if treated as COGS) | Daily |
| Service fees | Multichannel fulfillment, FBA Liquidations, inbound shipping partner-carrier fees, label fees | Order or shipment | Per event |
The matching problem in detail
Order-level fees
Referral fees, FBA fulfillment fees, and most return-related fees carry an Amazon Order ID. These are the easy 60 to 70 percent. Match on order ID, allocate to the SKU(s) on that order, and book against the channel-specific COGS for the period the order was recognized (not the settlement period, which can be 14 to 21 days later).
SKU-level period fees
Monthly storage fees and aged-inventory surcharges are reported per SKU, but for a period (typically a month). Allocate to the SKU, accrue against the storage period, and surface as a per-SKU carrying cost. The reason this matters: a SKU that turns 8 times a year and a SKU that turns once a year have wildly different real margins once storage is allocated correctly. The slow SKU is subsidized by the fast one in a blended view.
Period-level fees
A few fees (account-level subscriptions, certain ad spend, the aged-inventory removal fees applied in aggregate) cannot be cleanly allocated to a single SKU. The correct approach is to either: (a) allocate pro-rata by revenue or unit volume, or (b) leave them as a channel-level fixed overhead. Whatever you choose, do it consistently and document it. The wrong move is to drop them into general overhead, which decouples the cost from the channel that incurred it.
Reimbursements
Amazon owes money for lost inventory, damaged inventory, FBA overcharges, and customer returns the seller credited but never received back. These post as positive line items in the settlement with a reimbursement claim ID. They should be reconciled against the original loss event: the lost-inventory adjustment, the damaged shipment, or the customer return. Brands that skip this leak in two ways. First, they fail to file claims for unreimbursed losses inside the 18-month window Amazon allows. Second, they fail to reconcile received reimbursements against the underlying loss, which means the loss stays on the books even after Amazon has paid for it.
The five fee categories most worth reconciling
In order of typical impact on a $10M to $50M FBA seller:
- FBA reimbursements. Most brands recover 0.5 to 1.5 percent of revenue here by simply filing claims they had already earned. Third-party services charge 15 to 25 percent contingency fees to do this, which tells you how meaningful the recovery is.
- Long-term storage fees and aged-inventory surcharges. Allocating these to the SKUs that triggered them surfaces the slow movers that are quietly losing money. The action is usually to run a removal order, liquidate, or discount aggressively before the next surcharge tier hits.
- Refund and return processing fees. High-return SKUs (apparel, beauty, electronics) carry a punishing fee on the customer return alone. Brands that do not allocate these per SKU cannot distinguish “high-margin SKU with high returns” from “low-margin SKU with low returns” in their data.
- Advertising spend. Treating PPC as an operating expense rather than COGS distorts contribution margin. The fix is to allocate ad spend per SKU (using campaign-to-SKU mapping in Amazon's reports) and treat it as channel-variable COGS.
- Inbound shipping fees. Amazon's partnered carrier program is convenient but pricier than DIY. Reconciling these per inbound shipment, allocated per SKU on the shipment, lets you compare partnered-carrier total cost against your 3PL or direct ship costs.
Common errors
- Booking the net deposit, not the gross. If you book only the deposit amount, you lose visibility into the gross revenue and the fee stack. The gross-up has to happen for the P&L to be useful.
- Recognizing revenue at the deposit date. Revenue should be recognized when the order ships (transfer of control), not when Amazon deposits 14 days later. The right pattern is to recognize revenue at ship date and hold an unsettled-payouts receivable that clears on deposit.
- Bundling all fees into one expense line. Loses the per-SKU and per-channel allocation. Defeats the purpose of reconciliation.
- Ignoring returns and reimbursements until year end.By the time you look, the claim window has closed on many losses and the trail on individual orders is cold. Reconciliation has to be settlement-period rolling, not annual.
How to operationalize
A working FBA fee reconciliation has four ingredients:
- An ingestion job that pulls the settlement report, inventory ledger, and orders report every 14 days (or daily, via the SP-API).
- A matching engine that joins each fee line to its target object (order, SKU, period, claim) and flags unmatched lines for review.
- An allocation policy for period-level and SKU-period fees (pro-rata by revenue, by units, or fixed).
- An exception queue for anomalies: unusually high fees on a SKU, unexpected reimbursements, fee types you have not mapped before. Most discrepancies surface here.
The free Finance Grader diagnostic quantifies how much your current setup is leaking on Amazon fee reconciliation alone, based on your stack and channel mix. Takes 8 to 15 seconds.
Frequently asked questions
Why does Amazon FBA fee reconciliation matter for D2C brands?
Amazon settlement reports list 40+ distinct fee types. Most brands match 60 to 70 percent of those line items back to specific orders and SKUs, then book the rest as miscellaneous COGS. That bucket typically hides 3 to 8 percent of revenue in unrecognized cost. At $20M revenue, that is $600K to $1.6M of margin distortion per year.
What are the main Amazon fee categories I should reconcile?
Five categories cover most of the work: referral fees (per sale), FBA fulfillment fees (per unit), storage fees (monthly, long-term, aged), returns and reimbursements, and advertising. A sixth (service fees, multichannel fulfillment, FBA Liquidations) matters only if you use those services.
Can I reconcile Amazon fees in QuickBooks or Xero?
Not at the line-item precision a multi-million-dollar seller needs. QuickBooks and Xero can ingest the net deposit and split it across a few accounts, but they cannot match individual fee lines back to orders, SKUs, or inventory events. Most brands end up dumping unmatched fees into a single Amazon Fees line, which destroys per-SKU margin accuracy.
How do FBA reimbursements work, and why are they missed?
Amazon owes money for lost inventory, damaged inventory, FBA overcharges, and customer returns it credited but never received back. Brands miss these in two ways: they fail to file claims for unreimbursed losses within Amazon's 18-month window, and they fail to reconcile claimed reimbursements against the underlying loss event. Both leaks compound.
What is the difference between FBA storage fees and aged-inventory surcharges?
Monthly storage fees are per cubic foot per month, tiered by season. Long-term storage fees kick in at 181 days (or 365 in some programs) and are punitive. Aged-inventory surcharges apply on top at specific age bands. A SKU that sat for 270 days incurs all three. Reconciliation has to allocate each to the SKU that triggered it.
How often should Amazon fees be reconciled?
Every settlement period (typically every 14 days). Waiting for month-end means stale data on 2 to 3 cycles at once, which is when discrepancies become hard to investigate (the underlying orders are weeks old, the trail goes cold). A continuous reconciliation system processes each settlement within hours of posting.
Related reading
- What is Multi-Channel P&L? for how Amazon reconciliation fits inside a full channel-level P&L
- Finance Grader (free diagnostic that quantifies your finance ops complexity in 8 to 15 seconds)
- How FynOS compares to Tally, Zoho, RazorpayX, NetSuite, SAP for D2C operators choosing between staying small, building custom, or going ERP
- See the product behind continuous multi-channel reconciliation