Back to Resources
Operations12 min read

Inventory Reconciliation SOP for Ecommerce Teams

D
David VanceOct 13, 2025
Operations team performing inventory cycle count with barcode scanner matching physical counts to system records

Why Inventory Counts Drift

Every inventory system drifts over time. Even with barcode scanning, real-time sync, and automated receiving, small errors accumulate. A miscount during receiving adds 2 extra units. A pick error sends the wrong SKU to a customer. A return is placed back on the shelf without scanning. A sync failure leaves one channel with a stale count for 4 hours.

Individually, these are minor. Compounded over weeks and months, they create significant accuracy gaps that manifest as overselling, phantom inventory (system shows units that do not physically exist), and financial misstatements on inventory valuation reports.

Reconciliation is not optional maintenance — it is a core operations process that prevents small errors from becoming large problems.

The Three-Cadence Reconciliation Framework

Daily: Spot Check High-Velocity SKUs

Your fastest-moving SKUs are most vulnerable to drift because every transaction is an opportunity for error, and high volume means more transactions per day.

Daily Spot Check SOP:

  Time: First thing in the morning, before fulfillment begins
  Scope: Top 20 SKUs by 7-day sales velocity
  Duration: 15–20 minutes

  Process:
  1. Pull the system count for each SKU from your OMS
  2. Physically count the SKU at its pick location
  3. Compare:
     - If match: Record as confirmed. Move to next SKU.
     - If mismatch ≤ 2 units: Correct the system count. Log the adjustment.
     - If mismatch > 2 units: Do NOT correct immediately.
       Flag for investigation. Check transaction history for the last 48 hours.

  Log Format:
  Date | SKU | System Count | Physical Count | Variance | Action | Root Cause
      

Weekly: Cycle Count Rotation

Count a rotating sample of your catalog each week, ensuring every active SKU is counted at least once per quarter.

Weekly Cycle Count SOP:

  Day: Every Wednesday (mid-week, after Monday rush settles)
  Scope: 15–20% of active SKU count, rotated each week
  Duration: 1–3 hours depending on catalog size
  Team: Minimum 2 people (one counts, one records)

  Rotation Schedule:
  Week 1: SKUs A001–A200 (or Zone 1 of warehouse)
  Week 2: SKUs A201–A400 (or Zone 2)
  Week 3: SKUs A401–A600 (or Zone 3)
  Week 4: SKUs A601–A800 (or Zone 4)
  → Repeat. Every SKU counted once per cycle (4–6 weeks)

  High-priority override:
  Any SKU with a discrepancy in the daily spot check goes into
  the next weekly count regardless of rotation schedule.

  Process:
  1. Generate count sheet: SKU, location, system quantity (hide system
     quantity from the counter to prevent confirmation bias)
  2. Counter physically counts each SKU and records the number
  3. Recorder compares physical count to system count
  4. Variances logged and investigated per the investigation procedure
      

Monthly: Full Reconciliation and Root Cause Review

Monthly Full Reconciliation SOP:

  Timing: Last business day of the month
  Scope: All active SKUs + channel-level reconciliation

  Part 1: System-to-Physical Reconciliation
  - Compare OMS inventory to warehouse physical counts
  - Use the accumulated weekly cycle count data for most SKUs
  - Conduct additional counts for any SKU not cycle-counted this month
  - Calculate total variance (units and dollar value)

  Part 2: System-to-Channel Reconciliation
  - Pull reported inventory from each marketplace (Amazon, eBay, Walmart, Shopify)
  - Compare marketplace-reported quantity to your OMS expected quantity per channel
  - Identify and correct any channel-level drift
  - Document persistent drifts (channels that consistently show different counts)

  Part 3: Variance Root Cause Review
  - Aggregate all variances from the month
  - Categorize by root cause (receiving, picking, returns, sync, shrinkage)
  - Identify the top 3 root causes by frequency and dollar impact
  - Assign corrective actions for each root cause
  - Review corrective actions from prior month: were they effective?
      

The Variance Investigation Procedure

When a count discrepancy is found, resist the urge to simply correct the number. Correcting without investigating treats the symptom and guarantees the error will recur.

Investigation Flowchart

Variance Detected: System says 50, physical count is 47 (variance: -3)

Step 1: Check transaction history (last 7 days)
  → Any orders fulfilled but not deducted from system?
  → Any returns received but not scanned in?
  → Any transfers between locations not recorded?
  → Any manual adjustments made by other team members?

Step 2: Check for misplacement
  → Is the product in the wrong bin or location?
  → Were any similar SKUs co-located that could cause miscounting?
  → Check overflow and staging areas

Step 3: Check receiving records
  → Was the last PO for this SKU received accurately?
  → Compare PO quantity to receiving scan count
  → Check for partial receipts that were not recorded

Step 4: Check channel sync
  → Does the marketplace show a different count than your OMS expects?
  → Were there any sync failures in the last 7 days?

