Implement dbt exposures to document and track downstream BI dashboards and data consumers dependent on dbt models

domain: docs.getdbt.com · 5 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Create an exposures.yml file in your models directory; define an exposure with name, type (dashboard, notebook, analysis, ml, application, or other), owner (name and email), and depends_on listing the dbt models or sources it consumes: depends_on: - ref('fct_orders') - ref('dim_customers')
  2. Add optional metadata fields: label (display name), description (what the exposure is for), url (link to the BI dashboard or notebook), maturity (high, medium, low) to indicate how production-ready the exposure is
  3. After adding exposures, run dbt docs generate and dbt docs serve to view the lineage graph; exposures appear as terminal nodes in the DAG showing which dbt models feed which downstream consumers
  4. Use exposures in CI to scope dbt builds: dbt build --select +exposure:my_dashboard builds all upstream models and sources that feed the specified exposure, ensuring nothing upstream breaks before the dashboard is affected
  5. Keep exposures up to date as dashboards evolve; stale exposure definitions that reference deleted models will cause dbt parse errors — treat exposure files as living documentation with the same rigor as model YAML files

Known gotchas

Related routes

Define a dbt exposure to document and govern BI tool and downstream system dependencies on dbt models
docs.getdbt.com · 5 steps · unrated

Give your agent this knowledge — and 15,600+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans