Q3 Warehouse Inventory Count — Discrepancies & Fixes

Reconciled review of the 10,000-unit cycle count: what didn't match, why, and the fix for each category.

Mixed audience — ops reads the impact, the floor team reads the fix.

SourceWMS exportPeriodQ3 2026SiteDC-WestOwnerInventory Ops

Overview

Count date
2026-07-09 14:22 UTC
Units expected
10,000
Method
full cycle count
Mode
strict
Matched cleanly
8,50085.0%
Floor — fixable
1,10011.0%
Miscounts + mislabeled bins we can correct.
Vendor — escalate
4004.0%
Count status
HEALTHY
Total units
10,000

The count reconciles exactly: every unit lands in one bucket and the counts sum to the expected total. Reconciliation is a hard gate — a page that does not balance will not build. The old bin > 12 scan rule is under review; see the method.

Percentages are of the 10,000-unit total. Counts were verified against the shelf, not estimated.

Action needed before the next count
The bin > 12 scan rule skipped 260 valid units in overflow aisles. Confirm the rule with the site lead before re-counting.
Counts below are per distinct discrepancy class, not per unit.

Discrepancies & fixes

Legend — badges used on this page
FloorFixable on the floor before the next count.
SystemDefect in the scanning/labeling pipeline.
VendorDepends on the vendor to resolve.
DiscrepancyUnitsWhat the problem isProposed fix
Floor — fixable1,100
Double-counted units
Floor
Skipped, bin > 12260
Same-window re-scan340
6006.0% of total The same pallet is scanned twice when a picker re-enters an aisle within the count window. De-duplicate on the pallet ID (pallet_id) before totalling; keep the most recent scan.
Mislabeled bin codes
System
5005.0% of total Scanner assumed 5-digit bin codes; 9-digit codes were truncated and failed the lookup. Widen the scanner to accept 9-digit codes; re-scan the 500 truncated bins from the raw log.
Vendor — escalation400
Short shipment
Vendor
4004.0% of total The vendor's ASN listed 400 units that never arrived on the dock, so they can't be counted. Escalated to the vendor (ticket OPS-1234); hold the line until a corrected ASN arrives.
Correctly counted — no action0
— none —

Reconciles: 1,500 + 8,500 matched cleanly = 10,000.

Count progress

Zone A
100.0%Zone B
92.0%Zone C
85.0%Overflow
4.0%
Affects:inventoryscan-appDC-West

Verification

Follow-up checklist

  1. Confirm the bin > 12 scan rule with the site lead.
  2. Ship the 9-digit bin-code widening behind the scan flag.
  3. Re-run the count and re-verify reconciliation.

Rollout

Method

Counts come from the scan-stage audit log, grouped by discrepancy reason. The reconciliation query and the de-dup fix are below.

reconciliation.sql
SELECT reason, count(*) AS n
FROM count_audit
WHERE cycle_id = 'Q3-2026'
GROUP BY reason
ORDER BY n DESC;
dedupe.ts · tiebreak fix
function pickWinner(a, b) {  return a.code.localeCompare(b.code);  if (isPlaceholder(a) !== isPlaceholder(b))    return isPlaceholder(a) ? 1 : -1;  return a.code.localeCompare(b.code);}
Discrepancy volume by zone
Fig 1 — discrepancy volume by zone (embedded as a data: URI; skaldr embeds images, it does not generate charts).
These bins are aggregate lots — we can't split AGG-07 into individual SKUs from the dock scan alone.
Floor lead, ticket OPS-1234

At a glance

Matched cleanly
8,50085.0%
Needs work
1,50015.0%
Reading this section
The cards on the left summarise; the panels below break down count progress and checks side by side.
Zone C
88.0%
  • Reconciliation gate passes.
  • Awaiting OPS-1234.
Appendix — discrepancy-reason raw counts
  • Double-count (same-window re-scan): 340
  • Double-count (bin > 12 skip): 260
  • Mislabeled bin code (9-digit truncation): 500
  • Short shipment (vendor): 400

Raw counts are pre-aggregation and exclude the 8,500 cleanly-matched units.

Generated with skaldr