Demand Sensing in a Six-Plant Network: What We Learned Re-baselining Nightly
We pitched nightly re-baselining as a modeling upgrade. It turned out to be a data-plumbing project wearing a forecasting project's clothes, and the difference cost us a month we hadn't planned for.
Going in, we assumed the hard part would be the forecasting model itself — moving from a weekly cadence to nightly re-baselining across a six-plant network felt like it should be a modeling problem: more frequent runs, tighter windows, maybe some extra care around volatility. We scoped it that way. We were wrong about where the effort was going to go, and we found out about three weeks in.
The model itself was, if anything, the easy part. Running it nightly instead of weekly barely moved the compute bill. What we hadn't scoped properly was that a weekly forecast can absorb a plant's data arriving a day late without anyone noticing — over a seven-day window, one late day rounds to nothing. A nightly forecast can't absorb that at all. The first week we ran it live, one plant's disruption feed was arriving inconsistently, and on the nights it didn't land, the model either forecast that plant blind or, on a couple of nights before we caught it, quietly carried forward a stale number that looked exactly as current as every other plant's fresh one. Nobody downstream could tell the difference just by looking at the output, which is the specific kind of bug that doesn't announce itself.
We ended up spending most of that month on the data plumbing, not the model — getting every plant's production and disruption signal to land reliably before the nightly run, every night, not eventually. That's a much less interesting problem to describe in a project update than "we improved the forecasting model," and it was the actual work.
The second thing we underestimated was volatility. A weekly cadence smooths day-to-day noise out by construction — you never see it, so you never have to explain it. A nightly cadence surfaces it directly, and the first time the number moved meaningfully overnight for no dramatic reason, a planner called to ask what happened. Nothing had happened; that's just what daily granularity looks like when you're used to weekly. We hadn't given the forecast an explicit confidence signal to go with each night's number, so there was no way for a planner to tell "real shift" from "today's inputs were thinner than usual" apart from calling us. We added that after the fact. It should have shipped with the first version.
The part that actually paid off, once the plumbing was solid, showed up exactly where we'd hoped it would and nowhere else — a disruption week, months later, when one plant went down unexpectedly. The network reallocated within a day instead of running on a stale plan for most of a week waiting for the next cycle. On a normal week, honestly, you'd be hard-pressed to tell the nightly system apart from the old weekly one. That's not a flaw — it's just where the entire case for the investment actually lives, and it's worth saying out loud before you build it, so nobody's disappointed by how unremarkable the good weeks look.

