Hold Monday's forecast for CUST-011 until their portal refreshes at 10:30 — the 06:00 feed is last week's file about a third of the time.
Source: Customer service lead · UW-01OC-100 · Documented engagement · Demonstration
The planning engine.
A $340M consumer-goods distributor: 1,150 employees, a nine-person planning team, four distribution centers across the Southeast, and six systems that did not talk to each other. This is the documented record of the engagement that rebuilt Meridian Distribution Group's demand forecasting inside their own walls.
$340M revenue · 9-person planning team · 4 DCs · 6 connected systems

Contents. Five chapters, one engagement.
- 01DiscoverySix systems mapped, 605 manual hours found, $2.4M–$3.1M located.
- 02Set-upA 47-page playbook — and six rules nobody had written down.
- 03Team viewsThe same Monday, seen by a planner, a director, and a COO.
- 04Under the hoodOne demand spike, five agents, one human decision.
- 05OutcomesForecast error down 22%. The planning week down to one day. OCAI gone.
Chapter 01 — Discovery
How the team learned this operation.
Before anything was built, three weeks were spent reading the operation: its systems, its hours, and where the money leaks. Everything below was measured, not estimated.
Six systems, one shared truth: a spreadsheet.
Detected, mapped, and connected during discovery. Nothing was migrated.
What three weeks of reading found.
605
42%
5 days
Monday pull to Friday sign-off
30.5% WMAPE
SKU-DC-week
Where the hours went.
605 hours of manual planning work per month, by area.
What the leaks were worth.
Annual value located: $2.4M – $3.1MPA (placeholder figure)
Ranges are 12-month observed baselines, not projections. The revenue line assumes 30% recapture of stockout-attributed loss — the conservative end of what their own order data supported. Nothing here counts “strategic value.”
Seven workflows, ranked by money and effort.
The deliverable: what to automate first and why. Open any row for the current pain.
Nine planners rebuild forecasts for 12,400 SKUs in Excel every week. The consolidated file is 214MB. It exceeds Excel's row limit, so categories are split across 11 linked workbooks. Two of the links have been broken since November.
600–800 exceptions monthly. 70% are the same 12 types. Each takes 20–40 minutes to research across four systems before anyone decides anything.
Expedited freight ran $640K–$820K last year. Nobody could say which expedites were avoidable, because the trigger data lived in three systems and the approvals lived in email.
Transfers are planned Thursday from Monday's inventory snapshot. By pick time, 15–20% no longer make sense and get cancelled or reversed.
Promotion calendars arrive by email as PDFs, on average nine days after sales commits them. The three worst stockout weeks of the past year each trace to a promotion the planners learned about late.
72 hours a month assembling one deck. The numbers are stale by the meeting. Forty minutes of every S&OP is spent arguing about whose extract is right.
New SKUs inherit a forecast copied from “something similar,” chosen from memory. 38% of new-SKU first orders were wrong by more than half, in either direction.
PA — position approximate. A demonstration engagement: figures are drawn to the scale of a typical result, not published client data.
Chapter 02 — Set-up
How the operation's rules became the system's rules.
The system was not taught logistics. It was taught this operation — from the documents the team already trusted, and from the rules that existed only in people's heads.
The playbook, compiled.
The team's own manual, parsed into rules the system can execute.
Demand_Planning_Playbook_v3.1.pdf
Maintained by the planning team · v3.1 · last revised 14 March 2023 · 47 pages
47
61
38
9
38 rules encoded. The 12 that do the most work.
Six rules nobody had written down.
Captured in interviews, confirmed against twelve months of history, and encoded with the same standing as the playbook.
During a cycle-count week at any DC, the WMS available-to-promise figure is not the source of truth; the count sheet is.
Source: Warehouse supervisor, DC-03 · UW-02SUP-104's confirmed lead times run 8–10 days long from October through January. Plan to the padded number, not the confirmation.
Source: Inventory analyst · UW-03Never release an inter-DC transfer into DC-04 on a Friday — its inbound dock runs a single weekend shift and the pallets sit until Tuesday.
Source: Transfer coordinator · UW-04If CARR-EAG declines a tender, re-tender at the same rate two hours later before going to spot — their morning declines are capacity timing, not price. Learned on LANE-ATL-MIA; applies carrier-wide.
Source: Carrier relations manager · UW-05Any week-over-week forecast jump above 40% on an A-class SKU is an input error until a human confirms a driver. It has been a data problem nine times out of ten.
Source: Senior demand planner · UW-06Zero migration. Three ways in.
Read-write where the work happens, read-only where it doesn't. Overnight sync completes by 02:00; event feeds run all day.
NetSuiteManhattan SCALEMercuryGateSamsara (RO)Snowflake
Two customer ordering portals publish forecasts and commitments on the web, with no API. An agent reads them the way a planner did — logs in, exports, and verifies the file is actually new before believing it. Format drift is detected, not suffered.
CUST-011 portalCUST-027 portal
What arrives as paper gets read as data: promotion calendars as PDFs in a shared inbox, supplier ship confirmations by email, carrier rate sheets as spreadsheets. The eleven legacy planning workbooks were ingested through this path during transition, then retired.
Outlook shared inboxPDFXLSXLegacy workbooks — retired wk 9
Initial configuration. Thresholds set with the team, not for it.
Below threshold, the system recommends and a human decides. Thresholds are the client's dial, not ours.
PA — position approximate. A demonstration engagement: figures are drawn to the scale of a typical result, not published client data.
Chapter 03 — Team views
One Monday, seen from three altitudes.
Monday, March 9, 2026. The same planning cycle, from three chairs.
Planner view. Their senior demand planner, Dana Whitfield, opened this screen at 07:30. The overnight run had finished at 07:00. What follows is what it left her.
What the system handled overnight.
31,700
by 07:00
27
23 closed by the system
4
11
one-click release
A Monday like this one used to take her 9.1 hours. Today's review took 40 minutes.
Four items required human judgment.
Week-12 portal forecast for SKU-2214 at DC-02 posted 62% above model — over the 40% jump threshold for an A-class SKU.
Recommendation. Confirm the driver with the account manager before committing. If confirmed, release drafted transfer TRF-3312 — 5,400 units from DC-01, which holds 9,800 at 6.1 weeks of cover.
Rule applied: UW-06 · Related: EVT-20260309-0612 · Traced in chapter 04
ASN missing four days after confirmed ship date on PO-77841; already trending six days late against the padded plan.
Recommendation. Split the risk — expedite 30% by LTL at $1,900 (within planner authority), keep the balance on the original routing.
Rules applied: R-03, UW-03
SKU-0871 (C-class) sits at 19 weeks of cover after a cancelled promotion; the obsolescence threshold is 12.
Recommendation. Transfer 40% to DC-01, where velocity runs 3× higher; flag the remainder for the quarterly markdown review. Release Wednesday.
Rules applied: R-12, R-07
Seed forecast built from three analog SKUs; the analogs disagree by 55% on week-one velocity.
Recommendation. Approve the conservative seed; the system re-forecasts after 14 days of actuals.
Rule applied: R-08
Her hours, coming back.
Hours of tracked assembly and triage work she no longer does by hand.
Director view. Their Director of Supply Chain Operations, Rosa Jimenez, sees the same Monday one level up — not items but people, workflows, and where judgment is still being spent.
Nine planners, at the working capacity of twelve.PA (placeholder figure)
484 hours a month came back. Nobody left.
Where the hours landed.
Senior demand plannerFreed / day+4.1 hModel stewardship & rule tuning — she co-owns the system
Demand planner, SoutheastFreed / day+3.2 hCollaborative planning with the top five accounts
Demand planner, Mid-AtlanticFreed / day+3.0 hPromotion planning with sales
Inventory analystFreed / day+2.6 hSlow-mover and obsolescence program
Transfer coordinatorFreed / day+2.3 hCarrier scorecards & tender strategy
Performance by workflow.
Discovery estimated exception triage at 70% automatable. Week-19 actual is 85%. The twelve repeat exception types turned out to be 81% of volume, not 70% — the estimate was low.
Three things asking for her attention.
Exception triage has run above 96% accuracy for six straight weeks. Lowering its confidence threshold from 85% to 82% would auto-resolve an estimated nine more exceptions weekly. Approval required.
Proposal · awaiting decisionDC-03 cycle-count window opens March 16. ATP suppression (UW-02) will auto-apply for five business days.
Automatic · 3 hours agoExpedite-recommendation escalations rose six points this week. Driver: three carriers repriced LANE-ATL-MIA. A rate-table review is suggested before the tender cycle.
Observation · this morningExecutive view. The COO, Alan Pruitt, reads this page in about two minutes, usually on a phone, usually Monday afternoon.
Day 1 of 1.
Formerly day 1 of 5.
- Complete: Overnight sync, six systems02:00
- Complete: Forecast refresh, 31,700 SKU-DC pairs07:00
- Complete: Exception screen & auto-resolution07:20
- Complete: Planner review queues published07:30
- Complete: Human review complete (4 items)09:50
- Complete: Transfer orders released10:30
- Complete: Supply plan posted to NetSuite11:00
- Complete: Carrier tenders out via MercuryGate13:00
- Complete: S&OP pack assembled14:00
- Pending: Director sign-off15:30
The four numbers he actually reads.
23.8% WMAPEPA
down 22% from the 30.5% baseline (placeholder figure)
$41K/mo
against a $61K baseline
97.3%
from 95.1% · penalty threshold 96.5%
−$2.1M
$23.4M → $21.3M
PA — position approximate. A demonstration engagement: figures are drawn to the scale of a typical result, not published client data.
What the data started saying.
Their portals, now read daily, removed the two worst forecast misses of the quarter.
What remains is noise, not bias — the next gains live in supplier lead-time variance, not the forecast.
The data to re-slot the network now sits in one place. It did not before.
247,000 decisions logged
100% attributable · export is one click. If an auditor asks who moved 5,400 units to Charlotte on March 9 and why, the answer takes eleven seconds.
Action items this week.
Chapter 04 — Under the hood
One exception, traced end to end.
This is item EXC-8841 from the planner's Monday queue — the demand spike on SKU-2214 — reconstructed from the log, not narrated from memory. Elapsed time from portal read to queued recommendation: 3 minutes 12 seconds.
Incoming event · EVT-20260309-0612 · CUST-011 portal · computer-use read at 06:12
SKU-2214 · 56-quart storage tote, clear · DC-02 Charlotte
Planning orchestrator
Receives the event, checks it against 44 active rules, dispatches five specialists — in parallel where their inputs allow — and assembles one recommendation. It decides nothing above its thresholds alone.
Jump exceeds the 40% week-over-week threshold on an A-class SKU. Portal file timestamp 06:04 today — a stale-file re-read (the UW-01 pattern) is ruled out. Classified: genuine-signal candidate.
Rule applied: UW-06
Inputs read: 4 · Checks run: 6 · Anomaly class: genuine-signal candidate
Probable driver found: Hartwell's week-12 circular features the home-storage category — the promotion PDF was ingested February 27 and matches on category and week. Closest analog: the April 2025 circular, +58% for three weeks, then a −12% trough.
Rule applied: R-09
Evidence: 3 sources (promo PDF p.4, 2 analogs) · Analog similarity: 0.87 · Counter-evidence searched: cancelled-promo list — none found
Network position: DC-01 holds 9,800 units at 6.1 weeks of cover. A 5,400-unit transfer leaves DC-01 at 2.7 weeks — above the A-class floor of 2.0. The lane is two days; the transfer lands inside lead time.
Rule applied: R-06
Systems queried: NetSuite, Manhattan SCALE, Snowflake · Data as-of: 05:47 · Staleness check: passed
LANE-ATL-CLT, 12 pallets. CARR-EAG tender window closes 13:00 at $1,140; spot alternative estimated $1,600–$1,900. Tender is drafted and held until the demand driver is confirmed by a human.
Rule applied: UW-05
Constraints checked: DC-02 dock (open) · Friday rule (n/a — Monday) · Tender deadline 13:00 · Cost delta vs spot: −$460 to −$760
If the signal is real and unmet: $46,800 revenue at risk, $9,200 margin, and the line-fill penalty clause triggers below 96.5%. If the signal is false and acted on: $1,140 freight plus roughly $310 in carrying cost. The downside is asymmetric — human confirmation is required regardless of other confidences.
Sources: Expedite_Approval_Matrix.xlsx · CUST-011 MSA §7
Downside modeled: both directions · Penalty source: CUST-011 MSA §7 (ingested) · Decision class: human-required
Queued to the senior planner at 06:15:53 as EXC-8841, blended confidence 74%. Dana Whitfield confirmed the circular with the account manager at 09:40 and released TRF-3312 at 09:47. CARR-EAG accepted the tender at 10:15.
PA — position approximate. A demonstration engagement: figures are drawn to the scale of a typical result, not published client data.
The feedback loop, on this exact item.
Recommended a +48% overlay — a blend of the analog and the trailing average, per R-09's category-level rule.
Whitfield set the overlay to +58% — the full analog — because the account manager confirmed end-cap displays, which the category rule cannot see.
Rule reinforced. Encoded as UW-07 — when a circular includes an end-cap flag, apply the full analog, not the blend. Effective the same week. Recommendations accepted without correction: 88.1% in the first live week → 97.4% at week 19. Corrections like this one are the mechanism.
The operation changed. The system noticed.
- Jan 12, 2026CARR-EAG repriced LANE-ATL-CLT +9% in MercuryGate.
Transfer-vs-expedite break-even recalculated overnight; parameters updated, change logged, no approval required — parameter class.
- Feb 3, 2026NetSuite annual review reclassified 214 SKUs from B to C.
Safety-stock targets recomputed; three conflicts between §3.1 and observed velocity flagged. Jimenez approved two, rejected one.
- Feb 27, 2026The CUST-011 portal changed its export column order.
Schema drift detected on read; fields remapped and flagged for verification. Verified by Aisha Bell the same day. Zero missed reads.
Chapter 05 — Outcomes
What changed, and who runs it now.
Nineteen weeks, measured against the twelve months before them. The last two weeks on every chart below were recorded with no OCAI involvement.
Before and after.
PA — position approximate. A demonstration engagement: figures are drawn to the scale of a typical result, not published client data.
Recommendations accepted without correction, weekly.
Human feedback and rule changes are absorbed automatically. 88.1% to 97.4% in sixteen weeks.
The log, not the story.
Every action carries a timestamp, an actor, and a confidence. This is March 9, filtered to EXC-8841.
Who owns all of this.
The code is theirs.
Everything runs in their environment, under their accounts, written pair-wise with their engineers. Their planners merged their own rule changes from week 6. OCAI holds no credentials.
Their data trained nothing else.
Twelve months of demand history, customer terms, and carrier rates improved this system and no other. Nothing here is anyone's training set.
They could walk away. We did.
The engagement ended at week 17. No subscription, no seats, no renewal. The system did not notice.
Success is measured after we leave.
Weeks 18 and 19 on the acceptance curve were recorded without OCAI. They are the two highest points on it.
Run-rate at week 19, annualized.
Discovery located $2.4M–$3.1M. Week 19 has realized $1.4M–$1.8M of it. The remainder sits on their roadmap, not ours. That was the point.
Begin
See it against your operation.
A 30-minute meeting. Bring the one workflow that hurts. We'll tell you whether this pattern fits — and if it doesn't, what to fix first.