Free AuditEnterprise AIShelfSense
Back to Blog
PharmacyFeb 202612 min read

FEFO vs FIFO: Why Indian Pharmacies Must Switch in 2026

FIFO worked when every batch had the same expiry. It doesn't anymore. Why FEFO is now essential for Indian pharmacies and how to implement it.

The shelf arrangement that is quietly costing you lakhs

There is a rule every pharmacy helper learns on their first day: new stock goes behind old stock. It sounds responsible. It sounds like good inventory management. It even has an official name: FIFO, First In First Out. The batch you received first gets dispensed first. Simple, logical, and — for any pharmacy carrying medicines from multiple distributors with varying expiry dates — reliably wrong.

FIFO was designed for warehouses moving uniform goods where arrival order and consumption urgency are the same thing. Barrels of industrial solvent. Pallets of canned food with five-year shelf lives. Products where the date you received them is a reasonable proxy for the date they need to leave. Medicines are not that product. A pharmacy with 50 suppliers receiving the same molecule from three different manufacturers will routinely have batches on the same shelf where the stock received last week expires four months before the stock received two weeks ago. FIFO cannot see this. It does not have the data to see it. It just says: sell the older arrival first.

The alternative is FEFO: First Expiry, First Out. Dispense the batch that expires soonest, regardless of when it arrived. The difference between these two approaches is the difference between a clean Drug Inspector visit and a show-cause notice, between a distributor return processed on time and a write-off discovered three weeks after the return window closed.

If you are running a pharmacy in India in 2026, FIFO is no longer adequate.

Free Tool

Not sure how much you're losing to expiry?

Run a free inventory waste audit — find your bleeding SKUs in 60 seconds. No sign-up required.

Run free audit

FIFO vs FEFO: understanding the core difference

Both FIFO and FEFO are inventory rotation methods. They answer the same question: when a customer needs Amoxicillin 500mg and you have multiple batches on the shelf, which batch do you dispense?

FIFO answers: the batch you received first. If Batch A arrived on March 1 and Batch B arrived on March 15, dispense Batch A first.

FEFO answers: the batch that expires first. If Batch A expires in December 2026 and Batch B expires in August 2026, dispense Batch B first, even though it arrived two weeks later.

When you buy from a single supplier with consistent manufacturing schedules, FIFO and FEFO produce identical results. The batch manufactured first is the batch that expires first, and it is also the batch that arrives first. All three dates align. No conflict.

The moment you introduce a second supplier, a different manufacturer, a distributor clearing older stock through a trade scheme, or a production batch from a different facility, those dates diverge. And in Indian pharmaceutical retail, they diverge constantly.

Why FIFO fails in Indian pharmacies: five real scenarios

Scenario 1: Multiple distributors, same molecule

You stock Atorvastatin 10mg. Your primary distributor delivers 200 strips on April 1 with expiry September 2027 — manufactured recently, long shelf life. Your secondary distributor delivers 100 strips of the same molecule (different manufacturer) on April 10 with expiry January 2027 — manufactured months earlier, shorter remaining life.

Under FIFO, you dispense the April 1 delivery first because it arrived first. The April 10 delivery, which expires eight months sooner, sits behind it. By October 2026, you are still working through the September 2027 stock while the January 2027 stock has three months left. If demand slows — a prescribing doctor switches to Rosuvastatin, a generic competitor takes market share — that January 2027 batch expires on your shelf.

Under FEFO, you dispense the January 2027 batch first. It moves through the pipeline while it still has time. The September 2027 batch waits its turn, comfortably.

Scenario 2: Scheme-pushed short-dated stock

This is uniquely Indian and devastatingly common. A distributor offers a scheme: buy ₹15,000 of Brand X antibiotic, get ₹2,500 in free goods. The free goods arrive with 8 months of shelf life instead of the usual 18. Your existing stock of the same drug has 14 months remaining.

Under FIFO, the existing stock (received earlier) gets dispensed first. The scheme stock, with its shorter shelf life, sits behind it. Eight months is plenty of time — unless you already have four months of existing supply to work through first, and the scheme stock's distributor return window closes in five months. The maths collapses silently.

Under FEFO, the scheme stock goes to the dispensing position immediately because it expires sooner. It moves first. Problem solved before it becomes a problem.

Scenario 3: Same supplier, different production batches

