Business & tax

Inventory FIFO FEFO expiry and demand calculator

Simulate batch-level FIFO or FEFO stock issues, dated receipts, expiry losses and unfulfilled daily demand with exact quantity reconciliation.

Your numbers

One record per line. Commas separate cells; no thousands separators or quoted CSV. Dates use YYYY-MM-DD.

Calculated on your device. Your inputs aren’t sent to us.

Your result

Ready when you are

Enter your inputs and select Calculate.

Try it, understand it

Explore the result

Simulate batch-level FIFO or FEFO stock issues, dated receipts, expiry losses and unfulfilled daily demand with exact quantity reconciliation.

Worked example comparison
ExampleOutputWhat to notice
Worked exampleUnits fulfilled50 unitsWith five days of demand at ten units, the example batches can fulfill all fifty units under FEFO. Batch A is consumed before its expiry, leaving five units in batch B.
Compare a different assumptionUnits fulfilled50 unitsCompare the detailed table as well as the headline result. The changed assumption is explicit; other worked-example inputs stay fixed.

Check your understanding

What does the worked example demonstrate?

With five days of demand at ten units, the example batches can fulfill all fifty units under FEFO. Batch A is consumed before its expiry, leaving five units in batch B.

What is the important limit of this calculation?

Up to 100 batches and 366 days; fixed daily demand and no replenishment beyond entered receipts. No reorder recommendation, uncertain demand forecast, quality assessment or expiry safety approval.

Behind the numbers

How this calculation works

A batch can be present in the entered schedule without yet being available to issue. The simulation makes it available at the start of its receipt date. It remains usable through its entered expiry date and is moved to expired stock at the beginning of the next date.

THE FORMULADaily issue = available stock limited by demand, ordered by receipt date for FIFO or expiry date for FEFO

A worked example

With five days of demand at ten units, the example batches can fulfill all fifty units under FEFO. Batch A is consumed before its expiry, leaving five units in batch B.

Good to know

Up to 100 batches and 366 days; fixed daily demand and no replenishment beyond entered receipts. No reorder recommendation, uncertain demand forecast, quality assessment or expiry safety approval.

Receipt and expiry are separate dates

A batch can be present in the entered schedule without yet being available to issue. The simulation makes it available at the start of its receipt date. It remains usable through its entered expiry date and is moved to expired stock at the beginning of the next date.

These are explicit modelling conventions. Real quality or expiry rules must be checked separately. The calculator does not determine whether a product is safe to sell, dispense or consume.

The Cash denomination allocation with limited stock calculator is another stock-constrained problem, but it selects exact denomination values rather than issuing dated product batches. Expiry ordering requires the separate timeline used here.

Compare issue policies on the same demand

FIFO prioritizes the earliest receipt; FEFO prioritizes the nearest expiry. When two batches share a priority date, receipt date and then input order resolve the tie. Changing the policy leaves the entered receipts and demand unchanged.

The policy can affect how much stock expires even when total starting stock is identical. Supply more than one batch with different receipt and expiry ordering to inspect that difference rather than comparing two already identical rankings.

Reconcile every batch quantity

For each batch, original quantity is divided among sold, expired and remaining units. Future receipts are retained in the table but excluded from the ending received-stock metric. This avoids counting goods arriving after the simulation as available ending inventory.

Demand is a fixed whole-unit number each day, not a forecast. The model does not reorder stock or carry unmet demand into later sales. Unfulfilled units are reported separately, making the assumption visible instead of quietly treating later receipts as earlier fulfillment.

Work through the example

With five days of demand at ten units, the example batches can fulfill all fifty units under FEFO. Batch A is consumed before its expiry, leaving five units in batch B.

Use the worked table to trace where each input enters. Then change one assumption and calculate again, leaving the others fixed. A comparison is easier to interpret when the change has one identifiable cause rather than a different set of measurements, dates and rates all at once.

What this model does not establish

Up to 100 batches and 366 days; fixed daily demand and no replenishment beyond entered receipts. No reorder recommendation, uncertain demand forecast, quality assessment or expiry safety approval.

Keep the input assumptions with any exported result. Illustrative values do not become observations merely because the output is precise. For a real purchase, financial reconciliation or technical decision, check the underlying records and applicable requirements before treating this scenario as a final answer.

A few questions, answered

What formula does the calculator use?

Daily issue = available stock limited by demand, ordered by receipt date for FIFO or expiry date for FEFO

What should I verify before using this result?

Up to 100 batches and 366 days; fixed daily demand and no replenishment beyond entered receipts. No reorder recommendation, uncertain demand forecast, quality assessment or expiry safety approval.

Are the example inputs live records?

No. They are an illustrative calculation case. Replace them with records and measurements appropriate to your situation.

Find your calculator

Start typing to explore the library.