Lineage is provenance. For any given table, field, or number on a dashboard, it answers: which sources did this originate from, what transformations were applied, in what order, and what else depends on it downstream. Column-level lineage does this per field rather than per table, which is the version that's actually useful when you're trying to work out why one number is wrong.
It gets built two ways. Static lineage parses your SQL, dbt models, and pipeline code to derive the dependency graph without running anything. Runtime lineage captures what actually happened during execution, which catches dynamic behavior that static parsing misses but only covers paths that ran. Most serious setups combine both, because each one's blind spot is the other's coverage.
Two questions make it worth the effort. Backward: this number looks wrong, where did it come from? Instead of manually reading through six layers of transformations, you follow the graph to the source and find the upstream job that failed. Forward: we need to change this schema, what breaks? Instead of announcing a change and waiting to find out, you enumerate every downstream consumer first. The forward direction is the one that prevents incidents rather than shortening them.
Compliance turns this from useful to mandatory. GDPR and similar regimes give people the right to have their data deleted, and you cannot honor that if you don't know every place a record propagated to. The same applies to demonstrating that regulated data never reached a system it wasn't permitted in. Auditors ask for the graph, and "we're fairly sure" is not an answer.
The AI extension of this is still immature and increasingly important. When a model produces an answer, the equivalent question is which documents, embeddings, memories, and tool outputs contributed to it, and where each of those came from. That's lineage for a probabilistic system, and it's what makes an AI answer auditable rather than merely plausible. Teams building for regulated environments are discovering that they need to log retrieval provenance from day one, because reconstructing it after the fact is impossible.
Why It Matters
Lineage is what makes debugging and compliance tractable at scale. Without it, tracing a wrong number is manual archaeology across dozens of transformations, and schema changes ship blind. With AI systems consuming data and generating outputs that get consumed further downstream, the provenance chain now extends past the warehouse into model responses, and regulated industries increasingly need that whole chain to be reconstructible.
Example
A daily revenue figure comes in 12% low. Without lineage, an analyst spends a day reading transformation code backwards. With column-level lineage, they trace the field through three dbt models to a currency conversion step, see that its upstream exchange-rate source last refreshed 40 hours ago, and identify the failed job in minutes. They then use forward lineage to list the nine dashboards and two AI assistants that consumed the bad figure, and notify those consumers before anyone acts on it.