docs
- Models
- Sources
- Seeds
- Snapshots
- Analyses
- Macros
You can configure docs behavior for many resources at once by setting in dbt_project.yml. You can also use the docs config in properties.yaml files, to set or override documentation behaviors for specific resources:
models:
  <resource-path>:
    +docs:
      show: true | false
      node_color: color_id # Use name (such as node_color: purple) or hex code with quotes (such as node_color: "#cd7f32")
version: 2
models:
- name: model_name
  docs:
    show: true | false
    node_color: color_id # Use name (such as node_color: purple) or hex code with quotes (such as node_color: "#cd7f32")
This property is not implemented for sources.
You can use the docs property in YAML files, including the dbt_project.yml:
seeds:
  <resource-path>:
    +docs:
      show: true | false
      node_color: color_id # Use name (such as node_color: purple) or hex code with quotes (such as node_color: "#cd7f32")
version: 2
seeds:
  - name: seed_name
    docs:
      show: true | false
      node_color: color_id # Use name (such as node_color: purple) or hex code with quotes (such as node_color: "#cd7f32")
You can use the docs property in YAML files, including the dbt_project.yml:
snapshots:
  <resource-path>:
    +docs:
      show: true | false
      node_color: color_id # Use name (such as node_color: purple) or hex code with quotes (such as node_color: "#cd7f32")
version: 2
snapshots:
  - name: snapshot_name
    docs:
      show: true | false
      node_color: color_id # Use name (such as node_color: purple) or hex code with quotes (such as node_color: "#cd7f32")
You can use the docs property in YAML files, except in dbt_project.yml. Refer to Analysis properties for more info.
version: 2
analyses:
  - name: analysis_name
    docs:
      show: true | false
      node_color: color_id # Use name (such as node_color: purple) or hex code with quotes (such as node_color: "#cd7f32")
You can use the docs property in YAML files, except in dbt_project.yml. Refer to Macro properties for more info.
version: 2
macros:
  - name: macro_name
    docs:
      show: true | false
Definition
The docs property can be used to provide documentation-specific configuration to models. It supports the attribute show, which controls whether or not nodes are shown in the auto-generated documentation website. It also supports node_color for models, seeds, snapshots, and analyses. Other node types are not supported.
Note: Hidden models will still appear in the dbt DAG visualization but will be identified as "hidden.”
Default
The default value for show is true.
Examples
Mark a model as hidden
models:
  - name: sessions__tmp
    docs:
      show: false
Mark a subfolder of models as hidden
Note: This can also hide dbt packages.
models:
  # hiding models within the staging subfolder
  tpch:
    staging:
      +materialized: view
      +docs:
        show: false
  
  # hiding a dbt package
  dbt_artifacts:
    +docs:
      show: false
Custom node colors
The docs attribute now supports node_color to customize the display color of some node types in the DAG within dbt docs. You can define node colors in the following files and apply overrides where needed. Note, you need to run or re-run the command dbt docs generate.
node_color hierarchy:
<example-sql-file.sql> overrides schema.yml overrides dbt_project.yml
Examples
Add custom node_colors to models that support it within subdirectories based on hex codes or a plain color name.

marts/core/fct_orders.sql with node_color: red overrides dbt_project.yml with node_color: gold
marts/core/schema.yml with node_color: #000000 overrides dbt_project.yml with node_color: gold
models:
  tpch:
    staging:
      +materialized: view
      +docs:
        node_color: "#cd7f32"
    marts:
      core:
        materialized: table
        +docs:
          node_color: "gold"
models:
  - name: dim_customers
    description: Customer dimensions table
    docs:
      node_color: '#000000'
{{
    config(
        materialized = 'view',
        tags=['finance'],
        docs={'node_color': 'red'}
    )
}}
with orders as (
    
    select * from {{ ref('stg_tpch_orders') }} 
),
order_item as (
    
    select * from {{ ref('order_items') }}
),
order_item_summary as (
    select 
        order_key,
        sum(gross_item_sales_amount) as gross_item_sales_amount,
        sum(item_discount_amount) as item_discount_amount,
        sum(item_tax_amount) as item_tax_amount,
        sum(net_item_sales_amount) as net_item_sales_amount
    from order_item
    group by
        1
),
final as (
    select 
        orders.order_key, 
        orders.order_date,
        orders.customer_key,
        orders.status_code,
        orders.priority_code,
        orders.clerk_name,
        orders.ship_priority,
                
        1 as order_count,                
        order_item_summary.gross_item_sales_amount,
        order_item_summary.item_discount_amount,
        order_item_summary.item_tax_amount,
        order_item_summary.net_item_sales_amount
    from
        orders
        inner join order_item_summary
            on orders.order_key = order_item_summary.order_key
)
select 
    *
from
    final
order by
    order_date
If a node_color is incompatible with dbt docs, you will see a compile error, as in the example below.
Invalid color name for docs.node_color: aweioohafio23f. It is neither a valid HTML color name nor a valid HEX code.
models:
  tpch:
    marts:
      core:
        materialized: table
        +docs:
          node_color: "aweioohafio23f"