Data Observability Tools for BigQuery and BigQuery Data Quality Checks
Google's own Dataplex scans, five paid monitors and a flat-priced lineage tool, priced for the same 500-table BigQuery estate. Pick on what you need to catch, then see your own tables here with a read-only role.
Read-only connection. DataTrail never moves or mutates your data.
BigQuery ships its own data quality checks through Dataplex, now called Knowledge Catalog, billed at $0.089 per DCU-hour of premium processing with no free tier for these scans. They test BigQuery tables against rules you write. Paid tools add learned anomaly detection, dbt and dashboard coverage and lineage: at 500 monitored tables Monte Carlo lists about $57,488 a year on Start, Datadog's Metaplane meter $96,000, and Bigeye and Sifflet start at $45,000 and $48,000. DataTrail is a flat $179 a month on Team, with column-level lineage included.
Five ways a BigQuery table breaks without an error
BigQuery is very good at telling you when a query fails. It says nothing when a query succeeds and the data is wrong, and that is the failure a data observability tool exists for. On a typical BigQuery stack the incidents that reach a dashboard come from a short list.
- A load that never ran. A Fivetran or Datastream sync stalls, the scheduled query downstream runs on yesterday's data, and every job is green.
- A partition that arrived half full. Row counts drop by 40 percent on one day's partition because an upstream export was cut short.
- A column that changed type or name. A source system renames
customer_id, the dbt model still compiles because of aSELECT *, and a dashboard join quietly returns nothing. - Values that drifted. Nulls creep into a field that was always populated, or a currency column starts arriving in cents.
- A change nobody traced. An engineer drops a column they believe is unused, and three dashboards still read it.
The first four are monitoring problems. The fifth is a lineage problem, and it is the one rule-based checks cannot catch, because no rule fails until the dashboard does.
BigQuery data quality checks you already have
Google's native answer lives in Dataplex, which Google renamed Knowledge Catalog in April 2026 while keeping the Dataplex name on the API, the IAM roles and the pricing SKUs. Its data quality and profiling scans run against BigQuery tables, and they bill premium processing by the DCU-hour.
| Native capability | How it bills | US price | What you get |
|---|---|---|---|
| Dataplex auto data quality scans | Premium processing, per second, one-minute minimum per run | $0.089 per DCU-hour | Up to 1,000 rules on one table per scan; results to a BigQuery table, Cloud Logging and email reports |
| Dataplex data profiling scans | Premium processing, per second, one-minute minimum per run | $0.089 per DCU-hour | Null, distinct, min, max and distribution statistics per column; not supported on BIGNUMERIC columns |
| Dataplex anomaly detection scans | No DCU charge | Standard BigQuery compute, storage and BQML training | Learned thresholds, billed as BigQuery jobs in your project |
| Free tier | Standard processing only ($0.06 per DCU-hour) | 100 DCU-hours a month | Google states it is not available for the premium SKU that quality and profiling run on |
| BigQuery data lineage | Premium processing | $0.089 per DCU-hour | Kept for 30 days; column lineage is not kept across ALTER TABLE RENAME |
| INFORMATION_SCHEMA views | BigQuery query pricing, never cached | At least 10 MB billed per query on-demand | JOBS keeps 180 days of history; TABLE_STORAGE gives last-modified time and row counts |
Prices are Google's list for us-central1 (Iowa), read 22 October 2026; 1-year and 3-year BigQuery commitments cut premium processing to $0.0801 and $0.0712. A DCU is a Data Compute Unit. Google says scan cost depends on rows, columns, data scanned, rule configuration, partitioning and clustering, and how often the scan runs.
It runs inside your project with no new vendor, recommends rules from a profile, supports incremental scans on partitioned tables, and writes every result to a BigQuery table you can query and chart.
Each scan covers one table, and the rules are yours to write. Scans emit no Cloud Monitoring metrics, so alerting means building log-based alerts. It does not see dbt models or dashboards as objects, and does not tell you which dashboards a failed rule affects.
Google's lineage docs say all lineage information is retained for only 30 days, and column lineage does not survive a table rename. Anything older has to be rebuilt from the 180 days in INFORMATION_SCHEMA.JOBS, which is a parser project of its own.
BigQuery data observability tools priced for 500 tables
Every vendor below supports BigQuery. The yearly figure is for 500 monitored tables at US list price, from each vendor's published rate card, using the readings on our per-vendor pricing pages. Where a vendor does not publish enough to compute it, the cell says so rather than guessing.
| Tool | Published meter | 500 tables, per year | What it covers | Best for |
|---|---|---|---|---|
| Dataplex scans (native) | DCU-hours per scan run, plus the BigQuery bytes the scan reads | Depends on rows scanned and schedule, no fixed number | BigQuery and Knowledge Catalog only | A BigQuery-only estate with an engineer to write and tune rules |
| Monte Carlo | $0.18 (Start) or $0.28 (Scale) per credit, 1.75 credits per table a day | $57,488 Start, $89,425 Scale | Warehouse, dbt, BI | Large estates that want the deepest monitor catalog |
| Datadog Data Observability (Metaplane) | $16 per monitored table a month, billed annually | $96,000 | Warehouse, dbt, BI | Teams already running Datadog for infrastructure |
| Bigeye | $45,000 for 100 tables, $75,000 for 300 (AWS Marketplace) | Not listed above 300 tables, quote only | Warehouse, BI | Enterprises that want monitoring sold per table tier |
| Sifflet | $48,000 a year in platform credits (AWS Marketplace) | Entitlement per credit not stated | Warehouse, dbt, BI | Teams that want catalog and monitoring in one product |
| Elementary | Open-source dbt package free; platform from $120,000 a year (AWS Marketplace) | $0 for the package, quote for the platform | dbt models | dbt-first teams that want tests inside the project |
| DataTrail | Flat plan per workspace, no per-table meter | $2,148 (Team, billed yearly) | Warehouse, dbt, BI, column level | Teams that want lineage-first monitoring at a fixed price |
Monte Carlo: 500 tables x 1.75 credits x 365 days x $0.18 or $0.28. Datadog: 500 x $16 x 12. DataTrail Team is $179 a month billed yearly. Bigeye, Sifflet and Elementary figures are their AWS Marketplace listings. None of the vendor prices include the BigQuery query cost of monitors that read data.
The query cost nobody prints
On BigQuery, a monitor is a query. Freshness and volume checks that read table metadata cost close to nothing. Checks that profile column values, test distributions or run custom SQL scan data in your project, and BigQuery bills those bytes like any other query, on-demand per TiB or against your slot reservation.
So the vendor invoice is only part of the bill. Before you sign, ask which monitors read metadata and which read rows, whether they scan full tables or only new partitions, and whose project the jobs run in. A tool that profiles every column of 500 tables daily can add a visible line to an on-demand BigQuery bill.
For the same table on Snowflake, the native meter works differently. Our Snowflake observability page prices it per compute-hour.
What each BigQuery monitoring tool asks for, and who pays for its queries
Your security review will ask two questions about any of these tools: can it read row data, and whose BigQuery bill do its queries land on. Here is what each vendor documents. A role that includes tables.getData or Data Viewer can read rows, even if most monitors only use metadata.
| Tool | BigQuery roles or permissions it documents | Query cost, in its own words |
|---|---|---|
| Monte Carlo | Custom role: datasets.get, jobs.create, jobs.listAll, tables.get, tables.getData, tables.list, plus Metadata Viewer | Table monitors use metadata; optional exact row counting runs queries on your compute |
| Metaplane | Data Viewer, Job User, Read Session User, plus a custom role with jobs.listAll | Not stated in its BigQuery docs |
| Bigeye | Data Viewer, Job User, Metadata Viewer, Resource Viewer | Freshness and volume from system metadata; metric queries run in the project where you grant Job User |
| Sifflet | Custom role: datasets.get, tables.list, tables.get, tables.getData, jobs.create, jobs.listAll | Docs say metadata refreshes and monitor runs bill to your billing project; queries are tagged "app": "Sifflet" |
| Elementary | Job User, Data Viewer on the Elementary dataset only, Metadata Viewer and Resource Viewer | Reads INFORMATION_SCHEMA.JOBS and table metadata; dbt tests run in your dbt jobs |
| DataTrail | Data Viewer, Job User, Resource Viewer, token scoped to bigquery.readonly | Only INFORMATION_SCHEMA queries (columns, table storage, views, jobs), never row scans |
Anomalo's BigQuery setup page sits behind a login, so it is not in the table. On-demand BigQuery is $6.25 per TiB after the first free TiB a month, with a 10 MB minimum per query and per table referenced.
A freshness or row-count query on INFORMATION_SCHEMA bills the 10 MB minimum, about $0.00006 at on-demand rates. Run hourly across a whole region, it stays in cents a month.
Profiling every column of a 1 TiB table reads 1 TiB, $6.25 a run on-demand. Hourly, that is about $4,500 a month for one table, before the vendor invoice.
Which monitors read rows, whether they scan new partitions only, which project the jobs run in, and how to cap them. On slot reservations the cost shows up as contention instead of dollars.
Which BigQuery monitoring setup fits your team
Dataplex scans on the ten to twenty tables that feed revenue reporting, with results charted from the output table. Cheap, native, and someone has to own the rules.
dbt tests for the rules you know, plus a tool that watches between runs and follows models into the dashboards. Compare options on our dbt observability page.
Learned anomaly detection across the estate. Monte Carlo, Bigeye and Sifflet are built for this, with budgets that start near $45,000 a year.
Lineage first. See which models and dashboards read a column before you change it, with freshness and schema alerts on top. That is impact analysis.
How DataTrail monitors BigQuery
Data Viewer, Job User and Resource Viewer, with the token scoped to bigquery.readonly. Nothing is written back to BigQuery and no agent is installed.
Job history and dbt artifacts are parsed into table and column lineage that is kept, not expired after 30 days.
Each table gets a learned update window. A late load or a renamed column alerts in Slack or email with the downstream list attached.
Pick a column and see every model and dashboard that reads it before the pull request merges.
Every query DataTrail runs is against INFORMATION_SCHEMA (columns, table storage, views and job history), never against your rows, so a sync costs the 10 MB minimum per query on-demand rather than a table scan. More on how the BigQuery graph is built is on the BigQuery lineage page. Try the one-time demo or compare plans on the pricing page.
BigQuery data observability questions buyers ask
What are the best data observability tools for BigQuery?
For a BigQuery-only estate with an engineer to own the rules, start with Dataplex auto data quality and profiling scans, which run natively. Add a third-party tool when transformations live in dbt, when dashboards are where breakage gets noticed, or when you need lineage past BigQuery. Monte Carlo, Bigeye, Sifflet and Metaplane all support BigQuery; DataTrail adds column-level lineage at a flat price.
Does BigQuery have built-in data quality checks?
Yes, through Dataplex, now branded Knowledge Catalog. Auto data quality scans run rules such as non-null, range, regex, uniqueness and custom SQL against a BigQuery table on a schedule or on demand, and publish results to BigQuery, Cloud Logging and email. They bill premium processing per DCU-hour and only cover BigQuery tables, not dbt models or dashboards.
How much does Dataplex data quality cost?
Dataplex data quality and profiling scans bill premium processing at $0.089 per DCU-hour in us-central1, per second with a one-minute minimum, read 22 October 2026. The 100 free DCU-hours a month apply only to standard processing, not to these scans. Cost depends on rows, columns, rules and schedule, so incremental or sampled scans cost far less than full daily ones.
Do data observability tools increase my BigQuery bill?
They can. Metadata monitors that read INFORMATION_SCHEMA cost about the 10 MB minimum per query. Monitors that profile values or run custom SQL are normal BigQuery jobs billed to your project: on-demand is $6.25 per TiB after the first free TiB a month, so a full scan of a 1 TiB table every hour is about $4,500 a month. Sifflet's docs state monitor queries bill to your project.
How do I monitor BigQuery table freshness?
The native route is a scheduled query on INFORMATION_SCHEMA.TABLE_STORAGE that compares each table's storage_last_modified_time with an expected interval and raises an alert from the result. It works, but you maintain every threshold by hand and the view can lag by a few minutes. A data observability tool learns each table's update pattern from history and alerts when a load is late, with the downstream models and dashboards listed.
Is Dataplex enough, or do I need a separate tool?
Dataplex is enough when every table you care about lives in BigQuery and someone owns writing and tuning the rules. A separate tool earns its cost when failures start upstream in dbt or ingestion, when the person who notices is a dashboard user, or when you need to know what a broken column reaches before you ship a change.
What permissions does a BigQuery observability tool need?
Most ask for a service account with BigQuery Job User plus read access. Bigeye documents Data Viewer, Job User, Metadata Viewer and Resource Viewer; Metaplane Data Viewer, Job User and Read Session User; Monte Carlo and Sifflet a custom role that includes tables.getData and jobs.create. DataTrail uses Data Viewer, Job User and Resource Viewer with a read-only token scope.
Where these numbers came from
The Dataplex and BigQuery figures come from Google Cloud's pricing pages and the Knowledge Catalog and BigQuery documentation, read on 22 October 2026. Vendor prices are the readings on our per-vendor pages: Monte Carlo pricing (order forms and consumption rate card), Metaplane pricing (Datadog's US list), Bigeye pricing and Sifflet pricing (AWS Marketplace rate cards). The 500-table totals are our arithmetic on those published rates.
List prices are a starting point for negotiation, and a large account will pay less. BigQuery query costs from monitors depend on your pricing model and table sizes, so we describe them rather than invent a number.
Related pages
The full field across every warehouse, with honest verdicts.
Native lineage limits and how column-level lineage gets built from job history.
The same comparison for Snowflake's native data metric functions.
Rule-based testing and validation tools, for when checks are the job.
Per credit, per table and per year, from Monte Carlo's own order forms.
Renamed and retyped columns, caught with the downstream list attached.
Monitor BigQuery without a per-table meter
Connect BigQuery with a read-only service account and get column-level lineage, freshness and schema-change alerts, with the downstream dashboards in every alert. Plans start at $59 a month billed yearly.