Conclusion first: VMI projects don't fail because of replenishment math. They fail because three things were never nailed down before go-live — when ownership transfers, what counts as a stockout, and whose books the inventory sits on inside the WMS. Get those three in writing and you've won half the battle. Leave them vague and you'll spend the next year arguing about all three.
Let me show you two projects I watched go sideways.
The first one: fall 2023, an auto parts distributor in Ontario, California, running a 40,000-plus square-foot warehouse for brake pads and filters. They signed a VMI deal with their corrugated box supplier — the supplier would watch inventory levels every day and decide what to ship, no purchase orders needed. Sounded beautiful. Then two consecutive month-end counts came up short by more than twenty thousand dollars against the books. A week of digging turned up a root cause that was almost funny: the contract said "title transfers on delivery to our dock." But the WMS auto-received every supplier ASN the moment the truck arrived, so the system treated the boxes as theirs. Finance, meanwhile, booked purchases only on consumption. So the building was sitting on thirty-plus thousand dollars of boxes that the system said they owned and finance said they hadn't bought. The counts never reconciled. I've seen this exact hole three times — the contract's ownership moment and the system's receiving action were never aligned.
The second one: early 2024, a Chicago 3PL handling medical device consumables, with a VMI supplier that ran an injection-molding shop. The contract had exactly one line on the subject: "the supplier is responsible for stockouts." It never defined a stockout. One day a customer's production line ran dry and stopped for four hours — real money lost. The supplier pulled up their system: "Our records showed you had two days of coverage. You changed the production plan and never told us." The customer shot back: "Isn't replenishment your job?" They split the loss and the relationship took the hit. I've seen this hole three times too — "stockout" left undefined means the clause says nothing at all.
So before you go live with VMI, walk this checklist line by line. Night-before-go-live stuff. Skip nothing:
-
Pick the ownership transfer point — three options, no hedging
- On receipt: it's yours the moment it hits your dock. Simplest of the three. Contract, WMS, and finance all say the same sentence. This is my default recommendation.
- On putaway: it's yours when it's stocked on the shelf. Use this if your site has a long lag between receiving and putaway.
- On consumption: you buy it when you use it — that's VMI plus consignment. Friendliest to cash flow, but finance needs a separate set of books and the WMS needs owner codes. Twice the complexity. Once decided, write the same sentence in three places: the contract, the WMS receiving flow, and the finance SOP.
-
Give VMI stock its own owner code in the WMS Create one owner code per VMI supplier (something like VMI-ACME). Supplier ASNs auto-create receiving tasks straight into that owner. Hard rule: turn off "allow negative inventory" for VMI items. A negative on owned stock can be adjusted after the fact. A negative on VMI stock corrupts ownership itself — if it's short, it's short. Reconcile it the same day.
-
Push a daily inventory snapshot — every field matters VMI is a trade: your data in exchange for their decisions. No data, blind replenishment. Push at least once a day (EDI 846 or a flat CSV, either works). The file must include: on-hand quantity, in-transit quantity, a 14-day demand forecast, and the breakdown by location. Miss in-transit and the supplier double-orders. Miss the forecast and promo season stockouts are guaranteed.
-
Put min/max levels in the system, not in someone's head Set three numbers per SKU: the reorder point that triggers replenishment, the max level where it stops, and safety stock in days. Don't guess safety stock — the formula is simple: Safety stock = daily usage × lead time (days) × 1.5 Example: a SKU burns 800 units a day, the supplier needs 3 days from order to delivery, so safety stock is 800 × 3 × 1.5 = 3,600 units. Trigger replenishment when projected coverage drops below safety stock plus lead-time demand; stop at max. Encode it in the WMS replenishment engine so it runs itself. Don't rely on someone watching a screen.
-
Define "stockout" before assigning blame My recommended definition: if there's production or shipping demand today and the picker can't find the stock, that's one stockout — regardless of what the system says is in transit. Measure line fill rate monthly. Ninety-eight percent is the common bar (don't promise 99.5% if you can't hit it). And write down the penalty: dock the monthly service fee, or cut next month's unit price by 2%. Pick one. Never write "to be negotiated."
-
Who counts, who signs off on variances My recommendation: the warehouse counts, the supplier acknowledges. Fold VMI items into the monthly cycle-count program. Any variance beyond plus-or-minus 0.5% triggers a joint root-cause session — missed scan at receiving, wrong item picked, supplier over-ship or under-ship. Never wait for the annual wall-to-wall count to settle the score. By then, nobody can reconstruct what happened.
-
Write the exit clause now, not at the breakup Within 30 days of termination, the supplier pulls the remaining stock or you buy it out at book value. Pick one and put it in the contract. I once watched a breakup with eighty thousand dollars of VMI stock in the building turn into six months of arguing over who pays.

Now let's do the math: does VMI actually save money?
Take an electronics plant spending $1.2 million a year on packaging materials. Before VMI: inventory turns of 8, so about $150,000 of average stock on hand; one dedicated buyer at roughly $70,000 fully loaded; and about $30,000 a year in line-downtime losses from packaging stockouts. After VMI: to protect a 98% fill rate, the supplier holds 10 to 20% more than self-procurement did, so average stock rises to about $180,000 — $30,000 more. But the buyer gets redeployed, and stockout losses drop to near zero. Net for the year: $30,000 of extra stock at an 8% carrying cost ($2,400 a year) buys you $70,000 of labor and $30,000 of stockout losses eliminated. The math is positive — but notice why. Not because inventory fell. Because labor and stockouts did.
Which leads to the counterintuitive take: VMI doesn't save inventory. It saves stockouts and headcount. Plenty of executives hear "the supplier handles replenishment" and their first thought is "our inventory will drop." Wrong. The supplier's KPI is "never stock out," and the safest way to never stock out is to hold more. Across the projects I've done, inventory levels after VMI go-live rose 10 to 20% on average. What you're actually buying is three things: certainty of supply, freed-up procurement headcount, and professional replenishment decisions. If your pain is too much inventory and tight cash flow, VMI is the wrong medicine — consignment (pay on use) is the right one. If your pain is chronic stockouts with buyers firefighting every day, VMI fits.
One last table, to separate three concepts people constantly mix up:
| Self-procurement | VMI | Consignment | |
|---|---|---|---|
| Who decides replenishment | You | The supplier | You |
| Who owns the inventory | You | Per the transfer-point clause | The supplier (you buy on use) |
| Who owns the stockout | You | The supplier (per SLA) | You |
| WMS setup | Standard PO receiving | Dedicated owner code + auto-receiving + snapshot feed | Consignment owner + issue-to-consume |
| Best fit | Strong procurement team | Chronic stockouts, many SKUs | Tight cash flow |
VMI in one sentence: write the money and the blame into the contract first, then translate the contract into WMS configuration. Never in reverse order.
By Lin Xiao, WMS Implementation Consultant







