Quant Memo
Core

Confounding and the Backdoor Criterion

A confounder is a hidden common cause that makes two unrelated things look correlated; the backdoor criterion is a graphical rule for picking exactly the right set of variables to control for so the confounding disappears.

Prerequisites: Directed Acyclic Graphs for Causality

An analyst notices that hedge funds with more Bloomberg terminals per trader show higher returns, and wonders whether buying more terminals causes better performance. But fund size drives both: bigger funds buy more terminals and have more resources to generate returns through other channels. Terminal count and returns move together not because one causes the other but because a third thing, fund size, causes both. That third thing is a confounder, and the question of exactly which variables to control for to strip its influence out — no more, no fewer — is answered by the backdoor criterion.

An analogy: a false trail with two starting points

Picture two trails that both start at the same trailhead (fund size) and end at two different lookout points (terminals, returns). If you only ever see hikers arriving at the lookouts, the two lookouts will seem connected — busy days at one coincide with busy days at the other — purely because they share a starting point, not because one lookout feeds hikers into the other. To see whether the lookouts are directly connected by their own trail, you need to control for the shared trailhead: compare only hikers who started from the same point. Confounding is exactly this kind of spurious connection through a shared origin, and "closing the backdoor" means blocking that shared-origin path in your analysis.

The criterion, one symbol at a time

Draw the causal structure as a DAG (see directed acyclic graphs for causality): nodes are variables, arrows are direct causal effects. A backdoor path from treatment DD to outcome YY is any path connecting them that starts with an arrow pointing into DD (as opposed to the "front door" path where DD's own arrows lead forward to YY). A set of variables ZZ satisfies the backdoor criterion relative to (D,Y)(D, Y) if:

  1. No variable in ZZ is a descendant of DD, and
  2. ZZ blocks every backdoor path between DD and YY.
P(Ydo(D=d))=zP(YD=d,Z=z)P(Z=z)P(Y \mid do(D=d)) = \sum_{z} P(Y \mid D=d, Z=z)\, P(Z=z)

In plain English: if you can find a set of variables that intercepts every non-causal, backward-pointing route from treatment to outcome, then averaging the treatment-outcome relationship within each value of those variables and re-weighting by how common that value is, recovers the true causal effect — exactly what you'd get from an experiment. do(D=d)do(D=d) denotes intervening to set D=dD=d, as opposed to merely observing D=dD=d.

Worked example 1: closing the backdoor by hand

Fund size SS causes both terminal count TT and returns RR; suppose there's no other link. The backdoor path is TSRT \leftarrow S \rightarrow R. Controlling for SS blocks it. Say among small funds ($50m), average terminal count is 5 and average return is 6%; among large funds ($500m), average terminal count is 20 and average return is 9%. Pooled naively, terminals and returns look strongly related (5 terminals → 6%, 20 terminals → 9%). But suppose that within small funds, going from 3 to 7 terminals moves average return from 6.1% to 5.9% — no real effect — and within large funds, going from 15 to 25 terminals moves it from 9.1% to 8.9% — again no real effect. Conditioning on S={Z}S = \{Z\} reveals the true within-stratum effect of terminals on returns is roughly zero; the pooled correlation was entirely confounding by fund size.

Worked example 2: which set actually works

Suppose the DAG is: ExperienceAdopts New Strategy\text{Experience} \to \text{Adopts New Strategy}, ExperienceReturns\text{Experience} \to \text{Returns}, and separately Market RegimeAdopts New Strategy\text{Market Regime} \to \text{Adopts New Strategy}, Market RegimeReturns\text{Market Regime} \to \text{Returns}, with Experience and Market Regime independent of each other. Two backdoor paths exist: through Experience and through Market Regime. Z={Experience}Z = \{\text{Experience}\} alone leaves the Market Regime backdoor path open — bias remains. Z={Market Regime}Z = \{\text{Market Regime}\} alone leaves the Experience path open. Only Z={Experience,Market Regime}Z = \{\text{Experience}, \text{Market Regime}\} blocks both simultaneously and satisfies the criterion. This is why "control for the obvious variable" is often not enough: you need every distinct backdoor path blocked, not just one.

S (fund size) T (terminals) R (returns) apparent (spurious) link condition here to block backdoor
The dashed apparent link between terminals and returns is entirely produced by the shared cause S; conditioning on S (boxed) blocks the backdoor path and reveals whether any direct effect of T on R remains.
Experience Regime Strategy Returns both must be blocked
Two distinct backdoor paths exist here — through Experience and through Market Regime — and the criterion requires blocking every one of them, not just the most obvious one.

What this means in practice

Every regression that "controls for confounders" is implicitly attempting to satisfy the backdoor criterion, whether or not the analyst draws the DAG explicitly. Drawing the graph first is valuable precisely because it separates the mechanical question ("does my control set block all backdoor paths?") from the intuitive but unreliable habit of throwing in every available variable. The criterion also clarifies what not to control for: variables that are effects of treatment, or that create new spurious paths, should be excluded — see colliders and collider bias and bad controls and post-treatment bias.

The backdoor criterion is a graphical test: a control set ZZ is valid if it contains no descendant of treatment and blocks every backward-pointing path between treatment and outcome — control for exactly that set, and the remaining treatment-outcome association is causal.

The instinct to "control for everything available" is dangerous, not merely wasteful. Some variables — colliders, or descendants of treatment — actually create bias when added rather than removing it. The backdoor criterion is not "more controls are safer"; it's "the right controls are necessary and the wrong controls are harmful." A DAG is what tells you which is which; a regression's R² going up when you add a variable tells you nothing about whether it belongs in your control set.

Related concepts

Practice in interviews

Further reading

  • Pearl, Causality, ch. 3
ShareTwitterLinkedIn