
Learn how dbt turns sql into production ready data transformations with version control, testing, automatic documentation, and modular, reusable models across any data warehouse, taking you from zero to hero.
Import Airbnb Berlin data into Snowflake, then cleanse, transform with dbt, and export to a BI tool. Build an auditable, incremental data pipeline with explicit dependencies and data quality tests.
Learn how Snowflake key-pair authentication enables secure non-human access. Generate and register a public key, protect the private key, and use it in dbt and BI tools with automation.
set up automatic snowflake data import and configure dbt by generating keys, linking your snowflake account, and downloading the dbt profiles yaml and preset instructions.
Explore Snowflake behind the scenes by generating private and public keys, configuring keeper authentication, and setting up dbt with roles, permissions, and preset BI tool through profiles YAML.
Explore how the snowflake setup creates an Airbnb database with schemas and tables, defines dbt and preset users, and assigns transform and reporter roles for data governance and BI access.
Explore the dbt project folder and its YAML configuration, including profiles like Airbnb, and the core folders models, analysis, tests, seeds, macros, and snapshots.
dbt Mark and the dbt logo are trademarks of dbt Labs, Inc.
Create dbt staging models for listings, hosts, and reviews as views, rename columns with ctes in Snowflake, then run dbt to materialize them in the dev schema.
Explore building a core data layer in dbt by creating cleansed listings and dim tables, linking models with dbt's ref tag, and managing dependencies and materializations in Snowflake.
Set a default view materialization in the dbt project YAML, then override to tables for cleansed listings and dim host; run dbt and refresh Snowflake to verify.
Master incremental strategies in dbt, including append, merge with a unique key, and delete-and-insert for production pipelines. Consider insert override for date-partitioned tables and micro batch for large datasets.
Create a sources YAML to convert raw tables into a structured abstraction in dbt, alias Airbnb listings, hosts, and reviews as sources, and compile to validate references.
Create and configure a dbt snapshot to track changes in source data using the timestamp strategy, with YAML definitions, a unique key, and invalidate on delete.
Create a host snapshot YAML named skidrow host, apply it to the hosts table, run the DB2 snapshot, then re-run after updating a record; check results in the Snowflake UI.
Explore the three test types in dbt: unit tests, data tests, and contracts. See how generic and singular tests enforce data quality, schemas, and relationships.
Explore dbt's four generic tests—unique, not null, relationships, and accepted values—applied to the dim listings cleanse model, validating listing_id, host_id, and room_type via a schema YAML.
Observe failures in dbt tests, inspect compiled sql in target folder, and use dash x to stop after first failure while checking values not in the list in Snowflake.
Learn to control test outcomes by setting severity to warning vs error using custom generic tests and YAML overrides, turning failures into warnings while maintaining pipeline integrity.
Master Jinja basics by using ginger and macros to extend dbt projects, programming inside your sequence with variables, conditionals, loops, functions, and reusable components.
Create a new dbt macro select positive values that takes a model and a column, convert to a ginger expression, and use dbt show to display compiled results.
Master advanced jinja in dbt by using if/else conditionals and loops to build dynamic selects, manage comma placement, control whitespace, and enable logging in macros.
Master advanced macros in dbt by building a macro that retrieves model columns via the adapter, enforces non-empty strings in where clauses, and demonstrates inline usage.
Explore dbt documentation best practices by keeping docs close to your analytics code, using schema YAML descriptions or standalone markdown files, and compiling to HTML for easy web access.
Learn to add documentation to dbt models, sources, macros, and tests via YAML descriptions, generate HTML documentation with dbt docs generate, and view a lightweight documentation server.
Become a dbt professional from scratch with this single course solving a real-world problem step by step, covering both theory and hands-on practice. Whether you want to level up your analytics engineering skills or earn the dbt Analytics Engineering Certification, this course takes you all the way: Zero to Hero.
In a hurry? The basic and intermediate topics are compressed to the first 3-4 hours of the course.
Want to get Certified? The course now covers every topic required in the 2026 Analytics Engineering Certification Exam and features a sample certification test.
This is the MOST COMPLETE, CONTINUOUSLY UPDATED independent dbt course in the world, now fully aligned with the 2026 dbt Certification exam. Every certification topic is covered in depth. Not planning to get certified? No problem - the same hands-on lessons make you job-ready either way.
Delivered by an instructor with 20+ years of Data Engineering experience. This is the TOP RATED and BESTSELLER dbt course on Udemy.
"Fantastic course. Well-chosen examples perfectly illustrate the many features that are covered. The pacing is spot on and it is easy to replicate the examples."
"Excellent course! Edit: I managed to pass the dbt certification exam. I couldn't have done it without your help! Again, it's an awesome course!"
"I love how you're explaining everything at just the right level!"
The structure of the course is designed to have a top-down approach. It starts with the Analytics Engineering Theory - all you need to know to put dbt (Data Build Tool) in context and to have an understanding of how it fits into the modern data stack. We start with the big picture; then, we go deeper and deeper. Once you learn about the pieces, we will shift to the technicalities - a practical section - which will focus on putting together the dbt “puzzle”. The practical section will cover each and every single dbt feature present today through the construction of a complete, real-world project; Airbnb. This presents an opportunity for us to show you which features should be used at what stage in a given project, and you will see how dbt is used in the industry.
PRACTICAL SECTION:
The practical section will go through a real-world Airbnb project where you will master the ins and outs of dbt! We put special focus on getting everyone up and ready before the technical deep dive; hence we will start off by setting up our Development Environment:
MAC Development Environment Setup
WINDOWS Development Environment Setup
Creation and Activation of Virtual Environments
Installing dbt
Setting up our Database
Once we are ready - among several other technical topics, the following features will be covered;
dbt Models
dbt Materializations
dbt Tests: Generic and Singular tests, Unit tests, Custom Tests, Data Contracts, and advanced testing techniques
dbt Documentation
dbt Sources, Seeds, Snapshots
dbt Hooks and Operations
Jinja and Macros
dbt Packages
dbt Fusion
Visual Studio Code Extensions
Analyses, Exposures
dbt Seeds
Data Visualization and BI (Preset)
Working with Great Expectations (dbt-expectations)
Debugging tests in dbt
dbt Orchestration
Python Models
Constraints
Comprehensive overview of Selectors
Most useful commands for speeding up dbt work
Microbatching
Model Versioning, Deprecation and Disabling Models
dbt in Production / Slim CI / defer / PRs / Production Best Practices
Certification Preparation Guide and Practice Test sample
Once the theory and the practical stages are finished, we will dive into the best practices and more advanced topics. The course is continuously updated; whenever dbt publishes an update, we adjust the course accordingly, so you always be up to date!
THEORETICAL SECTION:
Among several other topics, the theoretical section puts special emphasis on transferring knowledge in the following areas;
Data-Maturity Model
Well-functioning Data Architectures
Data Warehouses, Data Lakes, and Data Lakehouses
ETL and ELT procedures and Data Transformations
Fundamentals of dbt (Data Build Tool)
Analytics Engineering
Modern Data Stack
Slowly Changing Dimensions
CTEs
Once we understand the theoretical layer and how dbt fits into the picture, we will start building out a dbt project from scratch, just as you would do in the real world.
Who is this course for?
Data Engineers
Data Analysts
Data Scientists
BI Developers
BI Analyst
... and anyone who interacts with data lake/data warehouse/data lakehouse or uses SQL!
Course Level Explained (Zero > Hero)
The course has no expectations about your abilities and starts education from zero. Every exercise is an unavoidable step in your studies. In the same way, don't start an exercise of a superior level without completing the preceding ones: you will be in difficulty if you do so. Practice is the only way to learn, and it cannot be taken lightly. We will be next to you along the journey and you have our absolute support!
When the Airbnb project is presented to you, you must do it entirely, without omitting any guidelines, and by understanding the objective. A project "almost completely" done is often a project "totally incomplete" for us. Give special attention to detail. Your only reliable source of information regarding the instructions is the pedagogical team, don't trust the "I've heard".
By the time you complete the course, you will be equipped with both a very solid theoretical understanding and practical expertise with dbt. All the fundamentals, dbt features, best practices, advanced techniques and more will be covered in our course, which will make you become a master in dbt. Are you ready? ;)
How to get help?
We just published our initial round of Discussions on Udemy which is the easiest and most efficient way for you to post questions, receive answers, and peruse questions from other students. If you have questions or feedback, please reach out to us!
That wraps it up for us for now!
Once again, thank you for being a part of this course.
We can't wait to get started with you soon!
All the best,
Zoltan C. Toth
dbt Mark and the dbt logo are trademarks of dbt Labs, Inc.