v2.2 · Reverse ETL

Reverse ETL inside Snowflake. No external tool. No data egress. Compliance built in.

Push records from Snowflake straight to Salesforce and HubSpot, with field mapping, schema discovery, incremental sync, rate-limit retry, and reconciliation. Every sync respects your existing compliance policies.

What it does

SnowExporter's Reverse ETL connector pushes Snowflake records into Salesforce and HubSpot as upserts. Configure the source query, pick a destination object (Contact, Account, Lead — anything your CRM exposes), map source columns to destination fields, and schedule it.

State fingerprints skip rows that haven't changed since the last successful run. Rate-limit retry honors the Retry-After headers the destinations send back. Reconciliation compares Snowflake-side row counts against destination-side counts after each run so you know when something silently went wrong.

Shipping today

Two connectors at launch.

Connector Auth Endpoint Batch limit
Salesforce JWT Bearer (External Client App) /services/data/v59.0/composite/sobjects/{type} 200 records / batch
HubSpot Private App access token /crm/v3/objects/{type}/batch/upsert 100 records / batch

Both connectors include:

  • Schema discovery (Salesforce DESCRIBE / HubSpot /crm/v3/properties) — see destination fields in the wizard, no docs hunting
  • Field mapping UI with auto-detection of likely matches
  • Required / default value semantics per destination field
  • State fingerprint cache to skip unchanged records on subsequent runs
  • Rate-limit retry with Retry-After header honored
  • Post-run reconciliation: counts source rows synced vs destination rows present
  • COMPLIANCE_AUDIT trail per sync with policy verdict, mode, and blocked flag
Why a Native App

Why SnowExporter beats external Reverse ETL tools.

Tools like Census and Hightouch live outside Snowflake — your data egresses to their cloud, then they forward it to the destination SaaS. As a Snowflake Native App, SnowExporter cuts the middle hop.

Census / Hightouch SnowExporter v2.2
Where data flows Snowflake → vendor cloud → SaaS Snowflake → SaaS
Egress fees Customer pays None
Security review Per-vendor Inside your existing Snowflake account
Compliance Separate system Inherits SnowExporter v2.0 / v2.1 / v2.2.11 compliance loop
Cost $400 – $4,000 / month Snowflake credits + SnowExporter

The last row is the actual differentiator: every reverse ETL sync automatically uses your existing classification, policy, and approval setup. Write a policy once — "PII to Salesforce requires Compliance team approval" — and it applies Day 1. No second integration to configure.

How it works

Five steps from query to upsert.

  1. CONFIGURE — In the Reverse ETL page, create a sync: pick connector (Salesforce or HubSpot), source query, destination object, match field.
  2. MAP — The wizard pulls the destination's schema and shows real properties. Drag source columns onto destination fields. Set required values and defaults.
  3. SCHEDULE — Use the same cron scheduler as your scheduled exports. Daily, hourly, every 5 minutes — your call.
  4. GOVERN — Every run goes through ENFORCE_POLICY_OR_NULL first. If a policy says BLOCK, the run halts before any data leaves the warehouse. If a policy says REQUIRE_APPROVAL, the sync enqueues a request to your approver. If REQUIRE_MASKING, the source query is rewritten to redact sensitive columns before the upsert.
  5. RECONCILE — After each successful run, SnowExporter counts destination-side records and compares to what it sent. Drift gets surfaced in the Sync History.
Use cases

What customers ship with it.

  • Operational scoring — compute customer lifetime value, churn risk, or lead quality in Snowflake; write back to Salesforce so reps see it in context.
  • Marketing segments — build "engaged user" cohorts; sync to HubSpot for campaign targeting.
  • Account enrichment — push firmographic data from Snowflake to Salesforce Accounts.
  • Compliance-aware activation — push only the masked or approved subset of PII to your CRM, never the raw data.
Honest limitations

What's NOT in v2.2.

  • Custom Salesforce / HubSpot objects beyond standard ones (workaround: standard objects work; custom objects need v2.2.x)
  • HubSpot association API (parent / child object linking) — coming in a patch
  • Salesforce / HubSpot marketing-list-membership syncs — coming in v2.5
  • Bidirectional sync (read from the SaaS into Snowflake) — not on the roadmap; use ingestion tools for that direction
  • Zendesk, Marketo, Intercom — coming in v2.5

Get started in minutes.

  1. Install SnowExporter from the Snowflake Marketplace
  2. Run the Salesforce or HubSpot setup wizard (one-time per connector — ~10 minutes for Salesforce, ~3 minutes for HubSpot)
  3. Create your first sync in the Reverse ETL page
  4. Schedule it or run it on-demand
Install from Snowflake Marketplace v2.2.11 changelog →