FIFO Inventory Method: Cost It, Pick It, Prove It (India)
The FIFO (first in, first out) inventory method charges the oldest cost to each sale first. India allows FIFO or weighted average, never last in, first out, and picking order is separate.
By Praveen Nune, Co-Founder & CEO · Updated 14 Oct 2026

Key takeaways
- The FIFO inventory method assigns the oldest purchase cost to each sale first. In India you may use FIFO or weighted average cost for interchangeable stock, and LIFO (last in, first out) is not permitted.
- Costing FIFO and picking FIFO are two settings. Costing sets profit and stock value. Picking sets which physical unit leaves the shelf.
- In our April model, FIFO differs from weighted average by 0.8% to 3% of cost of goods sold. We recommend one consistent method and landed cost in every layer; test the gap on your own highest-value items.
- Test your software's FIFO setting before trusting it: check layer costing, landed cost, returns, negative stock, ledger tie-out and picking order on a dummy item.
In this article
- 1What is the FIFO inventory method, and is it costing or picking?
- 2Which inventory cost formulas does India allow besides FIFO?
- 3How do you calculate the FIFO inventory method step by step?
- 4How much does FIFO change profit compared with weighted average?
- 5Where does first in, first out go wrong in real stock records?
- 6How do you run FIFO picking in the warehouse?
- 7How do you test that your software really costs on FIFO?
- 8Frequently asked questions
Ask three people in one business what FIFO (first in, first out) means and you may get three answers. The oldest stock leaves first, the oldest cost leaves first, or the oldest batch gets scanned first. Only the second is an accounting rule, and it can hold while the first is false.
That gap is why FIFO looks simple in a textbook and goes wrong in a stores room. Costing decides profit and the value of closing stock. Picking decides what reaches the customer and whether expiry dates are respected. Setting one in software does not set the other.
In our April model, the choice between FIFO and weighted average moved cost of goods sold (the purchase cost of the units sold) by at most ₹2,000. We reason that missing freight, mishandled returns and untracked layers can move it further.
Below: the rule, the example, a layer sheet to copy and six tests for your own system.
What is the FIFO inventory method, and is it costing or picking?
The FIFO inventory method is a cost formula: it assumes the units bought first are sold first, so the oldest purchase cost goes to cost of goods sold (COGS) and the newest costs stay in closing stock. It describes how cost is assigned, not which unit a picker lifts.
Three decisions hide behind the word:
| Decision | Question | Answer |
|---|---|---|
| Costing | Which purchase cost leaves with a sale? | FIFO or weighted average |
| Picking | Which physical unit is taken? | Oldest received (FIFO picking) |
| Expiry stock | Which lot is taken? | Earliest expiry first (FEFO, first expiry first out) |
Stock with expiry dates should follow FEFO, because the oldest lot received is not always the first to expire. Our guide to batch expiry software for FEFO covers that.
A warehouse can cost on FIFO while picking by FEFO, or pick on FIFO while the books use weighted average. Both work. Trouble starts when nobody knows which combination is in use.
Which inventory cost formulas does India allow besides FIFO?
As of October 2026, Indian standards allow two cost formulas for interchangeable stock: FIFO and weighted average. LIFO is not an option. Ind AS 2 (Indian Accounting Standard 2, Inventories) says cost is assigned by FIFO or weighted average, per paragraph 25 of Ind AS 2.
The rules to remember:
- Same formula for similar stock. Use one formula for all inventories of a similar nature and use. Different formulas are justified only for stock with a different nature or use.
- Specific identification for unique items. Items that are not ordinarily interchangeable, and goods segregated for specific projects, are costed at their individual cost. Serial-numbered equipment is the usual case.
- Companies not on Ind AS. They follow AS 2 (Accounting Standard 2), which also lists FIFO and weighted average.
- Tax computation. The Income-tax Act, 2025, in force since 1 April 2026, values inventory at the lower of cost and net realisable value (the expected selling price less selling costs), computed as per the Income Computation and Disclosure Standards (ICDS), under section 277 of the Act. ICDS II is the standard for inventories.
As of October 2026, ICDS II continues to apply under the Income-tax Act, 2025. The Government has announced a plan to merge ICDS into Ind AS from FY 2027-28, with details not yet finalised (see the Union Budget 2026-27 key features). Confirm the current text with your tax adviser when you file.
Some accounting packages still show LIFO in a drop-down. Do not choose it for books or tax in India.
How do you calculate the FIFO inventory method step by step?
To calculate FIFO, list every receipt as a cost layer, then take each sale from the oldest layer until it is used up, and move to the next. Total the layers consumed to get COGS. What remains is closing stock.
Our model: one item, April, rising prices. All rates in this model are landed cost, meaning purchase price plus freight and duty.
| Date | Event | Qty | Rate (₹) |
|---|---|---|---|
| 1 Apr | Opening stock | 50 | 180 |
| 5 Apr | Purchase | 100 | 200 |
| 8 Apr | Sale | 120 | |
| 12 Apr | Purchase | 150 | 220 |
| 18 Apr | Sale | 140 | |
| 22 Apr | Purchase | 100 | 240 |
| 28 Apr | Sale | 60 |
Goods available: 9,000 + 20,000 + 33,000 + 24,000 = ₹86,000 for 400 units.
Copy this layer sheet. One row per layer taken by a sale:
| Sale | Layer taken | Qty out | Rate (₹) | COGS (₹) |
|---|---|---|---|---|
| 8 Apr | Opening | 50 | 180 | 9,000 |
| 8 Apr | 5 Apr | 70 | 200 | 14,000 |
| 18 Apr | 5 Apr (30 left) | 30 | 200 | 6,000 |
| 18 Apr | 12 Apr | 110 | 220 | 24,200 |
| 28 Apr | 12 Apr (40 left) | 40 | 220 | 8,800 |
| 28 Apr | 22 Apr | 20 | 240 | 4,800 |
Sale COGS: 23,000 + 30,200 + 13,600 = ₹66,800. Closing stock: 80 units left from the 22 April layer at ₹240 = ₹19,200.
Check: 66,800 + 19,200 = 86,000, the goods available. If your sheet does not tie back, a layer is wrong. The formulas: COGS = sum of (qty taken from each layer × that layer's rate). Closing stock = sum of (qty left in each layer × that layer's rate).
How much does FIFO change profit compared with weighted average?
On the April data, FIFO gives the lowest COGS and the highest profit and stock value because prices rose. Weighted average cost lands 0.8% to 3% higher in COGS. Our calculation, same seven events:
| Method | COGS (₹) | Closing stock (₹) | COGS above FIFO |
|---|---|---|---|
| FIFO | 66,800 | 19,200 | n/a |
| Moving weighted average (recalculated after each receipt) | 67,359 | 18,641 | ₹559 (0.8%) |
| Periodic weighted average (₹86,000 ÷ 400 = ₹215 × 320 sold) | 68,800 | 17,200 | ₹2,000 (3.0%) |
The ₹2,000 gap shifts profit by ₹2,000, and tax follows at your own rate. If prices fall, the order reverses and FIFO shows the lower profit.
The gap grows with larger price moves, longer holding periods and more items. We recommend running your ten highest-value items through the layer sheet before choosing a method; for one item over a month the gap is small. Then keep the method you choose.
Where does first in, first out go wrong in real stock records?
FIFO goes wrong at four points: freight left out of the layer, returns costed at today's rate, sales posted before receipts, and tools that keep one average cost while labelling it FIFO.
- Missing landed cost. A layer at the invoice rate understates cost. Add freight, duty and non-recoverable taxes to each layer; our landed cost calculation guide gives the formula. In Arka Inventory we calculate landed cost per item, including shipping, duties, taxes and fees, so the unit cost behind each receipt reflects what the stock cost to bring in.
- Returns. A sales return should go back at the cost it left with, restoring its original layer. At today's rate, margin on the next sale is misstated.
- Negative stock. Selling before the receipt is posted forces the system to guess a cost. Post the goods receipt note on arrival, not at month end.
- Average cost in disguise. In one Shopify community thread, a merchant reports apps that show FIFO in reports but do not use it for accounting entries. Check the cost posted to the ledger, not the report.

