Skip to main content

Run results JSON file

Current schema: v5

Produced by: build compile docs generate run seed snapshot test run-operation

This file contains information about a completed invocation of dbt, including timing and status info for each node (model, test, etc) that was executed. In aggregate, many run_results.json can be combined to calculate average model runtime, test failure rates, the number of record changes captured by snapshots, etc.

Note that only executed nodes appear in the run results. If you have multiple run or test steps with different critiera, each will produce different run results.

Note: dbt source freshness produces a different artifact, sources.json, with similar attributes.

Top-level keys

  • metadata
  • args: Dictionary of arguments passed to the CLI command or RPC method that produced this artifact. Most useful is which (command) or rpc_method. This dict excludes null values, and includes default values if they are not null. Equivalent to invocation_args_dict in the dbt-Jinja context.
  • elapsed_time: Total invocation time in seconds.
  • results: Array of node execution details.

Each entry in results is a Result object, with one difference: Instead of including the entire node object, only the unique_id is included. (The full node object is recorded in manifest.json.)

  • unique_id: Unique node identifier, which maps results to nodes in the manifest
  • status: dbt's interpretation of runtime success, failure, or error
  • thread_id: Which thread executed this node? E.g. Thread-1
  • execution_time: Total time spent executing this node
  • timing: Array that breaks down execution time into steps (often compile + execute)
  • message: How dbt will report this result on the CLI, based on information returned from the database
  • adapter_response: Dictionary of metadata returned from the database, which varies by adapter. For example, success code, number of rows_affected, total bytes_processed, and so on. Not applicable for tests.
    • rows_affected returns the number of rows modified by the last statement executed. In cases where the query's row count can't be determined or isn't applicable (such as when creating a view), a standard value of -1 is returned for rowcount.
0