Your regular distributor delivers Pantoprazole 40mg twice a month. The March 5 delivery carries expiry April 2027. The March 20 delivery, from a different production run, carries expiry February 2027 — two months earlier despite arriving two weeks later.

Under FIFO, the March 5 delivery (expiry April 2027) gets dispensed first. The March 20 delivery (expiry February 2027) waits. You are dispensing the longer-dated stock while the shorter-dated stock ages.

Scenario 4: Emergency inter-pharmacy transfers

A nearby pharmacy is closing. You purchase their remaining Metformin stock at a discount — 500 strips, expiry June 2026. Your existing Metformin stock expires March 2027. Under FIFO, your existing stock (received months ago) gets dispensed first. The transferred stock, with barely four months of life, sits behind nine months of existing supply. It will expire. Guaranteed.

Scenario 5: Seasonal demand drops

Cough and cold medicines purchased heavily in November for winter demand. By March, demand drops. You still have stock from November (expiry October 2026) and stock received in January (expiry April 2027). Under FIFO, the November stock moves first — fine. But if February's delivery introduced a batch expiring August 2026 (an older production run the distributor was clearing), FIFO would not catch it. FEFO would.

In every scenario, the pattern is the same: FIFO uses the wrong sorting key. Arrival date is a proxy for urgency, and it is an unreliable one. Expiry date is the actual urgency, and FEFO uses it directly.

The comparison table: FIFO vs FEFO across every dimension

DimensionFIFO (First In First Out)FEFO (First Expiry First Out)
**Sorting key**Date of receiptExpiry date
**Data required at receipt**Arrival date onlyBatch number + expiry date
**Works with single supplier**YesYes (identical results)
**Works with multiple suppliers**Fails when expiry dates divergeAlways correct
**Handles scheme stock**No — short-dated stock gets buriedYes — short-dated stock dispensed first
**Shelf arrangement**New stock behind old stockNearest-expiry stock in front, regardless of arrival
**Software requirement**Basic billing softwareBatch-level tracking with FEFO sequencing
**Staff training**MinimalOne session: check expiry, not arrival date
**CDSCO inspection readiness**Vulnerable to violationsStructurally compliant
**Distributor return recovery**Returns often discovered after window closesAlerts trigger before return window expires
**Typical expiry waste (pharmacy)**2-4% of inventory value annually0.5-1.5% of inventory value annually
**Accounting compatibility**FIFO accounting standardFEFO is operational; FIFO accounting unchanged

The last row is important: FEFO is an operational practice, not an accounting method. You can run FEFO on your shelves while maintaining FIFO-based inventory valuation in your books for GST and income tax. The two are not in conflict.

Regulatory reality: FSSAI and CDSCO in 2026

CDSCO and the Drugs and Cosmetics Act

The Drugs and Cosmetics Act, 1940 does not use the word FEFO. But Section 18(c) makes it an offence to stock or sell expired drugs. Rule 65 requires maintenance of records including batch numbers and expiry dates for all Schedule H and H1 transactions. The practical effect is this: if a Drug Inspector finds an expired batch on your shelf behind active stock of the same drug, it does not matter that you were following FIFO. The expired stock is the violation. The rotation method that led to it is your problem to explain.

Drug Inspectors in 2026 are increasingly checking not just for expired stock but for rotation patterns. They pull products from the back of shelves. They compare batch expiry dates across shelf positions. Finding a batch expiring in three months behind a batch expiring in fifteen months is not yet a standalone violation, but it is the kind of finding that converts a routine inspection into an extended one. It signals poor stock management, and inspectors follow that signal.

For Schedule H1 drugs — the most tightly regulated category — the consequences of expired stock include mandatory Form 29 destruction documentation, potential show-cause notices, and flags on your licence renewal. The penalty for a first offence ranges from ₹25,000 to ₹50,000. A second offence can initiate licence suspension proceedings.

FSSAI for pharmacies selling food supplements and nutraceuticals

Many pharmacies now stock protein powders, health drinks, vitamins, and nutraceutical products that fall under FSSAI jurisdiction. The Food Safety and Standards Act, 2006 requires that food products be sold within their shelf life, and FSSAI inspectors check expiry dates during their inspections. FSSAI's Food Safety and Standards (Licensing and Registration of Food Businesses) Regulations expect businesses to maintain proper stock rotation.

If you stock any FSSAI-regulated products alongside your pharmaceutical inventory, FEFO is not just good practice for those items — it is the only rotation method that reliably prevents expired food products from remaining on active shelves when batch dates vary.