How do you run FIFO picking in the warehouse?
FIFO picking works when every pallet and bin carries a receipt date, putaway places new stock behind old, and pick lists show the oldest stock first. Dated stock follows FEFO, taking the earliest expiry first, because the oldest lot received is not always the first to expire.
Where the shelf is manual:
- Write the receipt date on every carton at goods receipt.
- Put new stock behind old and restock from the front.
- Keep one bin per receipt date where bins are shared.
- Count a few bins weekly to catch misplaced stock; our cycle counting guide gives a schedule.
In our warehouse management, pallets are put away into bins and pick tickets name the bin to pick from. FIFO picking applies to items without expiry, and lot- or batch-enabled products are picked from the lots expiring first.

How do you test that your software really costs on FIFO?
Run these six tests on a dummy item before go-live, using the April data. Each has a clear pass and fail.
| Test | How to run it | Pass | Fail |
|---|---|---|---|
| Layer test | Load the 50-unit opening balance at ₹180, receive the three purchases, then sell 120, 140 and 60 | COGS ₹23,000, ₹30,200, ₹13,600 | Any other figure |
| Landed-cost test | Add ₹10 per unit freight to a receipt | That layer's rate rises ₹10 | Rate unchanged |
| Return test | Return 10 units sold from the oldest layer | They re-enter at the original rate | They enter at the latest rate |
| Negative-stock test | Sell 10 units before posting a receipt | Blocked or flagged | Costed at zero or silently averaged |
| Ledger tie-out | Compare the stock valuation report with the inventory account balance, and the COGS report with the COGS account, for the same period | Both differences are ₹0 | Any difference |
| Picking-order test | Receive two dated lots, then raise a pick | Oldest receipt, or earliest expiry for dated stock | Newest or random |
Use the picking-order and landed-cost tests in our 15-day free trial, which has full access to all features and needs no credit card, to see how Arka Inventory handles your items. Lot and serial tracking and landed cost are part of our Enterprise plan. As of October 2026, our Basic plan costs $199 a month and Advance $499 a month, both billed yearly, with extra users at $42 and $52 a month respectively (see pricing, shown in US dollars); Enterprise is priced on request. To see FIFO picking and lot-expiry picking on your own items, book a demo.
See FIFO picking and lot-expiry picking on your items
Frequently asked questions
Sources
- 1.Ind AS 2 Inventories, ICAI
- 2.Income Computation and Disclosure Standards, Income Tax Department
- 3.Inventory valuation under the Income-tax Act, 2025 (section 277), TaxGuru
- 4.Key Features of Budget 2026-27, Government of India
- 5.Arka Inventory pricing
- 6.Arka Inventory warehouse management
- 7.Arka Inventory landed cost
- 8.Shopify Community, Setting up FIFO?



