• Fixed fee
  • No logins, no VPN
  • Report in 10 business days

Your WMS is confidently wrong.

Every distribution center runs on numbers it can't fully trust. Receiving variances get written off. Adjustments get posted and never explained. The system says 48, the slot has 12, and nobody can tell you why. We find the errors, trace them to the process that created them, and hand you the list.

Book a 20-minute call See what's covered

One analyst, end to end.
Mutual NDA before anything moves.

Receiving variance — exception detail Sample output
Receiving variance exception detail — an illustrative sample of five lines
Item Vendor Book Floor Delta Root cause
418802 VN-2140 288 336 +48 Case pack 12 in master, ships 14
553119 VN-0876 150 150 +150 Receipt posted twice, 4 min apart
207744 VN-2140 96 72 −24 Short ship, no claim filed
881350 VN-1592 440 400 −40 UOM mismatch, each vs inner
319028 VN-0876 60 0 −60 Putaway to unmapped location

Illustrative example. Your report shows your items, your vendors, and a dollar figure against every line.

02What we do

What the audit actually does.

Three things, in this order: find the errors, explain them, and put a dollar figure against each one. Finding them is the easy part. Most of what you are paying for is the second and the third.

  1. Stage 01

    Find

    Five numbers describe every receipt: what the purchase order ordered, what the ASN advised, what the receiver counted, what posted to the system, and what ended up in the location. Those five should agree. We line them up and record every place they don't, with the sign of the gap, its size, its vendor, its item, and its date.

    That produces a list of exceptions. On its own it is not worth paying for — your system can already generate a variance report. The list is raw material, not a finding.

    • Ordered against advised against received against putaway, line by line
    • Signed variance grouped by vendor, by item, and by receiver
    • Over, short, damaged and substituted kept separate, not netted
    • On-hand by location against the last count and the last adjustment
  2. Stage 02

    Explain

    A variance is a symptom. The work is reading its signature, and the signature tells you which mechanism produced it.

    A gap that repeats at the same size on every receipt from one vendor is a field in your item master, not a receiving problem. A quantity that appears twice within a few minutes is a posting error, usually a scanner retry or an interface that replayed. Gaps that swing in both directions with no pattern are a counting discipline problem, and no master data fix will touch them. A shortage that never generated a claim is a gap in the handoff to accounts payable, not a warehouse error at all.

    Same exception list, four different mechanisms, four different owners. Sorting them is the part that needs someone who has worked a dock, because the pattern is obvious once you have seen it and invisible until you have.

  3. Stage 03

    Price

    Every finding gets annualised. Units multiplied by your cost, or minutes multiplied by your labor rate, times the frequency we actually observed in your own data. Not an industry benchmark, not a percentage lifted from a white paper.

    That figure is what puts the findings in order, and the order is usually a surprise. The most expensive error is rarely the most alarming one. A quiet two-unit discrepancy on a fast-moving item, repeating on every receipt for three years, costs more than a dramatic one-off that everybody remembers.

What the audit does not do

Nothing gets installed, nothing gets configured, and no changes are made in your system. The audit is read-only by construction — we work from extracts, so there is no mechanism by which it could alter anything.

It is also not the front half of something longer. There is no phase two waiting at the end of the report, and no implementation quote attached to it. You get the findings and the fix list, and what you do with them is your business.

03Why it costs you

An overage is not free product.

Most operations chase shortages because shortages feel like theft. But an overage is the more expensive error, because it quietly inflates the number your entire operation plans against — and the bill arrives weeks later, somewhere else.

  1. Step 01

    Bad receipt

    A case pack, a double scan, or a UOM mismatch posts the wrong quantity.

  2. Step 02

    Inflated on-hand

    The system now believes you have stock that never came off the trailer.

  3. Step 03

    Phantom inventory

    Replenishment doesn't trigger. Buyers don't reorder. The gap compounds.

  4. Step 04

    Empty slot

    A picker walks to the location, finds nothing, and burns the labor anyway.

  5. Step 05

    Short to customer

    You miss a fill rate you were told you'd hit, and eat the chargeback.

