All Practice Exams

100+ Free dbt Analytics Engineering Practice Questions

Pass your dbt Analytics Engineering Certification exam on the first try — instant access, no signup required.

✓ No registration✓ No credit card✓ No hidden fees✓ Start practicing immediately
100+ Questions
100% Free
1 / 10
Question 1
Score: 0/0

What is the recommended way to reference another model from a dbt model?

A
B
C
D
to track
2026 Statistics

Key Facts: dbt Analytics Engineering Exam

65

Questions

dbt Labs

2 hours

Time Limit

dbt Labs

65%

Passing Score

dbt Labs

$200

Exam Fee

dbt Labs

dbt 1.7

Version

dbt Labs blueprint

Talview

Proctor

dbt Labs

As of April 15, 2026, the dbt Labs certification page lists the Analytics Engineering exam as 65 questions, 2 hours, with a 65% passing score and a $200 fee, delivered online with live proctoring via the Talview platform. The current blueprint targets dbt version 1.7 and covers developing dbt models, governance, debugging, managing data pipelines, tests, documentation, external dependencies, and leveraging dbt state. dbt Labs includes multiple question types including multiple-choice, fill-in-the-blank, matching, and hotspot questions that display a dbt file or DAG.

Sample dbt Analytics Engineering Practice Questions

Try these sample questions to test your dbt Analytics Engineering exam readiness. Each question includes a detailed explanation. Start the interactive quiz above for the full 100+ question experience with AI tutoring.

1What is the recommended way to reference another model from a dbt model?
A.{{ ref('model_name') }}
B.SELECT * FROM public.model_name
C.source('schema','model_name')
D.include model_name
Explanation: ref() tells dbt about the dependency so the DAG is built correctly and the schema/database is resolved per environment. Hard-coded SQL breaks the DAG; source() is for raw external tables; 'include' is not valid.
2Which dbt function declares a dependency on a raw external table defined in a sources YAML?
A.{{ source('source_name','table_name') }}
B.{{ ref('source_name','table_name') }}
C.{{ raw('source_name.table_name') }}
D.{{ model('source_name','table_name') }}
Explanation: source() resolves the fully qualified raw table as configured in the project's sources.yml. ref() is only for dbt models; 'raw' and 'model' are not built-in functions.
3Which materialization is the default when no materialization is specified?
A.view
B.table
C.incremental
D.ephemeral
Explanation: If you do not set materialized, dbt defaults to 'view'. Views are cheap, always up to date, but require compute on every read.
4An incremental model must include what Jinja check to separate initial run logic from incremental logic?
A.{% if is_incremental() %}
B.{% if first_run() %}
C.{% if incremental_build %}
D.{% is_incremental %}
Explanation: is_incremental() returns true only on incremental runs. The { if is_incremental() } block typically contains the WHERE clause that limits to new rows.
5Which incremental strategy replaces rows matching a unique_key rather than appending?
A.merge
B.append
C.insert_overwrite
D.view
Explanation: The merge strategy uses the warehouse's MERGE to upsert rows matching the unique_key. Append simply adds new rows; insert_overwrite replaces partitions (typical on BigQuery).
6When is the 'ephemeral' materialization most appropriate?
A.When a model is only reused downstream and should be inlined as a CTE without storing data
B.For slow-changing large dimension tables
C.For final reporting models
D.For snapshots
Explanation: Ephemeral models do not create a physical object. Downstream models include their SQL as a CTE. They keep reusable logic tidy without storage overhead.
7Which dbt command runs your models against the target warehouse?
A.dbt run
B.dbt compile
C.dbt docs generate
D.dbt clean
Explanation: dbt run executes models. dbt compile only renders SQL without running it. docs generate builds documentation; clean removes build artifacts.
8Which command both runs models and executes tests, ordered by the DAG?
A.dbt build
B.dbt run
C.dbt test
D.dbt parse
Explanation: dbt build runs seeds, models, snapshots, and their tests together in dependency order. Running then testing separately is the older pattern.
9In dbt, where is the primary configuration file for project-level defaults?
A.dbt_project.yml
B.profiles.yml
C.schema.yml
D.packages.yml
Explanation: dbt_project.yml holds project-wide settings: name, version, model paths, default materializations by folder, vars, and more.
10Which file typically holds the warehouse connection details for dbt Core?
A.profiles.yml
B.dbt_project.yml
C.sources.yml
D.schema.yml
Explanation: profiles.yml (usually in ~/.dbt/) stores targets with credentials and warehouse-specific fields. dbt_project.yml chooses the profile by name.

