Skip to content
Pharmacy Software

FEFO vs FIFO in a Pharmacy: How to Stop Selling Near-Expiry Stock

Expired stock means direct money loss. Learn why FEFO (First Expired, First Out) beats FIFO for medicines, how to follow it at your counter, and how expiry tracking software makes it automatic.

FEFO vs FIFO in a Pharmacy: How to Stop Selling Near-Expiry Stock
4 min read Ashish Singh

Every chemist has faced it: you open a shelf during a stock check and find a strip that expired two months ago. The money is gone, and worse, the risk of handing expired medicine to a customer is real.

The cause is usually simple. The wrong stock rotation method was followed at the counter. In this article we explain FIFO and FEFO, why FEFO is the right choice for medicines, and how medicine expiry tracking software makes it automatic.

What is FIFO?

FIFO stands for First In, First Out. The stock you received first is sold first. It works well for products where age matters less than arrival date, such as stationery or packaged snacks with long shelf lives.

What is FEFO?

FEFO stands for First Expired, First Out. The batch that expires first is sold first, regardless of when it arrived. For medicines, this is the method that protects you.

Why FIFO fails in a medical store

Take an example. On 1 August you buy 100 strips of a medicine from Distributor A with expiry in December 2026. On 15 August you buy 100 strips of the same medicine from Distributor B, but these expire in October 2026, because that distributor cleared older stock.

Under FIFO, you would sell the August 1 batch first, since it arrived first. The October batch would sit at the back of the shelf and may expire unsold. Under FEFO, you sell the October batch first, and both batches get sold in time.

This happens all the time because:

  • Different suppliers send batches with very different expiry dates.
  • Schemes and bulk deals often come with shorter-dated stock.
  • Returns, replacements and free quantities arrive with mixed batches.

Arrival order tells you almost nothing about expiry order.

FIFO vs FEFO at a glance

PointFIFOFEFO
Sells firstOldest purchaseEarliest expiry
Best forNon-perishable general goodsMedicines, perishables
Expiry loss riskHigherLower
Needs batch expiry dataNoYes
Suits a pharmacyNot recommendedYes

The real cost of expired stock

Expired medicines cannot be sold. Distributors accept returns only within a window, usually a few months before expiry, so stock that crosses that window becomes a pure write-off. Even a small number of expired strips each month adds up to a significant loss across a year, and it directly eats into a margin that is already thin.

There is a compliance side too. Selling expired medicine can lead to action from the drug authorities and damages the trust you have built with local customers.

How to follow FEFO manually

If you do not use software yet, these habits help:

  1. Check expiry at purchase entry. Write or record batch and expiry for every item.
  2. Place new stock behind older-expiry stock. Sort the shelf by expiry, not by purchase date.
  3. Do a monthly expiry audit. Pull out everything expiring within 90 days.
  4. Return early. Send near-expiry stock back to the distributor while the return window is still open.
  5. Tell your counter staff. Everyone must pick the earliest-expiry strip first.

This works for a small store, but it depends on discipline and memory. When you stock thousands of items, human checking breaks down.

How software makes FEFO automatic

Good pharmacy software tracks every batch with its own expiry date and quantity. That unlocks several things:

  • Automatic batch suggestion at billing. When you add a medicine to the bill, the software picks the earliest-expiring batch with stock, so your staff do not have to think about it.
  • Expiry alerts. A dashboard shows what expires in 30, 60 and 90 days, so you can run discounts or return stock in time.
  • Expired stock blocking. The software can warn or stop you from billing an expired batch.
  • Return planning. Reports list near-expiry items by distributor, making returns quick.
  • Stock value at risk. You can see how much money is tied up in short-dated stock.

This is the core of any serious medicine expiry tracking software: batch-level data plus alerts, with no manual register.

What to look for in expiry tracking software

  • Batch-wise stock with expiry date and MRP per batch
  • Configurable alert windows (30, 60, 90 days)
  • Automatic earliest-expiry batch selection at billing
  • Expiry report by product, batch and supplier
  • Easy purchase return entry for near-expiry items
  • Warning on expired items during billing

If a tool only tracks total quantity per product and not per batch, it cannot do FEFO properly.

Practical tips to reduce expiry loss

  • Order smaller quantities of slow-moving medicines, even if a scheme looks tempting.
  • Ask distributors for longer-dated stock when you purchase.
  • Move near-expiry items to the front of the counter and tell staff to suggest them.
  • Review the expiry report on the same day every month.
  • Track which products repeatedly expire, then reduce or stop ordering them.

How Orvia helps

Orvia's pharmacy software tracks stock batch-wise with expiry dates, so your team can follow FEFO without extra effort. You get expiry visibility in one place, and billing stays fast at the counter. You can try it with your own medicines through the free trial.

Final thoughts

FIFO is fine for many businesses, but a medical store should follow FEFO, because expiry date, not arrival date, decides when stock must leave the shelf. Discipline helps, but software makes it reliable on a busy day. Set up batch and expiry tracking once, and you protect both your margin and your customers.

Want to see FEFO in action? Explore the Orvia pharmacy software or WhatsApp us on +91 7007761116.

Found this useful? The same thinking goes into the work we do.

Get a proposal
Start a project

Have a project that needs this kind of thinking?

Tell us where you are now and what you want to change. You will get a written scope, a timeline and a fixed price within 24 hours.

  • Written scope before any payment
  • Fixed price, no hourly surprises
  • You own the code and accounts
  • One named project manager

Get a free proposal in 24 hours

Leave your name and number. We will call you back.

Prefer to talk now?

+91 91225 05250

Mon – Sat, 10:00 AM – 7:00 PM IST