Why Trace Paths?
A directed acyclic graph (DAG) represents assumed causal relationships with arrows between variables. To reason about an exposure \(X\) and an outcome \(Y\), it is not enough to inspect only the arrow directly connecting them: information can also travel along longer routes through other variables. Tracing these routes helps distinguish paths that carry causal effects from paths that can create noncausal associations, and shows why conditioning on a variable can change which paths are open.
A path’s status is determined by its arrow pattern and by which variables are conditioned on. This is a property of the graph and the specified conditioning set; it is not, by itself, a decision about which variables should be included in a regression model. That requires further criteria.
For example, \(X\to M\to Y\) is a causal path: it represents an effect of \(X\) that travels through \(M\). In contrast, \(X\leftarrow U\to Y\) is noncausal. The arrows on that route point away from \(U\), not in a directed chain from \(X\) to \(Y\). A noncausal path need not always begin with an arrow into \(X\); its defining feature is simply that the entire path is not directed from \(X\) to \(Y\).
Colliders, Noncolliders, and Path Status
To decide whether conditioning blocks or opens a path, inspect each intermediate node on that path. A node is a collider on a path when the two arrows along that path both point into it, as in \(A\to C\leftarrow B\). A node on the path that is not a collider is a noncollider. The same variable can be a collider on one path and a noncollider on another; classify it from the arrows on the particular path being traced.
These rules give two contrasting effects. Conditioning on a noncollider blocks a path that would otherwise be open. Conditioning on a collider, or on one of its descendants, can open a path that would otherwise be blocked. A path with several intermediate nodes is open only if it passes the relevant condition at every node on that path.
“Open” and “blocked” describe whether a path can transmit statistical association under the graph’s assumptions. They do not say that two variables must have a detectable association in every data set: effects can cancel, be weak, or be obscured by measurement and sampling variation. Nor does an open path alone establish that a causal effect exists.
Worked Example: A Common Cause and a Direct Effect
Suppose a hypothetical DAG contains \(U\to X\), \(U\to Y\), and \(X\to Y\). Here \(X\) is an exposure, \(Y\) an outcome, and \(U\) a common cause. List and classify the paths between \(X\) and \(Y\), first with no conditioning and then conditioning on \(U\).
There are two paths. First, \(X\to Y\) is a directed causal path. It has no intermediate node, so conditioning on \(U\) does not alter this path’s status: it remains open.
Second, \(X\leftarrow U\to Y\) is a noncausal path. Its only intermediate node is \(U\), and the arrows on this path do not both point into \(U\); \(U\) is a noncollider. With no conditioning, \(U\) is unconditioned, so the path is open. If we condition on \(U\), that noncollider is conditioned on and the path is blocked.
Thus, in this graph, conditioning on \(U\) blocks the common-cause path while leaving the direct path open. This classification describes the paths; it does not by itself establish that conditioning on \(U\) is appropriate for a particular analysis.
How Conditioning Can Block a Causal Path
An intermediate variable on a causal path is ordinarily a noncollider. If it is conditioned on, the path is blocked. For instance, conditioning on \(M\) blocks \(X\to M\to Y\), because \(M\) is a noncollider on that path. If the graph also includes \(X\to Y\), that separate direct path remains open: \(M\) is not on it.
This illustrates why a path-by-path account matters. Conditioning does not erase a variable or remove every relationship involving it. It changes the status of paths that pass through that variable, according to the collider and noncollider rules. A causal path can be indirect, and blocking it is different from blocking a noncausal path.
Worked Example: Conditioning on a Mediator
Consider the hypothetical DAG \(X\to M\), \(M\to Y\), and \(X\to Y\). Treat \(M\) as an intermediate variable through which part of an effect could travel. Trace the paths from \(X\) to \(Y\), with no conditioning and then with \(M\) conditioned on.
The first path is \(X\to Y\), which is directed and causal. It contains no intermediate node, so it is open in both cases.
The second path is \(X\to M\to Y\), which is also directed and causal. Without conditioning, its intermediate node \(M\) is a noncollider that is unconditioned, so the path is open. After conditioning on \(M\), the noncollider is conditioned on, so this path is blocked.
Therefore, conditioning on \(M\) blocks the indirect causal path in this diagram but not the direct path. The diagram alone does not tell us which association or causal effect an analysis should target; it shows only how this particular conditioning changes the path statuses.
Why Conditioning on a Collider Is Different
At a collider, two arrows meet head-to-head: \(A\to C\leftarrow B\). The path through \(C\) is blocked if neither \(C\) nor any descendant of \(C\) is conditioned on. Conditioning on \(C\) can open that path. Conditioning on a descendant can also open it, even when \(C\) itself is not conditioned on.
A simple hypothetical calculation illustrates the collider case. Let \(A\) and \(B\) be independent binary variables, each equally likely to be 0 or 1, and let \(C=1\) exactly when \(A=B\). This is a simple data-generating example with arrows \(A\to C\leftarrow B\). Before conditioning, \(P(A=1,B=1)=1/4\). Given \(C=1\), the only possible pairs are \((0,0)\) and \((1,1)\), each with conditional probability \(1/2\). Thus \(P(A=1,B=1\mid C=1)=1/2\), while \(P(A=1\mid C=1)P(B=1\mid C=1)=(1/2)(1/2)=1/4\). The variables, independent before conditioning, are associated within the conditioned group. This example shows concretely how conditioning on a common effect can open a path; the DAG path rule applies more generally than this particular numerical setup.
Worked Example: Conditioning Opens a Collider Path
A hypothetical graph has \(X\to C\), \(U\to C\), and \(U\to Y\). Trace the path \(X\to C\leftarrow U\to Y\) with no conditioning, with \(C\) conditioned on, and with a descendant \(D\) of \(C\) conditioned on.
The path is noncausal from \(X\) to \(Y\): it is not a fully directed sequence from \(X\) to \(Y\). At \(C\), the arrows on the path meet head-to-head, so \(C\) is a collider. At \(U\), the path has \(C\leftarrow U\to Y\), so \(U\) is a noncollider.
With no conditioning, \(C\) is an unconditioned collider and blocks the path. The path is therefore blocked, even though \(U\), a noncollider, is also unconditioned. If we condition on \(C\), the collider condition for an open path is met, and \(U\) remains an unconditioned noncollider. The path is open. If instead we condition on \(D\), a descendant of \(C\), the collider condition is again met; with \(U\) unconditioned, the path is open.
The contrast is important: conditioning on the noncollider \(U\) would block this path, while conditioning on the collider \(C\), or its descendant \(D\), opens it. The conclusion concerns this path in this graph, not every association involving these variables.
A Reliable Path-Tracing Procedure
For a small DAG, a systematic pass prevents common arrow-reading errors. Trace each distinct route between the exposure and outcome separately. Do not decide that a route is causal just because some arrows point forward; every arrow on a causal path must point from \(X\) toward \(Y\).
List the nodes in order from exposure to outcome, following adjacent arrows regardless of their direction.
It is causal only if all arrows point along the route from exposure to outcome; otherwise it is noncausal.
At each node, check whether both arrows on this path point into it. Mark that node as a collider if they do; otherwise mark it as a noncollider.
A conditioned noncollider blocks the path. An unconditioned collider with no conditioned descendant blocks the path. If neither condition blocks any node on the route, the path is open.
Common Mistakes
- Calling every open path causal. A path is causal only when all its arrows point forward from exposure to outcome. An open common-cause path can still be noncausal.
- Reversing the collider rule. Conditioning blocks a path at a noncollider, but can open one at a collider. Check where the arrowheads meet before applying the rule.
- Checking only the endpoints. One blocked intermediate node is enough to block the whole path, even if every other node satisfies the condition for openness.
- Assuming conditioning on a variable changes every path. Only paths containing that variable, or a collider for which it is a descendant, can have their status changed by conditioning on it.
- Treating a diagram as proof of causation. Arrows encode causal assumptions. Path tracing follows those assumptions; it does not establish that they are correct.
Check Your Understanding
For each question, trace the specified path and apply the conditioning rule.
- In \(X\leftarrow U\to Y\), is the path causal or noncausal? Is it open with no conditioning, and what happens if \(U\) is conditioned on?
- In \(X\to M\to Y\), classify \(M\) on the path and state whether conditioning on \(M\) blocks or opens the path.
- In \(X\to C\leftarrow U\to Y\), which node is the collider? Is the path open when no variables are conditioned on?
- For the graph in question 3, what happens to the path if \(C\) is conditioned on? What if a descendant of \(C\) is conditioned on instead?
- Can a graph contain both an open causal path and a blocked noncausal path between the same exposure and outcome? Explain using a path-by-path argument.