Operator reference

Amazon FBA FEFO Pricing

The seller-driven First-Expiry-First-Out pricing workflow for expiration-dated Amazon FBA inventory — what it is, the mechanics, and when to choose it over a Disposal Request.

Last reviewed·2026-05-28

Short version

FEFO pricing — First-Expiry-First-Out — is the seller-driven practice of discounting the soonest-expiring MSKU under a shared ASIN so that batch sells through before later-dated stock. The lever is the per-MSKU price submitted through the Amazon Listings Items API; the goal is to clear at-risk inventory through normal sales and avoid a Disposal Request entirely. FEFO pricing is the right play when residual margin remains positive at the discounted price.

What FEFO pricing is

Outside of Amazon, FEFO is a warehouse-floor convention: ship the soonest-expiring stock first. On Amazon FBA the seller does not control fulfillment sequencing — Amazon's commingled fulfillment may pick any unit under the same ASIN, including the latest-dated unit. The only lever the seller has is price.

FEFO pricing translates the warehouse-floor convention into a per-MSKU price difference. The seller assigns a unique MSKU to each expiration batch (the same per-MSKU model used for tracking — see FNSKU and MSKU expiration date tracking), then sets a lower price on the soonest-expiring MSKU. The cheaper offer wins the Buy Box, buyers see and order that batch first, and the at-risk inventory clears before its Unsellable by Date.

Why it matters in FBA

Without per-MSKU pricing, three failure modes compound:

  • Wrong-batch fulfillment. Amazon ships a later-dated unit when the soonest-expiring one was available. The soonest-expiring batch ages out and either FEFO-blocks or becomes a Disposal Request — both of which destroy margin that could have been salvaged at a small discount.
  • Lost sales at the wrong margin level. The seller eventually realizes the soonest-expiring batch is not clearing and panics — drops the price to liquidation territory across the whole ASIN. A measured FEFO discount, applied weeks earlier, would have cleared the batch at a much smaller margin hit.
  • Subscribe & Save churn. When the active MSKU runs out and there is no FEFO-sequenced successor, subscribers churn rather than rolling onto the next batch. See Subscribe and Save expiration risk.

How the mechanics work

  1. Identify the at-risk MSKU. The MSKU with the soonest Unsellable by Date under each ASIN. Sales velocity and remaining quantity determine whether a discount is sufficient to clear it.
  2. Set the discount. Start small. Watch velocity. Deepen the discount as runway shrinks. Tier the discount by date if multiple batches are at risk.
  3. Submit the price update. Per-MSKU through Listings Items API. Amazon processes the update.
  4. Monitor. Track velocity. If the at-risk MSKU is not clearing fast enough, increase the discount or shift to a scheduled Disposal Request — see Amazon FBA Removal Order expiration.
  5. Rotate. When the at-risk MSKU clears, restore its price to baseline and apply the FEFO discount to the new soonest-expiring MSKU.

A real-shaped example

A supplements seller has three MSKUs under one ASIN, all at a $19.95 baseline:

  • NUT-Q126-LOT12 — 587 units, Unsellable by Date Jan 24 2026.
  • NUT-Q226-LOT19 — 1,184 units, Unsellable by Date May 14 2026.
  • NUT-Q127-LOT04 — 1,742 units, Unsellable by Date Nov 22 2026.

ASIN-level velocity sits around 27 units a day. With no FEFO sequencing, Amazon's commingling fulfillment may pick any of the three for a given order — the January batch can sit while the November 2026 batch sells. The seller drops the January MSKU to $17.45 (a 12.5% cut) on December 1. At the lower price the January MSKU wins the Buy Box for most orders; its daily velocity climbs to about 23 units. Sell-through clears that batch over 26 days, finishing by December 26 — about four weeks ahead of Unsellable by Date.

The seller then restores the cleared MSKU's baseline price (so any residual is not still discounted) and applies the same 12.5% cut to the May 2026 batch, which is now the soonest-expiring.

The margin cost across the cleared 587 units was about $1,470 in foregone revenue at the discount. The path that doesn't do this: those same 587 units go FEFO-blocked at Unsellable by Date, the Disposal Request is filed, and the seller eats the cost basis plus the per-unit removal fee plus the carrying cost over the weeks the batch sat unsellable. FEFO pricing is the cheaper play whenever the velocity at the discounted price can clear the batch with runway to spare.

When to use FEFO pricing vs. a Disposal Request

FEFO pricing is the right call when:

  • The at-risk MSKU has at least 4–6 weeks of runway before Unsellable by Date.
  • The seller can hold a positive net margin at the discounted price.
  • Sales velocity at the discounted price will clear most or all of the batch.
  • The batch has no other quality issues (damaged packaging, recalled lot).

A scheduled Disposal Request is the right call when:

  • The runway is shorter than 4 weeks, or velocity at any positive-margin discount will not clear the batch.
  • The residual margin is negative at any saleable discount.
  • FEFO pricing has been on for 2+ weeks and the batch is not clearing fast enough.
  • The batch is part of a recalled or quality-flagged lot.

