FEFO Explained: First Expired, First Out for Warehouses

FEFO (first expired, first out) explained for UK warehouses: FEFO vs FIFO and LIFO, expiry capture, picking, write-offs and recall readiness.

Índice

FEFO, or first expired, first out, is a picking rule that sends the stock with the earliest expiry or use-by date out of the warehouse first, whatever order it arrived in. For food, pharmaceutical and chemical stock, it is usually the right rule. A pallet received last week with a few days of life left should leave before one received last month with weeks to spare. FIFO gets you the same result only when every pallet arrived with the same shelf life, and that rarely holds once you handle more than one supplier. The Food Standards Agency sets the food safety framework that date marking sits within, and the government’s guidance on best-before and use-by dates explains what each label is meant to tell the buyer. If you supply retailers, the BRCGS standards will also shape how you record and rotate that stock.

FEFO only works when the date is captured correctly at goods in and the picking system applies it on every pick. Get either step wrong and the rule is decoration. This guide covers how FEFO compares with FIFO and LIFO, where each rule belongs, how expiry and batch data should be captured, how picking enforces the rule, how customer minimum shelf-life rules change the picks, how to handle write-offs, and what recall readiness looks like in practice.

What is FEFO, and how does it differ from FIFO and LIFO?

FEFO is a stock rotation rule that allocates the stock with the earliest expiry date first. FIFO allocates the oldest stock by when it was received, and LIFO allocates the most recently received stock first.

MétodoWhat it picks firstBest suited toMain risk
FIFO (first in, first out)Oldest stock by receipt dateStock with no expiry or use-by dateA fresh pallet can leave ahead of an older one with less life left
FEFO (primero en caducar, primero en salir)Earliest expiry, use-by or best-before dateFood, drink, pharmaceuticals and date-controlled chemicalsDepends on accurate dates captured at goods in
LIFO (last in, first out)Most recently received stockRarely right for date-controlled goodsOlder stock sits at the back and can age or expire unnoticed

In practice, FEFO and FIFO are not rivals. FEFO is FIFO applied to the date that matters. Where a product has no expiry, FIFO by receipt date is still a sensible default. Where it does, the expiry date is what protects the customer, so it has to drive the pick.

The word FIFO causes confusion in system settings. In Clarus, FIFO is based on the date the stock record was created, down to the millisecond. Expiry-first picking is a separate pick rule configured on the account. Check which one your system is actually applying before you assume a product is rotating correctly.

Our verdict: use FEFO for anything with a date, FIFO for everything else, and never let the two words stand in for each other in a system setting.

When should a warehouse use FEFO for food, pharmaceuticals and chemicals?

Use FEFO for any stock that carries a use-by or best-before date, which covers most food and drink, many pharmaceuticals, and chemicals with a defined shelf life. FIFO suits stock with no date control. LIFO is rarely the right choice for dated goods.

Food and drink

Food is where FEFO earns its keep. Under the date marking rules, a use-by date is a safety limit, and food should not be eaten, cooked or frozen after it. A best-before date describes quality, so the warehouse has a different decision to make. Many food and beverage operators pick the earliest date first, because it protects the retailer’s shelf life and avoids short-dated stock stranded at the back of a rack. The date labelling requirements sit in the Food Information Regulations 2014, and the government’s food labelling guidance covers how the dates should be read. Industry bodies such as the Institute of Food Science and Technology also publish date labelling material for practitioners.

Pharmaceuticals

Pharmaceutical stock is tracked by batch as well as by expiry. A recall or quality hold can apply to one batch and leave the rest of the product line untouched, so the batch record has to show which customer received which lot. Expiry still drives the pick, but batch control decides what can be sold at all. Check your quality system and your customer contracts before you set the rule, because they can require a particular batch or a minimum remaining life that goes beyond a simple FEFO sequence.

Chemicals and hazardous goods

Some chemicals degrade, lose potency or change over time, so they carry a shelf life or a retest date. For those, FEFO keeps the oldest usable stock moving. Hazardous goods also bring storage segregation rules, which the safety data sheets and your site’s risk assessments set out. FEFO decides the order of picking, but it does not replace those storage rules, and the two should be checked together.

