Field guide · Master data

Unit-of-measure errors:
when one conversion field is wrong by a factor

A quantity error is wrong by an amount. A unit-of-measure error is wrong by a factor — which is why one mis-typed conversion field can move more inventory than a year of miscounting.

  • Updated
  • Written by WMSAudit
  • A Ravenspire LLC company
  • 10 min read

Short answer

A unit-of-measure error occurs when a WMS converts between eaches, cases and pallets using a conversion that does not match the physical product. Because the conversion multiplies, a single wrong field distorts every transaction for that item by the same factor — so a one-character setup mistake can create a larger on-hand error than months of miscounting.

What a unit-of-measure error is

A warehouse holds one physical thing and describes it in several units. A bottle is an each. Twelve bottles are a case. Forty cases are a pallet. The WMS stores a base unit — almost always the each — and a conversion table that turns every other unit into it. Every receipt, pick, move and count is converted through that table before it touches a balance.

A unit-of-measure error is any mismatch between that table and the physical product. The distinguishing property, and the reason this class of defect deserves its own treatment, is that the error multiplies. A miscount is wrong by however many units were miscounted. A wrong conversion is wrong by a ratio, applied to every quantity that passes through it, for as long as the field stays wrong.

That is why a single character in a single field can produce an inventory error larger than anything the floor could achieve by hand.

The conversion chain
Most items have at least three levels — EA, CS, PLT — and often four, when an inner pack or a layer sits between case and pallet. Each level is defined relative to the level below it, so an error at any level propagates upward. This is the detail most investigations miss: people check the case pack, find it correct, and stop.
Ordering, stocking and selling units
The unit you buy in is not always the unit you stock in, and neither is necessarily the unit you sell in. Where these are configured separately — commonly by different teams, at different times — the conversions between them are three more opportunities for a mismatch, and they are frequently not reviewed together.
Catch weight and variable pack
Items where the physical quantity per unit genuinely varies — produce, meat, cable, sheet goods — cannot be modelled by a fixed conversion at all. Where a fixed conversion has been applied anyway because the WMS required one, every transaction carries an error that is real but not a data-entry mistake.

A worked example: the pallet that skipped a level

An item is set up with a base unit of eaches. A case is 12 eaches. A pallet is 40 cases — so a pallet is 40 × 12 = 480 eaches.

Whoever configured the item entered the pallet conversion as 40 against the base unit rather than against the case. One field, one level skipped. The WMS now believes a pallet is 40 eaches.

A delivery of 6 full pallets arrives and is received by pallet licence plate — which is normal, correct, and exactly what the system is designed for.

Conversion table · receipt of 6 PLT Illustrative arithmetic
Correct unit-of-measure chain compared with the configured chain, and the resulting receipt
Level Physically As configured Effect
EA (base) 1 EA 1 EA Correct.
CS 12 EA 12 EA Correct — and this is the field everyone checks first.
PLT 40 CS = 480 EA 40 EA Defined against the base unit instead of the case. One level skipped.
Receipt posted 6 × 480 = 2,880 EA 6 × 40 = 240 EA The receiver scanned six pallets. Both numbers are the system's.
Variance 0 EA −2,640 EA Understated by a factor of 12 — the case level, missing.
Understatement on one delivery 2,640 EA · at a standard cost of $4.25/EA → $11,220 · from a single field

Three things about this example are worth carrying forward.

The error is a clean factor of 12, because exactly one level of a three-level chain was omitted. The ratio between what should have posted and what did post is the case pack itself. When a variance divides evenly into a conversion factor, the conversion chain is the first place to look — and the specific factor tells you which level is wrong.

It runs in the understating direction, which is the quieter of the two. Overstated inventory announces itself through short picks. Understated inventory looks like a healthy, cautious system: replenishment fires early, buyers order more, and the surplus is eventually discovered at a count and booked as a favourable variance that nobody questions. Understatement of this kind can survive far longer than the equivalent overstatement, and it funds real over-ordering the whole time.

Nobody made a mistake on the floor. The receiver scanned six pallet licence plates correctly. The system applied its own configured conversion faithfully. There is no transaction to correct and no one to retrain — which is precisely why this survives accuracy programmes aimed at people, and why it is invisible to any check that compares the system against itself.

Master data or execution? A test that separates them

Two very different faults produce quantities that look identical in an on-hand report. Telling them apart decides who owns the fix, and it can be done arithmetically without asking anyone what happened.

A master-data UOM error
The conversion table itself is wrong. Every transaction of that type, for that item, is wrong by the same factor, from a datable boundary, regardless of who processed it. The system did exactly what it was told; it was told the wrong thing.
A transactional execution error
The conversion table is right and a specific transaction used the wrong unit — a receiver selecting CS on a delivery that arrived loose, a count entered in cases against a location recorded in eaches. Individual rows are wrong, by varying factors, clustered by user, device or session rather than by date.