Why it survives so long

Every step in that chain is owned by a different person, and each one looks like a local problem to whoever owns it. Receiving sees a paperwork discrepancy. Replenishment sees a demand blip. The picker sees an empty slot and reports a count error. Customer service sees a fill rate miss and a chargeback.

Nobody is looking at the whole run, because no single report spans it. The error is invisible precisely because it crosses five departments — and it keeps producing cost until somebody reads it end to end.

Case pack exposure — your numbers Arithmetic only · nothing stored
Error per case +2 units
Overstated per year 5,200 units
Annual exposure

$21,840

One field, one vendor, on one item. The audit finds every field like it.

This is one wrong number on one item. An item master holds thousands of them, and a case pack error posts on every receipt until somebody corrects the field.

04What we audit

Eight places the numbers go wrong.

The audit starts at receiving because that's where most bad data is born. It doesn't stop there — anything in the system that feeds a decision is fair game, and the findings decide how far it goes.

01 / Receiving

Vendor variance

ASN against PO against what actually got counted. Over, short, and damaged, by vendor and by item, with the pattern behind each.

  • Signed variance by vendor, item and receiver
  • Recurring same-size deltas, which point at master data
  • Duplicate postings within a short window
  • Shortages that warranted a claim and never got one
02 / Item master

Pack and UOM integrity

Case packs, inner packs, conversion factors, dimensions. One wrong number here generates variance on every receipt for years.

  • Pack fields against the ratios your receipts actually show
  • Conversion factors that don't reconcile to their own units
  • Dimensions and weights against pallet and cube capacity
  • Pack fields left blank, set to zero, or defaulted to one
03 / Locations

Coordinates and mapping

Location IDs that don't match the physical coordinate, unmapped and orphaned locations, stale pick faces, and capacity that doesn't reflect what actually fits.

  • Location IDs that don't resolve to a physical coordinate
  • Orphaned and unmapped locations still holding on-hand
  • Pick faces for items no longer slotted there
  • Capacity fields against what the location really holds
04 / Putaway

Directed putaway logic

The rules deciding where stock lands, and where they misfire: velocity and zone assignments that no longer match demand, rules overridden every shift, product routed to locations it shouldn't reach.

  • Directed location against where the pallet actually went
  • Override frequency by user and by shift
  • Velocity and zone assignments against current demand
  • Product routed outside its permitted zones
05 / Segregation

Chemical and hazmat proximity

Your segregation rules checked against where the system currently has product slotted: incompatible classes in adjacent or stacked locations, and items with no hazard class assigned at all.

  • Items carrying no hazard class assignment
  • Incompatible classes in adjacent locations
  • Incompatible classes stacked vertically
  • Your separation distances against actual slotting
06 / Adjustments

Count and write-off history

Who adjusts, how often, in which direction, and whether cycle counting is fixing the problem or quietly absorbing it.

  • Adjustment volume and direction by user
  • Reason code distribution, and blank reason codes
  • Items adjusted repeatedly in the same direction
  • Count results against the adjustment that followed
07 / Interfaces

Failed and stuck transactions

Error logs, dropped messages, and everything that silently didn't post between your WMS and the systems around it.

  • Failed and stuck messages by interface and by type
  • Transactions that errored and were never reposted
  • Quantity mismatches between systems for one event
  • Gaps in sequence numbers and timestamps
08 / Anything else

What the data points to

Findings drive the scope. If the numbers lead somewhere we didn't plan to look, that goes in the report too.

  • Follow-on checks the first pass makes obvious
  • Anything upstream that turns out to be the real cause

05Method

How a number becomes a finding.