The combined exposure

A pharmacy stocking both scheduled drugs and FSSAI-regulated supplements faces two separate regulatory frameworks, both of which penalise expired stock on shelves, and neither of which cares whether you were following FIFO. The only rotation method that structurally prevents the violation is the one that dispatches nearest-expiry stock first.

How to implement FEFO practically: the operational playbook

Switching from FIFO to FEFO is a habits change, not a technology revolution. It requires three things: accurate data at goods receipt, correct physical shelf arrangement, and a POS or billing system that enforces FEFO sequencing at dispensing.

Step 1: Fix goods receipt (Day 1)

Every item entering your pharmacy gets three data points recorded before it touches a shelf: product name, batch number, and expiry date. Not after. Not during next week's stock count. At the moment of receipt, from the invoice and the physical packaging.

This takes 10-15 seconds per line item. For a typical daily receiving of 40-60 line items, that is 8-12 additional minutes per day. The data captured here drives every downstream function: shelf arrangement, dispensing sequence, expiry alerts, and distributor return planning.

If your current billing software has batch number and expiry date fields during goods receipt — most do — use them. If those fields are optional and your staff skips them, make them mandatory. If your software does not support batch-level receipt, you need different software.

Step 2: Rearrange shelves by expiry, not arrival (Week 1)

This is the physical change. When placing stock on shelves:

  • Check the expiry date on the new stock
  • Check the expiry date on existing shelf stock
  • Place the stock with the nearest expiry date in the front dispensing position
  • Place longer-dated stock behind it

This reverses the default behaviour of most pharmacy helpers, who place new arrivals in front because it is faster. The retraining takes one session and one week of supervision. After that, it becomes automatic.

For your initial switchover, dedicate one day to reorganising your existing shelves. Start with Schedule H drugs — they carry the highest regulatory risk. Have a staff member go shelf by shelf, check expiry dates on all batches of each product, and rearrange so that the nearest-expiry batch is in the dispensing position. A pharmacy with 3,000 SKUs can complete this in 6-8 hours with two people.

Step 3: Enforce FEFO at the billing counter (Ongoing)

This is where technology matters. When a pharmacist selects a drug for dispensing, the billing system should:

  • Default to the earliest-expiring batch automatically
  • Display the batch number and expiry date being dispensed
  • Allow overrides only with a logged reason (patient request, damaged unit, etc.)
  • Deduct from the correct batch, not from aggregate inventory

Without this enforcement, FEFO relies entirely on human discipline. The pharmacist must remember to pick from the front position, the helper must have shelved correctly, and nobody must have disrupted the arrangement during the day. Human-only FEFO works about 70-80% of the time. System-enforced FEFO works 98%+ of the time. The difference between 80% and 98% is the difference between occasional expired stock discoveries and virtually none.

ShelfLifePro for Pharmacies was built specifically for this enforcement layer. When a pharmacist bills a drug, the system automatically selects the earliest-expiring batch. The batch number, expiry date, and remaining shelf life are displayed on every transaction. Overrides are logged. Expiry alerts fire at configurable intervals — 9 months, 6 months, 3 months — calibrated to your distributor return windows. The system does not rely on memory. It does the maths every time.

Step 4: Set up expiry alerts aligned to distributor return windows (Week 2)

The most expensive moment in pharmacy expiry management is not when stock expires. It is when the distributor return window closes with returnable stock still sitting on your shelf. Most distributors accept returns 3-6 months before expiry.

Configure alerts at three intervals:

  • First alert: 9 months before expiry. Awareness only. Flag slow-moving batches with this shelf life for monitoring.
  • Second alert: 6 months before expiry. Action alert. If the batch is slow-moving and the distributor return window opens at 6 months, initiate the return process now.
  • Third alert: 3 months before expiry. Urgent. If not returned, consider inter-pharmacy transfer, discounted sale to nearby clinics, or scheme-swap with other pharmacists.

These alerts are only possible with batch-level data. If your system tracks inventory at the SKU level ("you have 180 strips of Amoxicillin"), it cannot tell you that 80 of those strips expire in four months. Batch-level tracking is the prerequisite for meaningful expiry alerts.

Step 5: Train your team (One session, 2-3 hours)