About the dbt Analytics Engineering Exam

The dbt Analytics Engineering Certification validates the ability to design, build, test, document, and troubleshoot dbt models. It covers sources, refs, materializations, tests, snapshots, seeds, Jinja and macros, packages, documentation, incremental strategies, and governance concepts used by analytics engineers in dbt Core and dbt Cloud.

Assessment

65 questions including multiple-choice, matching, fill-in-the-blank, and hotspot

Time Limit

2 hours

Passing Score

65%

Exam Fee

$200 (dbt Labs)

dbt Analytics Engineering Exam Content Outline

25%

Developing dbt Models

Building models using ref() and source(), choosing materializations (view, table, incremental, ephemeral), configuring models in dbt_project.yml and config blocks, and using Jinja.

15%

Model Governance and Project Structure

Groups, access modifiers (public, protected, private), contracts, versions, and structuring projects with staging, intermediate, and marts layers.

15%

Debugging Data Modeling Errors

Reading dbt compile and run output, interpreting logs, fixing circular refs, resolving missing source errors, and using dbt debug.

10%

Managing Data Pipelines

Running dbt build, using selectors (+, @, state:, tag:, +model+), scheduling, and splitting long pipelines into state-aware runs.

10%

Tests

Generic tests (unique, not_null, accepted_values, relationships), singular tests, custom generic tests, severity levels, store_failures, and data tests versus unit tests.

10%

Documentation

schema.yml descriptions, doc blocks, dbt docs generate, persist_docs, DAG interpretation, and exposing lineage.

10%

External Dependencies

packages.yml, installing hub and Git packages, version pinning, referencing package macros and models, and managing conflicts.

5%

Leveraging dbt State

manifest.json, state:modified, state:new, defer, and using Slim CI style runs to only build changed resources.

How to Pass the dbt Analytics Engineering Exam

What You Need to Know

  • Passing score: 65%
  • Assessment: 65 questions including multiple-choice, matching, fill-in-the-blank, and hotspot
  • Time limit: 2 hours
  • Exam fee: $200

Keys to Passing

  • Complete 500+ practice questions
  • Score 80%+ consistently before scheduling
  • Focus on highest-weighted sections
  • Use our AI tutor for tough concepts

dbt Analytics Engineering Study Tips from Top Performers

1Memorize dbt project YAML hierarchy: dbt_project.yml, profiles.yml, schema.yml, and which config lives where.
2Practice writing ref() and source() calls and explain why hardcoded table names break the DAG.
3Know incremental model patterns: unique_key, is_incremental(), and the difference between append, merge, delete+insert, and insert_overwrite strategies.
4Review generic tests (unique, not_null, accepted_values, relationships) and write at least one custom generic test with {% test %}.
5Understand state:modified and defer so Slim CI style selective runs make sense when you see them on the exam.
6Get comfortable reading a DAG image — hotspot questions will show you a diagram and ask you to click the right node.

Frequently Asked Questions

How many questions are on the dbt Analytics Engineering exam?

The dbt Labs exam page lists 65 questions with a 2 hour time limit and a 65% passing score. dbt Labs includes an undisclosed number of unscored questions that do not count toward your final score. Expect multiple-choice, matching, fill-in-the-blank, and hotspot questions that ask you to click on a dbt file or DAG area.

How much does the dbt Analytics Engineering exam cost?

The dbt Labs certification page lists a $200 USD exam fee. Registration is through Talview, and the exam is delivered online with live proctoring. Results are shown immediately after you finish.

What dbt version does the exam target?

The current Analytics Engineering blueprint targets dbt version 1.7. Study groups, access, contracts, versions, and the newer materializations in 1.7. Do not over-index on legacy features removed or replaced before that version.

Do I need dbt Cloud or is dbt Core enough?

Either works for Analytics Engineering topics. The exam is centered on modeling, testing, documentation, and state — features that behave the same in dbt Core and dbt Cloud. dbt Cloud-specific administration (environments, jobs, RBAC, Mesh) is covered by the dbt Architect exam instead.

Which materializations should I memorize?

Know the four core materializations: view (default, no storage), table (stored, rebuilt each run), incremental (append or merge strategies, unique_key), and ephemeral (CTE inlined into downstream models). Understand when each is appropriate and the default behavior of dbt run versus dbt build.

How long should I study?

If you already use dbt at work, 2 to 4 weeks with 20 to 30 hours of focused practice is typical. For newer analytics engineers, plan 6 to 8 weeks and build a sample project with sources, staging, marts, tests, snapshots, and at least one incremental model.