In dbt, a group is a way to organize ownership of project resources (mainly models) by assigning them to a team or domain (e.g., analytics, finance, growth). It’s mostly used for governance and clarity in docs and metadata—not for execution logic like tags.

What groups are used for

  • Show who owns what in dbt docs

  • Add structure to large projects (domains/teams)

  • Power governance features (owners, metadata, and in some setups, access control/guardrails)

How to define a group

Groups are defined in YAML (commonly in a groups.yml file):

 
groups:
  - name: analytics
    owner:
      name: Data Team
      email: data@company.com

How to assign a model to a group

In the model’s YAML (or in dbt_project.yml configs):

models:
  - name: stg_orders
    group: analytics

Group vs tag (quick difference)

  • group = ownership / documentation / organization

  • tag = selection and execution control (dbt build -s tag:...)