Common mistakes

  • Discounting at the ASIN level. A whole-ASIN price drop discounts every batch, including the still-good ones. The soonest-expiring batch sells faster but so do the latest-dated ones, which destroys margin on inventory that did not need a discount.
  • Discounting too late. Waiting until 7 days before Unsellable by Date means the discount has to be steep enough to move 200 units in a week. Earlier and smaller is almost always cheaper.
  • Forgetting to restore the price. After the at-risk MSKU clears, the discount stays in place. The cleared MSKU continues to sell at the discounted price even though it is no longer the at-risk batch.
  • Pricing the same on multiple at-risk batches. If two MSKUs share the same discounted price, Amazon's Buy Box rotation may favor either one. The soonest-expiring should be cheaper than the next-soonest by at least a small spread.

How Shelfdoc helps with FEFO pricing

  • Each ASIN with multiple mapped MSKUs gets a FEFO Pricing tab. The seller sets a discount in dollars or percent on the soonest-expiring MSKU.
  • The price update goes through SP-API (Listings Items). Amazon decides Buy Box assignment and listing-level acceptance.
  • When the discounted MSKU clears, the next-soonest MSKU automatically rotates into the discount slot if the seller opted into auto-rotation. The cleared MSKU's price restores to baseline so the residual doesn't keep selling at the discount.
  • An alert fires when the discounted batch's velocity at the current discount isn't enough to clear it before Unsellable by Date — the signal to deepen the discount or switch to a scheduled Disposal Request.

What Shelfdoc does not do

  • Shelfdoc does not pick the discount level. The seller decides what margin they'll trade for velocity.
  • Shelfdoc does not run Amazon advertising campaigns or Subscribe & Save discount rotations. Those are separate Amazon products with their own dashboards.
  • Shelfdoc does not appeal price-rule conflicts when an Amazon repricer overrides the FEFO submission. That's a Seller Central settings conversation, not an SP-API one.

Frequently asked questions

What is FEFO pricing on Amazon FBA?
FEFO stands for First-Expiry-First-Out. FEFO pricing is the seller-driven practice of discounting the soonest-expiring MSKU under a shared ASIN so that batch sells through before later-dated stock. The lever is per-MSKU price; the goal is to clear at-risk inventory through normal sales rather than through a Disposal Request. FEFO pricing is a software workflow, not a built-in Amazon feature.
Why does Amazon's commingling logic make FEFO pricing necessary?
When multiple MSKUs share an ASIN, Amazon's commingled fulfillment may pick any unit — including the latest-dated unit — for a given order. From the seller's perspective that means the soonest-expiring stock can sit while later-dated stock sells, which is the opposite of FEFO sequencing. Per-MSKU discounting via FEFO pricing forces the Buy Box to the soonest-expiring listing so buyers see and order that batch first.
When should a seller use FEFO pricing instead of a Disposal Request?
FEFO pricing is the right play when residual margin remains positive at the discounted price — typically when the soonest-expiring batch has at least 4-6 weeks of runway and the velocity at the discounted price will clear most of the batch before Unsellable by Date. Disposal Requests are the right play when the residual margin at any discount is negative, the runway is too short, or the seller has already tried discounting without sufficient velocity.
How does FEFO pricing actually update Amazon listings?
FEFO pricing changes the per-MSKU price through the Amazon Listings Items API. The seller (or Shelfdoc on the seller's behalf) submits a price update for the specific MSKU; Amazon processes the update and the new price becomes the seller's offer for that batch. The other MSKUs under the same ASIN retain their existing prices. Amazon controls Buy Box assignment, search ranking, and listing acceptance.
How big should the FEFO discount be?
There is no universal number; the discount is a sales-velocity question. The seller wants the soonest-expiring MSKU to win the Buy Box (or come close enough that Amazon's search rotation surfaces it) so buyers see and order it first. Start with a small discount — 5%, 10% — and watch velocity for a week. If the at-risk batch is not clearing, deepen the discount. Many operators tier the discount: the soonest-expiring MSKU gets the full discount, the next gets half, the rest stay at full price.
When the at-risk batch sells through, does Amazon restore the price?
No. Amazon stores whatever price the seller most recently submitted. When the soonest-expiring MSKU sells through and a new MSKU becomes the at-risk one, the seller (or Shelfdoc) needs to file a new price update — typically restoring the cleared MSKU to its baseline price and applying the FEFO discount to the new at-risk MSKU. Shelfdoc handles the rotation automatically if the seller opts into automated FEFO pricing.

Run FEFO pricing on every ASIN with multiple batches in FBA

Per-MSKU price updates submitted through the Amazon Selling Partner API. Automatic rotation as the at-risk batch clears. A timestamped audit trail for every change.

Create account