Services

ML and Enterprise Forecasting

Forecasts your planners can question, with the drivers behind every number and what-if answers in plain English.

What we forecast

We build the data, the evals and the governance once.

The questions change from one business to the next. The data, the evaluation and the governance do not, so every forecast after the first one reuses them.

A few of the models we’ve built

  • 01

    Demand Forecasting

    Orders, units and revenue by product, site and channel, from next week to next year.

  • 02

    Prices and margins

    How demand responds to price, and what a price change or promotion does to margin.

  • 03

    Churn and customer value

    Which customers are drifting away, what they are worth, and the offer that would keep them.

  • 04

    Parts and supply

    Spare parts, materials and supplier lead times, feeding straight into maintenance and purchasing plans.

  • 05

    Production

    Output and decline by well, plant or line, and the emissions that come with it.

  • 06

    Equipment failure

    Which assets are likely to fail and when, so maintenance happens before the breakdown.

Predictive and generative AI

Planners can ask why a number moved, and the answer has to come from the forecast model.

Predictive models learn from history and return a forecast. They cannot read a supplier notice or write the weekly review. A language model can do both, and it is not allowed to invent a figure. Every number it quotes comes from the forecast model, with the model version and its assumptions attached.

Next quarter’s demand forecast against last year, by region and product line, with pumps in the South selected at plus 18%. A card beside it asks why pumps are up 18% in the South and answers that two signed contracts start shipping in February and customers are ordering ahead of the March price increase, citing the contracts and the price plan.
  1. 1

    Text becomes signals the model can use

    Language models read sales notes, supplier notices and news, and turn them into dated signals. Each one has to earn its place in a backtest, the same way a price or a promotion does. A signal that shows no lift stays out.

    Candidate signals read from text, each checked against four numbered gates. Buying intent from sales call notes and supplier delays from supplier notices pass all four and are in the model; plant expansions from news and filings failed gate 3 with no lift; site shutdowns from maintenance logs is still being tested. A card names the gates: available point-in-time, leads the target, adds lift in backtest, stays stable.
  2. 2

    Every change is broken into its drivers

    Shapley values split each forecast into what moved it, and the summary for the weekly review is written from those values. The language model is only allowed to quote the forecast model.

    A bridge from last month’s Q2 forecast of 138.0 thousand units a week to this month’s 141.4: new contracts add 2.6, restocking 1.5 and the weather outlook 1.1, while a competitor price cut takes away 1.4 and slower orders 0.8. A summary card written from the drivers says the same in two sentences, from model v9 with data to October 31.
  3. 3

    Planners ask what-if questions in plain English

    The question becomes model inputs and the model runs again. The answer comes back with its range, next to the base case.

    A planner asks what happens if the price increase moves from March to June. The demand model answers that Q2 demand comes in at 147 thousand units a week, range 143 to 151, 3.5% above the base case, and a chart shows the June scenario and its range above the base case of 142 thousand.
  4. 4

    Every model is measured against today’s process

    Error is reported every period as lift over the process the model replaced. When accuracy drifts, the model is flagged and retrained, and a planner signs off before the new version goes live.

    Monthly forecast error for model v9 beside the current process, 32% lower over six months, with November’s error crossing the 14% review line. A card flags seals as drifting since a new product launch: version 10 is retraining, and a planner signs it off before it replaces v9.
Next quarter’s demand forecast against last year, by region and product line, with pumps in the South selected at plus 18%. A card beside it asks why pumps are up 18% in the South and answers that two signed contracts start shipping in February and customers are ordering ahead of the March price increase, citing the contracts and the price plan.

Built to be trusted

Six controls ship in the first release.

Forecasts drive orders, staffing, budgets and prices. Every model we ship carries these six controls from the first release, because a number that reaches an order cannot be explained after the fact.

How the work runs

A forecast ships only if it beats the process it replaces.

  1. 01Baseline and prioritize

    Score candidate forecasts on value, data readiness and risk, and measure today’s process so every gain is counted against it.

  2. 02Assemble data

    Point-in-time features from the systems you already run, built in your data platform.

  3. 03Build

    Predictive models, language model components and agents, chosen by backtest and evaluation.

  4. 04Validate

    Backtests, live runs beside the current process and evaluation sets, reviewed with the people who plan.

  5. 05Deploy and explain

    Monitoring, retraining, drivers and plain-language summaries in the tools your team already uses.

Most work starts with a four-week pilot: one forecast for one business unit or region, scored against today’s process on historical data. Production follows in months two to four, and the next forecasts reuse the same data, evaluation and governance foundation. Everything is built in Python inside your data platform, and the code, pipelines and evaluation harness are yours at the end.

Get to production in 4–6 weeks.

Book a call today.

Talk to Our Experts