How do you capture expiry dates and batch numbers at goods in?

Capture the expiry or best-before date and the batch or lot number at goods in, against each receipt, and take them from the label wherever you can. Without that data at the point of receipt, FEFO has nothing to sort on.

This is the step most FEFO problems trace back to. A pallet received with no date recorded will be picked as though it has no date at all, which means it can sit for months while newer stock ships first. Goods in is where the data should be captured, and the productos en curso de fabricación decides how much of it arrives right first time.

Many suppliers print the date and batch on a GS1 barcode label, so scanning the label is quicker and less error-prone than keying. Staff should still check the date on the label against the paperwork. A mis-keyed date is harder to spot later than a missing one, because it looks like valid data.

Clarus lets you choose which date controls apply, with the setting made at account level and overridable for individual products. When a product needs a batch or a sell-by date, the handheld screens ask for it. When it does not, those screens never appear, so operators are not slowed down by fields that mean nothing for that product. The detail sits in batch and lot control y seguimiento de las fechas de caducidad.

How does picking logic enforce FEFO on the warehouse floor?

A WMS enforces FEFO by allocating each order from the earliest-expiry stock first, so the pick instruction points the operator at the right pallet. The rule breaks down in bulk storage, where the oldest pallet is often at the back of the stack.

Allocation is where the rule either holds or fails. When an order is released, the system should check available stock and assign the earliest-expiry lines first, so the operator is told where to go and what to take. The shelf-life picking guide explains how that works in Clarus, and the stock rotation feature covers the wider set of rotation rules. For the basics of rotation before you look at software, read stock rotation 101.

Why bulk storage breaks the rule

Mathew Buttar, Head of Solutions at Clarus, has seen this failure on warehouse floors. His point, paraphrased: a sell-by pallet tucked into the back of a deep bulk stack is the oldest stock on paper and the hardest to reach. Getting to it can mean moving a stack of fifty pallets, so the rule quietly gets bypassed. His advice is to keep sell-by stock in accessible positions, pallet by pallet, rather than stacking it deep.

The practical fix is layout. Put date-controlled stock where operators can reach the front pallet without disturbing the rest, and reserve deep stacking for products where date order does not matter. A WMS can only pick the earliest pallet if the warehouse can physically get to it.

Our verdict: a racked, date-controlled pick face is where FEFO works cleanly. Bulk stock needs an accessibility rule, not a hope that operators will dig.

How do customer minimum shelf-life rules change picking?

A minimum shelf-life rule says a customer will only accept stock with at least a set amount of life left when it arrives. It turns FEFO from a sorting rule into a filter, so stock that fails the rule must not be allocated to that order at all.

The rule is simple to state but complicates picking. A retailer or distributor may refuse stock with less than a set number of days remaining, and several customers of the same 3PL can set different limits. The same pallet can be right for one order and wrong for another, so picking has to know which limit applies before it allocates.

There are two practical ways to handle this. The first is to filter allocation so that stock below an order’s minimum life is never offered for that order. The second is to keep stock in separate pick faces for each limit, which is simpler to follow on the floor but uses more space. Either way, agree the rule with the customer in writing, and record the remaining life at dispatch so you can prove you met it.

Before you set up a customer minimum life rule, check three things:

  • The rule is in writing. Get the limit and how it is measured, from receipt or from dispatch, agreed with the customer.
  • The receipt date is accurate. A minimum life measured from the wrong date will fail the customer’s checks.
  • Someone owns the exceptions. Decide who signs off when no stock meets the limit, and what happens to the order.

How should you handle write-offs when stock expires?

Expired stock should go on hold the day it is flagged, so it cannot be allocated, and the write-off should carry a reason code, the person who made it and the date. That record is what your auditor and your customer will ask for.

The simplest control is a hold. It removes the stock from allocation without destroying the record, so the stock can be counted, checked and written off properly. A hold should show why it was placed and who placed it, and release should be recorded the same way. Clarus shows hold reasons on the stock and in the transaction history, with the user and time for both the hold and the release.

