All articles
FEFOExpirationBest Practices

What Is FEFO Inventory?

September 5, 20266 min readBy CountGrid Team
What Is FEFO Inventory?

Picture two identical boxes of the same product on the same shelf. One expires in three weeks, the other in eight months. The box in front — the one a busy person grabs — is the eight-month one. Nothing about this scene looks like a decision, and yet every day, in stock rooms and walk-ins everywhere, this exact choice gets made wrong.

FEFO exists to make that choice automatically. It stands for first-expired, first-out, and it is one of the simplest ideas in inventory: pick the stock whose expiration date comes soonest. This guide explains how FEFO works, how it differs from the more familiar FIFO, who actually needs it, and how to run it in the real world without reading date stickers all day.

What FEFO means

FEFO — first-expired, first-out — is a picking rule: when you take stock out of inventory, you take the unit or lot with the earliest expiration date first. Not the one that arrived first, not the one in front — the one that will go bad soonest.

The distinction sounds small until the shelf betrays you. Delivery order and expiration order are different sequences. A supplier sends a short-dated batch on Monday and a long-dated batch on Thursday; first-in-first-out picks Mondays box first only if someone noticed the dates — but the whole premise of this article is that people under pressure do not check dates. They check position.

FEFO removes position from the decision entirely. When dates live in the system, the system knows which lot expires first, and the pick points there by data instead of by shelf geometry. The person grabbing still grabs the front box — the difference is that the front box was placed there on purpose, because the system said so.

FEFO versus FIFO and LIFO

Three picking rules, and the differences matter:

FEFO — first-expired, first-out. Picks by expiration date. Required logic for anything with a shelf life: food, medical supplies, chemicals, reagents, adhesives, pharmaceuticals. The date is the constraint, so the date drives the order.

FIFO — first-in, first-out. Picks by arrival order. Perfect for non-expiring stock where aging matters for other reasons — wear, obsolescence, model revisions, packaging changes. FIFO is the default rule for durable goods, and for expiring goods it is a good approximation of FEFO — right up until a delivery arrives out of date order, which is exactly the scenario FIFO cannot see.

LIFO — last-in, first-out. Picks the newest stock. Mostly an accounting convention rather than an operational one; operationally it is usually a mistake for physical stock, because it ages the oldest inventory toward expiration or obsolescence on purpose.

The practical hierarchy: if it expires, FEFO. If it does not expire but ages, FIFO. LIFO is for accountants and spreadsheets, not shelves.

A common confusion worth clearing up: FEFO and FIFO are not rivals. On a well-run shelf they agree most days, because a good receiving process puts short-dated stock in front. FEFO is the rule that catches the days they disagree — the late short-dated delivery, the lot pulled from the back, the box returned from another location with a shorter date than everything around it.

Who needs FEFO

Any operation where stock has a shelf life written on it — which is more operations than expect:

  • Food and beverage. The classic case: rotation is the difference between serving and spoiling. Restaurants, cafes, caterers — anything with a walk-in needs date-based picking. See our restaurant industry page for the whole setup.
  • Medical and dental. Supplies, anesthetics, biologics, sterilization products — expiration here is a compliance issue as much as a financial one. Clinics track expiration at the lot level for exactly this reason; How to Track Medical Inventory by Lot Number covers that world in detail.
  • Veterinary practices. Vaccines and pharmaceuticals with real shelf lives and real regulatory attention — the veterinary page maps the workflow.
  • Labs and research. Reagents and chemicals where an expired lot does not just waste money, it silently corrupts results.
  • Anyone with adhesives, coatings, or batteries. Consumer-adjacent stock with quiet expiration dates that nobody prints on the receipt.

The test is simple: if the item has a date printed on it and that date passing makes it worthless, your picking rule should be FEFO.

What breaks FEFO in practice

FEFO as a concept is trivial. Implementations break for consistent reasons:

  • Dates live on the box, not in the system. If the expiration date is not captured at receiving, no view, alert, or pick list can see it. A date that is only physical is a countdown nobody watches — the root cause from How to Stop Inventory Expiring Before You Use It.
  • Picking is by habit, not by instruction. The system knows the soonest lot, but the picker grabs the front. FEFO only works when the pick list says which lot — and the shelf layout cooperates.
  • New stock gets shelved in front. Receiving is busy, so fresh deliveries go where there is space: the front. Every restock is a chance to violate FEFO unless putting-away includes rotation.
  • Nobody trusts the data. After a few wrong dates, the team reverts to reading stickers manually — which is slower than no system at all. Date accuracy at receiving is the whole foundation.

Every one of these is a process fix, not a math problem. Which is good news, because the fixes are cheap.

Running FEFO for real

Four habits make FEFO automatic rather than aspirational:

1. Capture dates at receiving

nThe moment stock arrives, the lot and its expiration date enter the system. Thirty seconds per delivery. Everything downstream — the expiry-first view, the alerts, the guided picks — is downstream of this habit.

2. Keep an expiry-first view

A sorted list — every lot, earliest date first — answers one question constantly: what should be used next? Reviewing it weekly turns expiration from a discovery into a plan. In CountGrid, expiration tracking keeps this view live from transaction data, so it is current without anyone maintaining it.

3. Put away with rotation

Receiving puts the earliest-dating lot in the most accessible position. The system decides which lot is next; the shelf layout makes the right choice the easy choice. Two seconds of thought at put-away replaces a scavenger hunt at pick time.

4. Let the pick point at the lot

When stock is issued, the system tells the picker which lot to take — the earliest date among what is available. The picker does not compare stickers; they follow the instruction. This is the step that makes FEFO effortless: the thinking happened once, at receiving, in calm conditions.

FEFO and counting

FEFO relies on the system knowing what lots exist where, and counts keep that mapping honest. Lot-level counts verify two things at once: quantity and date. A count that finds the right quantity with the wrong date — a lot record that says September when the box says June — is the error that would have routed the wrong box to the front. Cycle counting lots with stock counts catches date drift the same way it catches quantity drift: early, while the trail is warm. For the schedule, the same ABC logic from How Often Should You Count Inventory? applies, weighted toward short-dated stock.

How CountGrid runs FEFO

CountGrid builds FEFO into the picking flow rather than bolting it on. Expiration dates attach to lots at receiving; the expiry-first view ranks everything by what turns soonest; picks guided by the system point at the earliest-dated lot; and alerts with configurable lead times flag what needs attention before it becomes a write-off. Because every pick and count is a logged transaction in the ledger, the question of why did we use the June lot first has an answer with a timestamp and a name attached. For teams whose whole pain is expiring stock, the stop expiry surprises page walks the switch step by step.

Conclusion

FEFO is one sentence — pick the soonest-to-expire stock first — but making it real is four habits: capture dates at receiving, keep an expiry-first view, shelve with rotation, and let picks point at the right lot. Do those, and the front-of-shelf gamble disappears: the box in front is always the right box, because a system put it there. Start with your shortest-dated category this week — capture its dates, sort it first-expired-first, and watch the write-offs that never happen.

Frequently asked questions

Put it into practice.

Start free and see exactly what your team has — no spreadsheets, no heavyweight ERP.

Start Free