What counts as a FIFO exception?
A row is flagged only when an order that arrived earlier for the same SKU was still picked after it. The table below is the exact fixture the report's own test suite runs to confirm which row gets flagged, which one does not, and why.
Two orders, one SKU, one flagged row
| Row | Order | Received | Picked | Result |
|---|---|---|---|---|
| 2 | OLD-1 | 2026-01-01 | 2026-01-03 | no observation |
| 3 | NEW-1 | 2026-01-02 | 2026-01-02 12:00 | fifo-exception — picked before older row 2 |
Row 2 (OLD-1) arrived first but was not picked until the third of January. Row 3 (NEW-1) arrived a day later and was already picked by noon on the second — before OLD-1 ever left the shelf. NEW-1 is the row flagged, because it is the one that moved out of turn; OLD-1's own line stays clean.
The check runs per SKU: it only compares rows that share the same sku value, so ordinary variation in which SKU gets picked first never produces an observation. A row is also never compared against itself, and a SKU with only one row can never trigger this check regardless of its dates.
Open the checker and load the bundled worked example to see this exact case reported, or drop in your own pick log. Nothing you drop in leaves your browser.
This page explains the check's arithmetic, not warehouse operations or audit standards. It does not replace investigating each observation against your own system's records.
Common questions
What counts as a FIFO exception in a pick log?
A row is flagged when, for the same SKU, an order that arrived earlier was still picked after the order in that row — meaning a newer lot moved out first while older inventory of the same SKU sat waiting. The report names both the flagged row and the older row it was picked ahead of, so the physical pick can be checked against the log.
Does the older row also get flagged, since it was the one left waiting?
No. Only the row that jumped the queue is flagged, with a reference back to the older row it was picked ahead of. The older row's own line in the report stays clean unless it has a problem of its own, such as a missing field.
Does picking two different SKUs out of order ever count as an exception?
No. The comparison only runs within rows sharing the same SKU, so ordinary variation in which SKU gets picked when never produces a fifo-exception observation.