← All updates

2026-07-12 · The EQUOS team

First expired, first out

FIFO asks how long stock has been here. For anything with a date on it, that's the wrong question — what matters is how long it has left.

Most warehouses run on FIFO without ever deciding to. First in, first out is the natural order of things — new stock goes to the back, old stock gets picked from the front, and on average everything works out.

For anything with a date printed on it, “on average” is where the write-offs hide.

FIFO asks one question: how long has this been here? But shelf life doesn’t care when stock arrived — it cares when it expires. Two batches of the same product can land in the wrong order: the one that arrived last week might expire before the one that arrived yesterday, because it spent longer with the supplier, or came from an older production run, or sat in someone else’s warehouse first. Pick by arrival date and you’ll ship the long-dated batch while the short-dated one quietly runs out of time at the back of the rack.

The fix has a name: FEFO — first expired, first out. Pick whatever has the least life left, always.

Why the difference gets expensive

The gap between FIFO and FEFO looks small until you price it. It shows up in two places.

The first is the write-off you can see: stock that expired in your building while newer stock of the same product went out the door. Every one of those is a batch that could have shipped and didn’t, because nobody was asking the date question at pick time.

The second is quieter. Most retail and food-service customers won’t accept goods below a shelf-life threshold — a delivery arriving with 40% of its life left gets rejected at the dock, even though it’s months from expiry. So the deadline that matters isn’t the date on the carton. It’s the date minus your customer’s window, minus transit. A batch can be unsellable long before it’s expired, and a FIFO pick face has no way of knowing.

What FEFO actually requires

Not much — but each piece is load-bearing.

  • Dates at the batch level. One expiry field on the product record is a fiction; the truth lives per batch, per delivery. If two deliveries can carry two dates, your records need to hold both.
  • Capture on the way in. The date gets recorded once, at receiving, while the carton is in someone’s hands. Chasing dates later means climbing racking with a torch.
  • Picks that respect the date. Whoever — or whatever — decides which batch to pick has to see the dates and choose the shortest. If the pick list doesn’t know, the decision falls to whichever carton is nearest.
  • Room for exceptions. Real operations break the rule deliberately: short-dated stock goes to the quick-turn channel or the staff sale, long-dated stock goes to the customer with the strict window. That’s still FEFO — the discipline isn’t “never deviate”, it’s “never deviate by accident.”

A quiet test

Walk to your oldest-dated stock right now. If finding it takes a report, you have FEFO. If it takes a ladder and twenty minutes, you have FIFO and good intentions.

Batch-level dates are also how recalls stay small and traceability stays honest — the same records doing double duty. We’ve written about that side of it in breaking down bulk, and you can see how EQUOS keeps inventory at the batch level, dates included.