Skip to content
adapters.io

BigQuery to Snowflake migration without hand-written export jobs

The BigQuery to Snowflake migration path from Adapters copies tables, casts BigQuery types to their Snowflake equivalents, and loads on an incremental schedule, so you can run both warehouses in parallel during a cutover instead of freezing reporting for a big-bang export. Field mapping takes about a minute and no code is required.

Field mapping auto-plugged · tap a port to rewire

5 sample records ready

Last updated July 2026

What running BigQuery to Snowflake by hand costs you

  • A one-shot export to cloud storage and COPY into Snowflake freezes reporting during the cutover, and any table that changes mid-migration has to be redone by hand.
  • BigQuery and Snowflake disagree on types: BigNumeric precision, nested and repeated RECORD fields, and the case-insensitive versus quoted-identifier rules all need deliberate handling or numbers, structs, and column names land wrong.
  • Dashboards and dbt models have to be validated against both warehouses before you switch, which means keeping the two in agreement for weeks, not copying once.

The field mapping, out of the box

These cables are pre-wired when you pick the pair. Rewire any of them, or add your own, in the same visual data mapping tool you use for every adapter.

Input / BIGQUERY

orders.order_id
ORDERS.ORDER_ID
orders.total_amount
ORDERS.TOTAL_AMOUNT
orders.created_at
ORDERS.CREATED_AT
orders.line_items
ORDERS.LINE_ITEMS
customers.email
CUSTOMERS.EMAIL
orders.updated_at
ORDERS.LOADED_AT

Transforms included

BigQuery NUMERIC casts to Snowflake NUMBER(38,9) and BIGNUMERIC to NUMBER at its declared precision, STRUCT and ARRAY RECORD columns land as VARIANT so nested payloads survive the trip, TIMESTAMP stays UTC so no hour shifts on the way across, and STRING maps to VARCHAR. Incremental runs use an updated-at watermark per table, target tables cluster on the load date, and writes MERGE on the primary key so you can re-run a window during parallel validation without duplicating a single row.

How it goes live

Three steps, minutes end to end, covered by flat data integration pricing from $49 a month.

STEP 01

Pick the pair

Connect BigQuery and Snowflake with scoped credentials. About a minute each.

STEP 02

Confirm the mapping

The cables above are pre-wired. Adjust any field, preview the transform on sample records, done.

STEP 03

Schedule the sync

Hourly down to every minute, with retries, alerting, and a full log on every run.

Try it in the live demo Preloads BIGQUERY → SNOWFLAKE with sample records

BigQuery to Snowflake sync: common questions

How does the BigQuery to Snowflake sync work?

The BigQuery to Snowflake migration path from Adapters copies tables, casts BigQuery types to their Snowflake equivalents, and loads on an incremental schedule, so you can run both warehouses in parallel during a cutover instead of freezing reporting for a big-bang export. Field mapping takes about a minute and no code is required.

How much does the BigQuery Snowflake integration cost?

Pricing is flat and monthly: Starter at $49, Growth at $149, Scale at $399. Every plan includes this pair, visual field mapping, and per-record logs. There are no per-task or per-row fees, so the bill stays the same as volume grows.

How often can Adapters sync BigQuery to Snowflake?

Hourly on Starter, every 5 minutes on Growth, and down to every minute on Scale. Failed records retry automatically with backoff, and alerting plus a full per-record log come standard on every run.

Do I need to write code to connect BigQuery and Snowflake?

No. Fields are auto-mapped the moment you pick the pair, and you can rewire any mapping visually before the first sync. BigQuery NUMERIC casts to Snowflake NUMBER(38,9) and BIGNUMERIC to NUMBER at its declared precision, STRUCT and ARRAY RECORD columns land as VARIANT so nested payloads survive the trip, TIMESTAMP stays UTC so no hour shifts on the way across, and STRING maps to VARCHAR. Incremental runs use an updated-at watermark per table, target tables cluster on the load date, and writes MERGE on the primary key so you can re-run a window during parallel validation without duplicating a single row.

More pairs from the API connector library

stripe quickbooks integration shopify netsuite integration salesforce hubspot integration airtable google sheets sync postgres to snowflake sync shopify quickbooks integration salesforce netsuite integration paypal quickbooks integration square quickbooks integration stripe netsuite integration hubspot quickbooks integration quickbooks to xero migration shopify xero integration salesforce to snowflake integration square netsuite integration hubspot xero integration salesforce to bigquery integration postgres to bigquery netsuite to snowflake integration quickbooks to bigquery integration stripe to snowflake integration shopify to snowflake integration quickbooks to snowflake integration hubspot to snowflake integration netsuite to bigquery integration stripe to bigquery integration shopify to bigquery integration paypal to snowflake integration square to snowflake integration square to bigquery integration netsuite to postgres integration salesforce to postgres integration xero to snowflake integration hubspot to bigquery integration xero to bigquery integration paypal to bigquery integration stripe to postgres integration snowflake to bigquery migration shopify to postgres integration hubspot to postgres integration quickbooks to postgres integration xero to postgres integration square to postgres integration paypal to postgres integration snowflake to postgres

Browse the full api connector library, or request a pair you do not see.

BigQuery and Snowflake, finally in agreement

Map the pair once and let it sync on schedule. Flat price from $49 a month, no per-task fees.

Try the live demo

No credit card required.