Step 5: If no root cause found
  → Record as "unresolved variance"
  → Correct the count
  → Add this SKU to the daily spot check list for 2 weeks
  → If variance recurs, escalate to operations manager
      

Root Cause Categories and Corrective Actions

Root Cause Typical Variance Pattern Corrective Action
Receiving errors System overstates (more in system than physical) Require scan-based receiving with quantity verification. No blind PO receipts.
Picking errors System overstates (picked wrong SKU, not deducted correctly) Implement scan-to-verify at pick. Use bin-level location accuracy.
Returns not scanned System understates (physical has more than system) Require barcode scan for every return restocking. No shelf placement without scan.
Sync pipeline failure Channel shows different count than system Add sync health monitoring (freshness, volume, distribution checks).
Shrinkage System overstates (consistent, unexplained small losses) Investigate access controls. Add camera monitoring for high-value areas.

Reconciliation Metrics and Reporting

Monthly Reconciliation Report:

  Inventory Accuracy Rate:
    = (SKUs with zero variance ÷ Total SKUs counted) × 100
    Target: > 95%
    Current: [___]%

  Dollar Variance Rate:
    = (Total absolute dollar variance ÷ Total inventory value) × 100
    Target: < 1%
    Current: [___]%

  Unit Variance Rate:
    = (Total absolute unit variance ÷ Total units on hand) × 100
    Target: < 2%
    Current: [___]%

  Top 5 Variance SKUs This Month:
    1. [SKU] | Variance: [X] units | Root cause: [Y]
    2. [SKU] | Variance: [X] units | Root cause: [Y]
    3. [SKU] | Variance: [X] units | Root cause: [Y]
    4. [SKU] | Variance: [X] units | Root cause: [Y]
    5. [SKU] | Variance: [X] units | Root cause: [Y]

  Root Cause Breakdown:
    Receiving:    [__]% of variances
    Picking:      [__]% of variances
    Returns:      [__]% of variances
    Sync:         [__]% of variances
    Shrinkage:    [__]% of variances
    Unresolved:   [__]% of variances

  Trend: Accuracy rate improving / stable / declining vs prior month
      

Tools and Templates

  • Count sheet template: Spreadsheet with SKU, location, system quantity (hidden column), physical count, variance, and notes columns. Generate from your OMS export.
  • Variance log: Running log of all variances found, root cause, corrective action taken, and follow-up status. Review monthly.
  • Cycle count calendar: Annual calendar showing which SKU groups are counted each week, ensuring complete coverage by end of quarter.

Common Mistakes

  • Correcting counts without investigating: Every unexplained adjustment is a process failure you are choosing to accept. Investigate first, correct second.
  • Showing the counter the system quantity: Confirmation bias is real. When counters see the expected number, they are more likely to count to match it rather than counting objectively. Hide system quantities during physical counts.
  • Treating reconciliation as a warehouse task only: Inventory accuracy is an operations-wide responsibility. Sync pipeline issues, returns processing gaps, and channel-level drift are not warehouse problems — they require cross-functional investigation.
  • Doing annual full counts instead of continuous cycle counts: An annual physical inventory gives you accuracy one day per year. Continuous cycle counts give you accuracy every week. The investment is the same — just distributed differently.

Frequently Asked Questions

Inventory reconciliation is the process of comparing your system's inventory records (what the software says you have) against physical inventory counts (what you actually have in the warehouse) and against channel-level reported quantities (what each marketplace says you have). Discrepancies are identified, investigated, and corrected. The goal is not just to fix the count but to identify why the discrepancy occurred and prevent it from recurring.

Use a tiered cadence: daily spot checks for your top 20 SKUs by velocity (these are most likely to drift because they move the most), weekly cycle counts covering a rotating sample of 10–20% of your catalog, and monthly full reconciliation of all active SKUs. Additionally, run immediate reconciliation after any system migration, warehouse move, or major operational event that could cause widespread count errors.

For ecommerce operations, target less than 2% variance by SKU count and less than 1% by dollar value. World-class operations achieve 0.5% or better. Any individual SKU with a variance greater than 5 units or 10% of on-hand quantity should be investigated immediately. Chronic variance (the same SKU drifting repeatedly) indicates a systemic process issue that a count correction will not fix.

A cycle count is a partial count — a sample of SKUs counted on a rotating basis so that every SKU is counted at least once per quarter (or more frequently for fast movers). A full physical inventory counts every SKU in the warehouse at once, typically requiring operations to pause while counting is in progress. Cycle counts are preferred for ecommerce because they do not disrupt fulfillment. Full physical inventories are typically done annually for financial reporting or after major operational disruptions.

Start with the five most common root causes and work through them systematically: receiving errors (items received but not scanned into the system, or scanned incorrectly), picking errors (wrong item picked, correct item picked but wrong quantity), returns processing gaps (item returned to shelf but not scanned into system), sync pipeline failures (system sent an update but the channel did not apply it), and shrinkage (theft, damage, or loss not recorded). Cross-reference the discrepancy with recent transaction history for the affected SKU to narrow the cause.