Skip to content
Predict.ai

Data & drivers

Forecasting with covariates: weather, promotions, and prices

A covariate is an extra series the model is allowed to see — a promo flag, a temperature, a price. Used well, it explains swings the target's past cannot. Used as a dump of every column you have, it just overfits last quarter.

Updated Aug 17, 2026·9 min read

What a covariate is

A covariate is an extra series the model is allowed to see besides the target. Price. A promo flag. Temperature. Spend. Economists say exogenous. Same job: explain a move that the target’s own past cannot.

Used well, a covariate turns a mystery spike into a known lever. Used as a dump of every column in the warehouse, it memorizes last quarter. Add them one at a time. Keep the ones that move the backtest. Retire the rest without a funeral.

Target + a covariate on the same clock

Demand and temperature covariateUnitsMax °Cheatwave
Ice-cream units (top) and daily max temperature (bottom). The heatwave is visible in both. You may use a weather forecast at origin — not the temperature you will only measure tomorrow.

Must be known ahead

This is the whole contract. If you will not have the value at forecast origin, you may not train as if you will. Tomorrow’s actual temperature is cheating. This morning’s weather forecast is fair. A promo you have not approved is not a feature; it is a scenario. Run it as a what-if, or leave it out.

The usual suspects

  • Calendar: holidays, payday, school terms. Cheap and honest.
  • Price and promo depth — if you can timestamp them.
  • Weather: for melt, freeze, energy, outdoor demand.
  • Marketing: only if the spend is dated, not a monthly lump.

Promotions are the classic mess. A clean flag with depth and coverage helps. A “campaign” field that also includes clearance, stockouts, and a CEO visit will teach superstition. Start with one well-defined lift driver.

Too many inputs

Each extra series is a chance to overfit an accident. Correlated weather products, five flavors of “holiday,” lagged everything — the model will look brilliant in-sample and confused in June. A tournament that includes a univariate baseline will keep you honest. If the kitchen-sink model cannot beat last week plus a calendar, you added noise.

FAQ

What is a covariate in forecasting?
An extra time series the model can use besides the target. Price, promo, holiday, temperature, marketing spend. Some people say exogenous variable. Same job: explain a move the lag of the target cannot.
Can I use tomorrow's weather in today's forecast?
You can use a weather forecast, not the observation you will only have tomorrow. If the covariate is not available at prediction time, it is leakage dressed up as a feature.
Do promotions always help?
A clean promo flag with depth and coverage helps. A messy 'campaign' field that also includes clearance and stockouts will teach the model superstition. Start with one well-defined lift driver.

Keep going

Try it on your data.

Connect an outcome and its history. Predict.ai finds the drivers, races the models, and keeps the forecast live — in the workspace, over the API, and through agents.