The ratio-of-ratios test

For every receipt of the item, compute one number:

posted base quantity ÷ (entered quantity × item-master conversion for the entered UOM)

If the WMS executed its own conversion faithfully, that expression equals 1.000 — by construction, because it is the system's own arithmetic checked against itself. So the distribution of that number across an item's receipt history answers the question directly.

1.000 on every row means the transactions all executed correctly against the table. The system is internally consistent, and if the on-hand balance is still wrong then the table is wrong. Confirm by comparing the conversion against a physical source — a packing slip, a vendor specification, a pallet weight — never against another system field.

1.000 on most rows and something else on a few means the table is being applied correctly and those specific rows were entered in the wrong unit. That is an execution finding, and it will concentrate by user, device, shift or vendor rather than by date.

The test is cheap, it runs over an export, and it is decisive in the common case. The one situation it cannot resolve on its own is a conversion that was corrected part-way through the history: rows before and after the change will both read 1.000 against whichever table version was live, which is exactly why the item master change log with effective dates has to be in the export alongside the transactions.

Symptoms and signals

UOM faults rarely arrive labelled as UOM faults. They arrive as one of these.

  • A variance that divides evenly into a conversion factor. Off by exactly 12×, 1/12, 24×, 40×. The strongest single tell, and it costs nothing to check.
  • Replenishment storms on an item that is physically well stocked. Classic understatement: the system believes the forward location and the reserve are both nearly empty, so it keeps generating tasks against stock that is already there.
  • Buyers ordering against a balance the warehouse can see is wrong. Understated on-hand drives real purchase orders for stock already on the floor, which is the expensive half of the fault.
  • Large favourable count variances that nobody investigates. Found inventory is investigated far less often than missing inventory, which is why understating errors persist.
  • Putaway suggesting far more or far fewer locations than the delivery physically needs. The system is sizing the putaway from a quantity that does not match the pallet in front of the operator.
  • Pallet weight or cube that does not match the item master. A pallet the master says weighs 240 lb and the dock scale says weighs 2,900 lb is a UOM error detectable without counting a single unit.
  • ASN quantity and posted quantity differing by a clean factor while the case count on the paperwork matches the physical delivery exactly.
  • An item whose behaviour changed on a specific date and has been wrong in the same direction ever since. Date boundaries are the signature of master-data change.
  • Persistent small rounding residue on items whose conversions are not whole numbers — a different fault, but it surfaces the same way.

Likely root causes

A level defined against the wrong parent
The example above. Pallet expressed in eaches rather than cases, or layer expressed in cases rather than inner packs. Produces a clean whole-number factor error and is the most common structural fault in multi-level chains.
A vendor pack change that never reached the item master
Packaging redesigns, plant transfers and private-label switches all change physical pack quantities. Where there is no process connecting a vendor catalogue update to the item master, the conversion silently becomes historical. Dated precisely by the first receipt that stops reconciling.
Ordering UOM and stocking UOM configured independently
Purchasing sets up the buying unit, the warehouse sets up the stocking unit, and nothing reconciles the two. The PO is right, the receipt is right, and the conversion between them is nobody's field.
A missing intermediate level
The product physically has an inner pack the system does not model, so operators receive or pick in a unit that does not exist in the table and substitute the nearest one. The resulting error is real but is recorded as an execution choice rather than a data gap.
Fractional conversions and rounding
Conversions stored with limited decimal precision, or a system that rounds at each conversion step rather than once at the end. Produces small, persistent, always-same-direction residue that accumulates instead of cancelling.
Catch-weight items forced into a fixed conversion
Where the physical quantity genuinely varies per unit, no fixed number is correct. The fault is a modelling decision rather than a typo, and the remedy is a different item configuration rather than a corrected field.
Item copied from a template
New items created by copying a similar existing item inherit that item's conversion chain. Where the pack differs, the new item is wrong from its first receipt — and because it was never changed, the change log is empty and the usual date-boundary evidence is missing.

How to diagnose it

Step 01

Take the ratio before anything else

System quantity divided by counted quantity. If the answer resembles a pack relationship — 12, 1/12, 24, 40, 0.5 — you are almost certainly in a conversion fault and can skip a full transaction replay. This is a ten-minute check that resolves a large share of cases outright.

Step 02

Print the entire conversion chain, not the case pack

Every level, and crucially which parent each level is defined against. The single most common reason a UOM investigation fails is that someone checked the case pack, found 12, confirmed 12 physically, and concluded the master data was fine. The fault was one level up.