Cover four things:

  • Why FEFO matters: show the maths. Take three products from your own shelves where the back stock expires before the front stock. Calculate the potential loss. Staff respond to specific rupee amounts from their own store, not abstract principles.
  • The shelving rule: nearest expiry in front, always. Demonstrate with actual products.
  • The billing rule: always dispense from the batch the system recommends. If the system says Batch X and the shelf position says Batch Y, check the shelf arrangement — someone made an error during stocking.
  • The alert response: when the system flags a near-expiry batch, what to do (return process, transfer, escalate to owner). Make this a documented procedure, not a judgement call.

The financial case: one pharmacy's numbers

Consider a mid-size pharmacy in a Tier 2 city doing ₹10 lakhs monthly revenue. Typical inventory at any given time: ₹6-8 lakhs at cost.

Under FIFO (current state):

  • Annual expiry write-offs: ₹1.5-2.5 lakhs (2-3% of inventory value)
  • Missed distributor returns (discovered after window): ₹40,000-60,000
  • Regulatory penalty risk per inspection: ₹25,000-50,000
  • Staff time on reactive expiry checks: 4-6 hours/week

Under FEFO (target state):

  • Annual expiry write-offs: ₹30,000-60,000 (0.5-1% of inventory value)
  • Missed distributor returns: near zero (alerts fire before windows close)
  • Regulatory penalty risk: minimal (structurally compliant rotation)
  • Staff time on proactive batch management: 2-3 hours/week (more efficient because directed by system)

Net annual saving: ₹1.5-2.5 lakhs. Against a software cost of ₹6,000-24,000 per year for batch-level FEFO tracking, the return is 6-40x. Even at the conservative end, this is a first-month payback.

Common objections and honest answers

"My staff will not follow FEFO. They barely follow FIFO."

This is the strongest objection and it is partially valid. FEFO requires marginally more discipline at shelving time (checking expiry dates instead of just placing stock). But the dispensing discipline is handled by the software, not the staff. If the billing system defaults to the earliest-expiring batch and the pharmacist accepts it, the operational FEFO outcome is achieved even if the shelf arrangement is imperfect. The software is the safety net.

"My billing software does not support batch-level tracking."

Then your billing software cannot protect you from the violations that batch-level tracking prevents. Most modern pharmacy billing systems in India now offer batch tracking as a feature. If yours does not, this is a system limitation that translates directly into financial and regulatory risk. ShelfLifePro provides batch-level FEFO tracking designed specifically for Indian pharmacies.

"I only have one distributor. FIFO works fine for me."

If your single distributor delivers only one production batch per product per delivery, yes, FIFO and FEFO are identical. But even single-distributor pharmacies receive mixed batches — the distributor consolidates from different manufacturer production runs. Check your last five deliveries of any common antibiotic. Count how many different expiry dates you received. If the answer is more than one, FIFO is not protecting you.

"FEFO is extra work."

FEFO is different work. The time spent recording batch data at receipt (10-15 seconds per item) and arranging shelves by expiry (10 seconds per item) is offset by the time not spent on reactive expiry checks, emergency return processing, and destruction documentation. Net time impact is roughly neutral. Net financial impact is strongly positive.

The 2026 reality

Indian pharmacy regulation is tightening. CDSCO inspection frequency is increasing. State Drug Control authorities are conducting more surprise visits. The Consumer Protection Act, 2019 gives patients direct legal recourse against pharmacies that sell expired or near-expiry products. GST input tax credit on expired stock write-offs is disallowed under Section 17(5) of the CGST Act — expired inventory is not just a loss on the product, it is a permanent loss of the tax credit you paid on purchase.

FIFO was adequate when pharmacies had 500 SKUs and one distributor. A modern Indian pharmacy with 3,000-4,000 SKUs, 5-7 distributors, and scheme-driven procurement needs a rotation method that matches the complexity of its supply chain. FEFO is that method. It is not new, not complicated, and not optional for much longer.

Switching to FEFO in 2026 means cleaner inspections, lower write-offs, and better distributor return recovery. The maths does not change if you ignore it — it just shows up as expired stock on your shelves and write-offs on your P&L.


ShelfLifePro's auto-FEFO POS is built for Indian pharmacies: batch-level tracking, automatic FEFO dispensing, configurable expiry alerts, and Schedule H/H1 compliance reporting. [See how it works for pharmacies](/pharmacy/) or [start your free trial today](/get-started/).

See what batch-level tracking actually looks like

ShelfLifePro tracks expiry by batch, automates FEFO rotation, and sends markdown alerts before stock expires. 14-day free trial, no credit card required.