See what your Dataform code will do — before it runs.

Compiled SQL, dry-run cost, inline diagnostics, dependency graphs and schema-aware editing for Dataform projects, in the editor you already use.

Works in VS Code, Cursor, Antigravity · Dataform 2.9.x and 3.x · macOS, Linux, Windows

0200_PLAYER_TRANSFERS.sqlx — Compiled query preview
A .sqlx file next to the compiled query preview, showing dry-run bytes and cost

Open source · 238 releases since Jun 2024

VS Code MarketplaceOpen VSX versionOpen VSX downloadsnpm versionPyPI version
Graduation Release · v1.18.0

Develop against prod. Merge without fear.

Release 1.18.0 introduces two flagship developer superpowers: Defer to Production for zero-build local development, and Dataplex Column-Level Lineage & Impact Analysis to catch breaking downstream schema changes before they reach main.

FEATURE 01Like dbt's --defer for Google Dataform

Stop waiting for upstream builds in dev

In multi-tier ELT pipelines, building dozens of upstream raw and staging tables in your personal sandbox is slow and consumes precious BigQuery slots.

Defer to Production automatically reads unbuilt upstream dependencies directly from your production datasets during dry runs, query previews, compiled SQL views, and workflow runs.

In-Editor Ref Decorations: Real-time → prod indicators and amber ⚠ prod warnings if an upstream model is modified on your branch.
Safe Proxy Views for Runs: Executes full workflows via labelled ephemeral BigQuery proxy views, so Dataform CLI and API read prod safely through dev names.
UDF & Routine Deferral: Resolves custom JavaScript and SQL procedures across dev and prod environments automatically.

// settings.json

"vscode-dataform-tools.deferToProd": true,

"vscode-dataform-tools.prodCompilerOptions": "--default-database=my-prod-project"

0300_MONTHLY_REVENUE.sqlx
Defer: Active
config { type: "table", tags: ["finance"] }
SELECT
  o.order_id,
  o.customer_id,
  c.company_name,
  o.gross_amount_usd
FROM ${ref("stg_orders")} AS o→ prod(unbuilt in dev)
JOIN ${ref("dim_customers")} AS c⚠ prod (branch modified)
  ON o.customer_id = c.id
Defer: Prod (database=prod_dw)|Proxy Views: 0 leftover
BigQuery dry-run: 0 B ($0.00)

-- 01 · compile

Compiled query webview

See exactly what Dataform will run: compiled SQL, dry-run cost, errors and past executions for the file you are editing.

See all features
Compiled query preview — dry run
Inline diagnostics on a .sqlx file alongside the compiled query webview

-- 02 · lineage

Dependency graph & inspector

Understand how a model fits into your project, then debug it by running filtered queries across its whole dependency chain.

See all features
Dependency graph
Interactive dependency graph with external sources highlighted

-- recently shipped

Fresh off the release branch

Full changelog
Ashish Alex

-- about the author

Built by Ashish Alex

I started Dataform Tools in May 2024 with a single feature: showing Dataform compilation errors directly on the .sqlx line I was editing. It has grown one release at a time since then, to 238 releases and counting, shaped by issues and ideas from the people who use it every day.

It's open source and maintained independently. If something is missing or broken, please open an issue.