📘 Introduction

In this hands-on dbt tutorial, we’ll walk you step-by-step through how to connect dashboards and reports to your dbt DAG using exposures. This makes your data lineage more transparent, keeps stakeholders aligned, and ensures you know exactly how data assets are being consumed.

📌 This is a must-know topic for the dbt Analytics Engineering Certification Exam, so mastering it now puts you one step closer to passing the exam and leveling up your data engineering skills! 👨‍🎓

✅ Prerequisites

☑️ A dbt project set up
☑️ Existing dbt models defined in your models/ directory

💡What is an exposure in dbt?

An exposure in dbt is a way to define and document how downstream assets (like dashboards, reports, or ML models) depend on your dbt models. With exposures, you can:

  • Visualize lineage — see how data flows from raw sources → dbt models → final assets.
  • Improve transparency — give business stakeholders clear visibility into where their data comes from.
  • Track metadata — capture details like ownership, purpose, maturity, and links to downstream assets.

📊 Example: Power BI Report as exposure

In our example we’ll add a Power BI Report called overview_student_course to our DAG. This report depends on two dbt models: dim_student and dim_course.

💡 If you want to know more about Power BI and how to create a report from scratch, check out our posts:

Hands-on Power BI Tutorials
Microsoft Power BI is a powerful business analytics tool that enables users to visualize data, share insights, and create interactive reports and dashboards, facilitating data-driven decision-making. Here you find hands-on tutorials and best practices about Microsoft Power BI. The tutorials are also a valuable resource for preparing for the Microsoft Exam PL-300. Learn how to become a Power BI developer. We explain step by step how you can start from scratch with Power BI.

🗂️1️⃣ Create .yml file

Inside your models/ folder, create a new subfolder: 05_exposures.
Then add a new file named exposures.yml.

💡
You can also add exposures to an existing .yml file — dbt doesn’t enforce where you keep them.

⚙️2️⃣ Add exposure to .yml file

Now, add the Power BI Report as exposure to exposures.yml.

You can view this post with the tier: Academy Membership

Join academy now to read the post and get access to the full library of premium posts for academy members only.

Join Academy Already have an account? Sign In