← Back to thinking

Why a highly accurate model can still make terrible decisions

2 Oct 2026

Professor Dan FranksProfessor Dan Franks

Two models. One predicts sales almost perfectly, yet gives disastrous business advice. The other is a terrible forecaster, yet gets the decision exactly right and boosts profit.

What's going on?

Every data science model review seems to eventually arrive at the same slide: MAPE, R², backtesting and holdout accuracy. These are all measures of how well the model predicts. If the accuracy is good, the data scientists are happy. The model is accurate, so surely we can now use it to make data-driven business decisions? How much to spend, what to price, where to take action.

But accuracy metrics grade exactly one skill: given what we observed, how close was the prediction to what happened? That's the wrong exam for data science designed for decision making. It's passive.

Business decisions are active: if we take action, what happens? To those inexperienced in causal thinking, these might sound like the same question. But they're very different. And a model can ace one while failing the other completely.

Everyone knows that correlation does not imply causation. But data scientists often don't acknowledge the close cousin of that trap: predictive power does not equal causation either. A model can forecast beautifully and still be worse than useless for deciding what to do.

We can show this with a very simple case: just three variables and a simulation. Both examples that follow are deliberately minimal toy models, stripped down to abstract away the clutter of a real system, so the mechanism stands out sharply and nothing hides behind complexity.

If we simulate the world, we know what is actually going on. It's our ground truth. We can use the simulation to generate data from a known process, then fit our models to it and see how well they understand what's going on.

So when a model claims "acting on A does nothing to the outcome C", we can check it against a ground truth that no real dataset ever gives you. We know the real answer to check against.

A simple three-variable example shows that this is not because of complexity. Rather, it's a fundamental mismatch between predictive models and their understanding of the world in which we need to act to change outcomes, rather than just predict them given no action.

Case 1

The high-accuracy model that makes bad decisions

Causal diagram of the simulated world. Marketing spend A has a positive arrow to sales C, and both A and C have negative arrows into B, the support team's free capacity, which therefore sits downstream of sales.

Scatter plot of predicted against actual sales for model 1. Every point sits tight on the diagonal, so by any accuracy metric the model is superb.

In causal inference we call B a variable on a bad control path, here a consequence of the outcome used as a predictor. Conditioning on something downstream of sales lets the model "peek at the answer", which makes accuracy look wonderful and makes every coefficient about levers meaningless. Here the wiring flips the estimated effect of A to the wrong sign outright; other wirings merely shrink it towards zero. There are other bad controls too, but the point here is that accuracy doesn't care about bad controls, and will actively use them if it gets better predictions. That creates bad decision-making algorithms.

Case 2

The low-accuracy model that makes great decisions

Causal diagram of the second simulated world. Discount depth A has a positive arrow to units sold C, and unobserved demand shocks B also feed into C, with B unmeasured and independent of A.

The ML model fitted to the simulated data predicts units sold from discount depth alone. As a result its forecasts are poor. The scatter graph of predicted versus actual is a cloud. MAPE is terrible, R² is low, and in any accuracy / predictive-power bake-off this model finishes dead last. It's not a good forecaster.

Scatter plot of predicted against actual units for model 2. The points form a wide cloud far from the diagonal, so as a forecaster the model is poor.

Why accuracy can't grade the decision

For each case, the accuracy score told you nothing about the decision-making ability of the model. Case 1 would be near-perfect on MAPE, R², every holdout and backtest, yet got the lever's sign backwards. Case 2 was terrible on those metrics, yet would nail the best action to take exactly. High accuracy sat with a disastrous decision; low accuracy sat with the right one.

You don't have to choose

The question to ask instead

An accurate model tells you what tomorrow looks like if you change nothing. Only a causal model tells you what tomorrow looks like because of what you do. Don't let the first one grade the second one's exam.