dbt Exposure Impact Matrix

Paste a dbt manifest excerpt and changed models to see downstream impact before you merge, all in your browser

Everything runs in your browser. The manifest excerpt and changed model names you paste are not uploaded, logged, or stored. This is a review aid; confirm downstream owners and tests before you merge.

Paste a dbt manifest.json excerpt and the changed model names, then select Build impact matrix. A sample manifest and two changed models are loaded so you can try it right away.

About the dbt exposure impact matrix

The dbt exposure impact matrix turns a dbt manifest excerpt and a list of changed models into a downstream impact read before you merge. Paste the relevant slice of your manifest.json and the model names you changed, and the tool walks the lineage graph to list every downstream exposure, dashboard, test, and model that depends on what you touched, along with the owner to notify and a suggested reviewer. It is built for the moment in a pull request when you need to know who and what a model change will affect before it lands.

A sample manifest and two changed models are loaded so you can see a matrix right away: a staging model and a fact model that feed a revenue mart, two data tests, and two exposures, a BI dashboard and an ML model, each with an owner. Everything runs in your browser. The manifest excerpt and model names you paste are never uploaded, logged, or stored, which matters because a manifest can contain schema names, owner emails, and dashboard URLs. When the matrix looks right, download the release-review CSV or copy the release note for your pull request.

How to use

  1. Generate your manifest with dbt (for example dbt compile or dbt docs generate) and open target/manifest.json.
  2. Copy the slice that covers your changed models and their downstream graph: the nodes, sources, and exposures objects, or the whole file if it is small.
  3. Paste that excerpt into the manifest box. A sample manifest is loaded so you can see the format the tool expects.
  4. List the models you changed, one per line or comma-separated, by model name, unique_id, or file path.
  5. Select Build impact matrix to see the downstream exposures, dashboards, tests, and models with their owners, then download the CSV or copy the release note for your review.

Worked examples

A changed staging model flags a downstream executive dashboard

Because the dashboard exposure depends on the fact model that depends on the changed staging model, it is flagged high impact with its owner so you notify them before reported numbers move.

A downstream data test is surfaced as medium impact

A not_null or unique test that depends on the changed model is listed so you run it before merging, since a model change is a common reason a previously green test starts to fail.

A changed model that nothing depends on shows no impact

If the pasted excerpt has no downstream exposures, tests, or models for a changed model, the matrix says so, so you can merge a leaf-node change with confidence.

Frequently asked questions

What should I paste in the manifest box?
A dbt manifest.json excerpt: a JSON object with nodes, sources, and exposures. You can paste the whole file when it is small, or just the slice covering your changed models and everything downstream of them. The tool reads each entity's unique_id, name, resource_type, depends_on.nodes, and (for exposures) type and owner. First ship is paste-only; full-project upload is a planned follow-up.
How are changed models matched to the manifest?
Each changed model you list is matched in this order: first by exact unique_id (for example model.my_project.fct_orders), then by model name (fct_orders), then by file path (models/marts/fct_orders.sql or a trailing path segment). The first match wins. A changed model that matches nothing is reported as a parse warning rather than being silently dropped.
What counts as downstream impact?
Anything that depends, directly or transitively, on a changed model: downstream models, data tests, and exposures. Exposures (dashboards, ML models, analyses, applications, and notebooks) are flagged high impact because a real consumer depends on the output, and the matrix shows their owner so you know who to notify. Tests are medium impact and downstream models are low, so your attention stays on the consumers most likely to be affected.
Is my manifest sent anywhere?
No. The parse and the lineage traversal run entirely in your browser. The manifest excerpt, model names, owner names and emails, schema names, and dashboard URLs are never uploaded, logged, or stored, and they are not included in any analytics. Only coarse, anonymous count bands are recorded so we can tell how often the tool is used.
Does this replace dbt Cloud or a CI impact check?
No. It is a fast, paste-based triage aid for a pull request. It does not run dbt, it does not see your warehouse, and it only knows about the lineage in the excerpt you paste. Keep using dbt Cloud, defer-state CI checks, or a tool like Datafold for authoritative, column-level impact analysis.
Is the dbt exposure impact matrix free?
Yes. It is free to use and does not require an account.

Use this again tomorrow

Save this page so it's one tap away when you need a quick result.

Bookmark this tool

Take a 2-minute brain break.

Play Daily Challenge on sts.games