Five tests. An anomaly that can't pass all five isn't a finding, and doesn't get written up as one.

  1. Test 01

    It disagrees

    Two records that should say the same thing don't, or a record disagrees with the physical result. This is the cheap part and it produces far more hits than belong in a report.

  2. Test 02

    It has a shape

    One-off discrepancies are noise. What matters is whether the disagreement recurs, and how: same size every time, same vendor, same item, same shift, same user, same direction. The shape is what separates a mistake from a mechanism.

  3. Test 03

    The cause is named

    Not a category — a specific field, rule, or step. "Item master issue" is not a cause. "The case pack field on these forty-one items is set to the inner pack quantity" is a cause, because somebody can go and look at it, and somebody can go and fix it.

  4. Test 04

    Somebody owns it

    Every finding is assigned to whoever can actually resolve it, split into what your team can change on their own and what needs your software vendor or your supplier. A finding nobody can act on is trivia.

  5. Test 05

    It has a number

    Annual cost, calculated from your own volumes and your own rates, using the frequency observed in your data. This is what lets you rank the list and decide where to stop.

What gets cut

Plenty of anomalies don't survive test three. When the data shows something real but the mechanism can't be pinned down from extracts alone, it goes in an appendix as an open question, described plainly, rather than into the body dressed up as a finding.

A report padded with unexplained variances is a variance report. You can already run one of those, and it is not what you would be paying for.

06The exchange

What you send, and what comes back.

Both halves are written down before anything starts, so nobody is guessing what they owe the other and there is no scope drift to argue about later.

Inbound

What you send

A written data request naming the exact reports and fields. Most of it is standard output your team can export without opening an IT ticket.

Receiving
PO header and line detail, ASN records, receipt transactions. Twelve months where you have it.
Item master
Item, description, case pack, inner pack, UOM conversions, dimensions, weights.
Locations
Location master with zone, type, coordinate, capacity and current assignment.
Inventory
On-hand by item and location, as of a stated date and time.
Adjustments
Adjustment transactions with user, reason code, quantity, direction and date.
Interfaces
Error and exception logs from the WMS and from whatever it exchanges data with.
Segregation
Your hazard class assignments and your incompatibility matrix, if segregation is in scope.

CSV or Excel is fine. No live connection, no credentials, no software installed. A read-only reporting login works too, but is never required.

Outbound

What comes back

A document your team can act on without you in the room, and the working behind it so they can check rather than trust.

Summary
Every finding on one page, ranked by annual dollar impact.
Findings
One page each: what the data shows, the mechanism behind it, the annual figure, the fix and its owner.
Evidence
The records behind each finding, so your team can verify it independently.
Queries
The logic used to produce each check, so you can re-run it yourself next quarter.
Open questions
Anomalies the extracts couldn't explain, stated as unresolved rather than padded into findings.
Readout
Sixty minutes, with whoever you want in the room.

Delivered as a document plus the working files. Yours to circulate internally however you like.

Data request — field detail

Receiving

Purchase order header and line detail. ASN or inbound advice records where your vendors send them. Receipt transactions with quantity received, date, time and receiving user. Twelve months where you have it, three at minimum.

Item master

Item number, description, unit of measure, case pack, inner pack, any conversion factors, and dimensions and weights where they are populated. Blank fields matter as much as wrong ones, so send the whole extract rather than a filtered one.

Locations

Location master with the identifier, zone, type, physical coordinate, capacity, and the item currently assigned. Include locations you believe are inactive: orphaned locations holding on-hand are one of the more common findings.

Inventory and adjustments

On-hand by item and location as of a single stated timestamp, and the adjustment transaction log with user, reason code, quantity, direction and date over the same period as the receiving extract.

Interfaces

Error and exception logs from the WMS and from each system it exchanges inventory or receipt data with. Raw logs are fine; they do not need cleaning up first.

Format

CSV or Excel, one file per extract, headers in the first row. Nothing needs to be joined, deduplicated or tidied before it is sent — reconciling them is the work.