Mathew Buttar told us in January 2026 that Clarus does not raise a warning when stock nears its expiry, so the process has to supply one. Check whether that has changed before you rely on it. Run a regular expiry report, have someone review it, and place stock on hold before it reaches its limit rather than after. Track the value written off alongside your other measures in warehouse KPIs, because a rising write-off figure usually points back to receiving, rotation or forecasting, not to the expiry itself.

How do you make FEFO recall-ready?

A recall-ready FEFO system can answer three questions within minutes: which batches are in stock, where each batch went, and which orders still hold it. Once those answers are known, the stock still in the warehouse should be placed on hold in one action, so nothing else can ship.

Mathew Buttar describes the sequence in the same terms. Identify what was sent to which customer, on which order and vehicle, provided that dispatch data was captured at the time. Place the remaining stock on hold from the stock list. Stop any picks that are already in progress, and reallocate the good stock to an order that is safe to send. The first step is often the one that gets skipped, and dispatch data that was never captured cannot be recovered in a crisis.

Food producers and their 3PLs feel this most. Los Campeys de Selby now carries out product recalls in under five minutes, and has secured BRC Double-A accreditation. The traceability side of that work is covered in food traceability software, and the batch fields that make it possible are the same ones described above.

Is FEFO worth setting up properly?

Yes, for any stock with a date. A correct FEFO setup reduces short-dated stock reaching customers, makes write-offs easier to explain, and turns a recall from a day of checking into a short, documented exercise. The cost is in the setup, not the software: accurate date capture at goods in, sensible storage layout and a clear rule for each customer.

If you are reviewing your rotation rules, start with the goods in process, then check how the picking rule behaves on your busiest product. That is usually where the gaps show.

Habla con un experto en almacenes

If you are working through how FEFO should apply across your products and customers, Clarus is worth a conversation. We work with food, pharmaceutical and 3PL operators to set up date control around the way they actually receive, store and ship stock.

Ponte en contacto con nuestro equipo para discutir tus requisitos.

Preguntas que quizá te estés planteando

Preguntas frecuentes

What does FEFO stand for in a warehouse?

FEFO stands for first expired, first out. It is a picking rule that allocates the stock with the earliest expiry, use-by or best-before date before any other stock of the same product.

Is FEFO the same as FIFO?

No. FIFO picks the oldest stock by receipt date, while FEFO picks the stock with the earliest expiry date. The two give the same result only when every pallet arrived with the same remaining shelf life. Many systems use the word FIFO for both, so check which rule your system is actually applying.

Do I need FEFO if my stock has no expiry date?

No. For stock with no date control, FIFO by receipt date is the sensible default. Decide the rule per product rather than across the whole warehouse, so dated and undated lines each get the right treatment.

How do best-before dates fit into FEFO picking?

A best-before date describes quality rather than safety, so the warehouse has more room in how it applies the rule. Many operators still pick the earliest date first, because it protects shelf life and reduces stranded stock. Your customer contracts may set a stricter rule than the legal minimum, and those contracts should drive the setting.

What should I check before I set up FEFO?

Check that expiry and batch data are captured at goods in, that the storage layout lets operators reach the earliest-dated pallet, that every customer’s minimum shelf-life rule is written down, and that a named person reviews expiry reports and approves write-offs. Those four checks catch most of the problems that FEFO setups run into.

¿Listo para simplificar las operaciones de su almacén?

Últimas perspectivas y tendencias.

Explore más artículos repletos de ideas prácticas, tendencias de la industria y resultados reales de equipos que utilizan sistemas modernos para adelantarse.

Types of Warehouse Management Systems Explained

The four main types of warehouse management system explained: standalone, supply chain, ERP and cloud. Find which type fits your operation.

Pharmaceutical Warehouse Management: GDP and WMS Guide

Pharmaceutical warehouse management in the UK: GDP rules, temperature ranges, batch and expiry control, recalls and what a WMS must do.

Fashion WMS: What an Apparel Warehouse Needs

A fashion WMS handles size and colour SKUs, returns grading and seasonal peaks. What apparel warehouses need, and how Clarus WMS fits.