Step 03

Run the ratio-of-ratios test across the item's receipts

Posted base quantity against entered quantity times the master conversion, for every receipt. All 1.000 points at master data; scattered exceptions point at execution. This separates the two ownership paths arithmetically rather than by discussion.

Step 04

Verify against something physical

A packing slip, a vendor specification sheet, a dock scale weight, a photograph of the pallet. The conversion must be checked against the world, not against another field in the same system — two system fields agreeing proves only that they were entered by the same person.

Step 05

Date the boundary

Read the item master change log. Find when the conversion last changed and who changed it. Receipts before the boundary reconcile and receipts after it do not — that contrast is the strongest evidence available, and it also bounds the quantity affected.

Step 06

Cross-check cube and weight

Independent physical attributes that should agree with the conversion. If the item master says a pallet is 40 eaches and also says a pallet weighs 2,900 lb while an each weighs 6 lb, the two statements are incompatible and the arithmetic says which one to distrust. This check finds UOM faults on items nobody has counted.

Step 07

Widen to the population

Take the signature — vendor, item class, creation date, the template the item was copied from, the level that was wrong — and run it across the catalogue. UOM faults arrive in batches, because they come from a single setup session, a single catalogue load or a single vendor change.

Step 08

Correct the table, then decide about history

Fix the conversion first. Then establish explicitly what your WMS does to historical balances when a conversion changes — restate, leave alone, or restate for some transaction types only. All three behaviours exist, and assuming the wrong one produces a second error on top of the first. Adjust the balance last, with the mechanism in the reason code.

Data and fields to inspect

  • Item master UOM table — every defined level, the quantity, and the parent unit each level is expressed against. A flat list of conversions without parents cannot answer the question.
  • Base UOM, ordering UOM, stocking UOM, selling UOM — as four separate fields, plus the conversions between them.
  • Case pack, inner pack, layer quantity, TI and HI — TI × HI × case pack should reproduce the pallet conversion. Where it does not, one of them is wrong and the disagreement itself is the finding.
  • Cube and weight per UOM — the independent physical cross-check, and the only field pair that can flag a UOM fault without a count.
  • Item master change log — field, old value, new value, effective date, user. Dates the boundary and bounds the exposure.
  • Item creation record — created date, created by, source template or catalogue load. Finds the batch an error arrived in.
  • Receipt transactionsquantity as entered, UOM as entered and converted base quantity as three separate fields. A single "received quantity" column makes the ratio-of-ratios test impossible and hides this whole class of fault.
  • PO and ASN lines — ordered UOM, ordered quantity, advised pack quantity, vendor item number.
  • Catch-weight and variable-pack flags — plus actual captured weights where the system records them.
  • Rounding and precision configuration — decimal places on conversions, and whether the system rounds per step or once.
  • Adjustment history for the item — to establish whether the balance has been corrected before, and at what interval.

Unit-of-measure error vs. case-pack error

These two are used interchangeably in most warehouses, and the substitution quietly narrows the investigation to one field.

A case-pack error is one specific unit-of-measure error: the number of eaches in a case is wrong. It is the most common single instance, which is why it has become the shorthand for the whole category.

A unit-of-measure error is the whole conversion chain — the case pack, the inner pack, the layer, the pallet, the relationship between ordering and stocking units, the precision of fractional conversions, and whether each level is expressed against the correct parent.

The practical cost of conflating them is exactly the failure in the worked example above. An investigator told "we think it's a case pack problem" checks the case pack, finds 12 eaches per case, confirms 12 physically, and closes the item as clean. The case pack was clean. The pallet conversion was wrong by a factor of 12, and it stayed wrong because the question asked was too narrow.

A useful habit: when anyone says case pack, ask which level. If the answer is "the case pack" again, print the whole chain. The chain takes thirty seconds to read and it either eliminates the category or finds the fault — and it is the only version of the check that can do the first of those honestly. Where the chain is clean and the balance is still wrong, the problem is elsewhere: start with the general discrepancy method, or with the receipt itself.

The operational takeaway

Unit-of-measure errors are multiplicative, which makes them the highest-leverage defect class in a warehouse dataset in both directions: enormously expensive to leave running, and unusually cheap to find, because the arithmetic gives them away.

Three checks do most of the work, and none requires a count. The ratio between system and physical quantity, which names the level that is wrong. The ratio-of-ratios across an item's receipts, which separates a master-data fault from an execution fault and therefore decides who owns it. And cube against weight, which finds conversion faults on items nobody has looked at.

Overstating conversions surface as phantom inventory and short picks. Understating ones surface as replenishment churn, over-ordering and favourable count variances — and last longer, because nobody investigates good news.