07The engagement

One fixed fee. No project plan required.

You send read-only data extracts. No login, no VPN, no IT project, no consultants on your floor for six weeks. What comes back is a document your team can act on without you. Every audit is run end to end by one analyst — no juniors, no offshore team, no handoffs.

  • 01Every finding ranked by annual dollar impact, not by severity label
  • 02The root cause behind each one, traced to a process or a field
  • 03A fix list split into what your team can do and what needs your vendor
  • 04The queries used, so you can re-run the check yourself next quarter
  • 05A 60-minute readout call with whoever you want in the room
Specification Rev. 2026-07
Fee

$1,500$2,500

Quoted and fixed before any work starts. Scope drives the number, not hours.

Turnaround

10 business days

From the day extracts land.

Your effort

About 2 hours

One scoping call, one data pull, one readout.

Systems

Any of them

Manhattan, Blue Yonder, Körber, Infor, D365, NetSuite, or homegrown. It's a data problem, not a platform problem.

08Before you ask

The questions everyone asks first.

01 We already cycle count

Cycle counting measures the symptom. It tells you a location is off and lets you correct it, but it doesn't tell you which vendor, which item master field, or which process step keeps producing the error. If counts keep finding the same items, the count isn't the fix.

02 Couldn't our IT team do this?

Technically yes. In practice they're carrying a backlog, and pulling the data is the easy half. The hard half is knowing that a recurring +48 on one vendor means a case pack error rather than a receiving problem. That judgment comes from the floor, not the database.

03 Do you need access to our system?

No credentials, no VPN, no software installed. I send a written data request naming the exact reports and fields I need. Most of it is standard output your team can export without opening an IT ticket. A read-only reporting login works too, but is never required. Mutual NDA before anything moves.

04 How do you price it?

Scope sets the number, and the number is fixed before any work starts. What moves it is how many of the eight areas are in play, how many facilities, and how clean the extracts arrive. None of that is billed by the hour, so an audit that turns out to be harder than expected costs you the same as one that doesn't.

If the scoping call suggests the work sits outside the range, you hear that on the call rather than in an invoice.

05 What if our data is a mess?

That's the normal case, and it's the reason the audit is worth running. Missing fields, inconsistent codes and half-finished migrations are findings in themselves — the gaps tell you as much as the numbers do.

The one thing that genuinely limits the work is data that doesn't exist at all: if adjustments were never logged with a user or a reason code, no amount of analysis will reconstruct who made them. Where that happens, the report says so plainly rather than guessing.

06 Can you check our chemical segregation?

Yes, with one important limit. You supply your segregation rules — hazard classes, incompatibility matrix, separation distances — and the audit checks your slotting data against them, reporting where the system has incompatible product adjacent or stacked and where items carry no hazard class at all. It is not a compliance certification: it doesn't stand in for an OSHA, NFPA, DOT, or fire code assessment, and it isn't a substitute for a physical inspection.

07 Do we need our software vendor involved?

Not to run the audit. Everything needed comes out of reports your own team can export.

Some fixes will land in your vendor's court, which is why the fix list is split by owner — you get findings you can take to them with the evidence already attached, rather than a support ticket describing a feeling.

08 What if you don't find anything?

You get the report either way, and a documented clean bill of health on your receiving and inventory data is a useful thing to hand your CFO. In practice, no audit has come back empty — bad data accumulates quietly in every operation running at volume.

09 We're not a warehouse, we're a plant

Worth a conversation. The method travels to any system where a record is supposed to match physical reality, but distribution is where the depth is. If your problem sits somewhere I can't do excellent work, I'll say so on the call rather than take the engagement.

Find out what your system is getting wrong.

A 20-minute call. Bring one number you've never been able to explain and we'll talk through where it probably comes from — whether or not you hire anyone.

Email to set up a call

jake@wmsaudit.com