Load data into BigQuery from 700+ sources
How it works
How do you load data into BigQuery with Airbyte?
Three steps, and four fields. Most BigQuery destinations are configured and syncing inside fifteen minutes.
Create a service account.
Grant it BigQuery User and BigQuery Data Editor. Add Storage Object Admin only if you are staging through Cloud Storage. Download the JSON key.Configure the destination.
Add BigQuery as a destination in Airbyte and supply four values. Then select your streams, set each to Incremental Sync - Append + Deduped where the source exposes a primary key, and run the first sync.What happens to your grants when Airbyte syncs?
Not a philosophy. A set of specific, verifiable guarantees about the infrastructure your data runs on.
Why Airbyte
How tables land in BigQuery
Partitioned by extraction date, clustered on your keys, typed on arrival. No raw tables.
PARTITION BY DATE(_airbyte_extracted_at) CLUSTER BY _airbyte_extracted_at, order_id;Partition boundaries are UTC. Require-partition-filter is not enabled, so existing queries keep working.
Partitioned by date.
Queries filtered on extraction date prune partitions instead of scanning the table.
Clustered on your keys.
Queries filtered on a primary key hit clustered blocks.
No raw tables.
Direct Load types data on the way in and writes one final table per stream, so nothing is duplicated in storage.
Airbyte versus BigQuery’s native loading options
Google ships five ways to get data into BigQuery. Several of them are better than Airbyte for the job they were built for, and the honest version of this table is more useful than the flattering one.
| Method | Best for | Limits | Use Airbyte instead when |
|---|---|---|---|
| Batch load jobs | Files already in Cloud Storage. Avro, CSV, JSON, ORC, Parquet | You own extraction, scheduling, schema drift, and retries | Your data is not already sitting in a bucket in the right shape |
| Storage Write API and Pub/Sub subscriptions | High-throughput real-time event streams | You write and operate the producer. Billed per GB ingested | You need operational database or SaaS API data, not an event stream |
| BigQuery Data Transfer Service | Google-owned sources: Google Ads, Google Analytics, YouTube, Cloud Storage | Fixed source list. Daily or monthly schedules | Your source is not on Google’s list, or you need sub-hourly syncs |
| Datastream | Near-real-time CDC from a small set of databases | Database sources only. No SaaS APIs | You need CDC and SaaS sources landing in the same dataset |
| External tables and federation | Querying without loading, including across AWS and Azure | Query-time cost and latency on every read | The data needs to be materialized in BigQuery |
Where Airbyte wins
Heterogeneous sources. If your BigQuery project needs Postgres CDC, Salesforce, Stripe, and Google Ads landing in the same dataset on the same schedule with the same schema-drift handling, native tooling means four different mechanisms and four different failure modes. Airbyte is one.
Where it does not
If your data is already Parquet in Cloud Storage, LOAD DATA is free and you do not need a connector platform.
Which sources can you load into BigQuery?
All 700+ of them. These are the ones BigQuery users start with.
Databases
SaaS applications
Files and object storage
Events and streaming
How does your data land in BigQuery?
_airbyte_raw_id, _airbyte_generation_id, _airbyte_extracted_at, and _airbyte_meta.| Airbyte type | BigQuery type |
|---|---|
| STRING | STRING |
| INTEGER | INT64 |
| NUMBER | NUMERIC |
| BOOLEAN | BOOL |
| DATE | DATE |
| TIMESTAMP_WITH_TIMEZONE | TIMESTAMP |
| TIMESTAMP_WITHOUT_TIMEZONE | DATETIME |
| OBJECT | JSON |
| ARRAY | JSON |
Schema evolution
Column added.
Propagates to the BigQuery table automatically on the next sync.
Type changed.
Configurable. Propagate it, ignore it, or pause the connection for manual review.
Column removed.
Retained in BigQuery with NULL written for subsequent rows, so an upstream change does not destroy history. Clearing or refreshing the connection does remove the field and its history.
The numbers
Teams running BigQuery on Airbyte
0M
pipelines synced daily
18K+
companies
199%
ROI, certified by Forrester
Deployment
Where Airbyte runs
Your warehouse credentials and your data do not have to leave your environment. Airbyte does not retain customer data on its servers.
Airbyte Cloud
Fully managed hosting on the Standard and Pro plans. Fastest path to a running pipeline.
Airbyte Flex
Hybrid deployment, with Airbyte’s data plane running in your cloud, VPC, or on-prem environment. You get 700+ connectors and a fully managed experience, while your data never touches our servers.
Self-Managed
Open source, your infrastructure, your rules.
compliance
Enterprise ready
Compliant with standards
SOC 2 Type II certified, GDPR and HIPAA support, with tools to help you meet internal and external regulatory requirements.
Uptime & SLA Guarantees
24/7 support and 99.9% availability backed by contractual SLAs and priority response times for mission-critical workloads.
Flexible deployment options
Move data into your warehouse/lakehouse of choice, VPC, on-prem, or into Airbyte's Context Store.
Frequently asked questions
Didn’t find your answer?
Please don’t hesitate to reach out.
What is the best way to load data into BigQuery?
How is Airbyte different from BigQuery Data Transfer Service?
Does Airbyte support change data capture into BigQuery?
How does Airbyte handle BigQuery schema changes?
Does Airbyte create raw tables in my BigQuery project?
Do I need a Google Cloud Storage bucket?
Can I run this inside my own Google Cloud project?
Other destinations
Snowflake
Airbyte clones tables instead of swapping them, so the grants you configured survive every sync. Removed source columns are kept, and oversized values are logged rather than fatal.
ClickHouse
Airbyte writes to ClickHouse over its native binary protocol with batch inserts. The setup needs a hostname, a port, and a user. No object storage, no staging permissions, no intermediate hop.
Databricks
Airbyte stages Avro files inside Unity Catalog Volumes, not an external bucket, so your data stays under your catalog’s governance from the first byte to the final table.






