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.
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-Afterheader honored - Post-run reconciliation: counts source rows synced vs destination rows present
COMPLIANCE_AUDITtrail per sync with policy verdict, mode, and blocked flag
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.
Five steps from query to upsert.
- CONFIGURE — In the Reverse ETL page, create a sync: pick connector (Salesforce or HubSpot), source query, destination object, match field.
- MAP — The wizard pulls the destination's schema and shows real properties. Drag source columns onto destination fields. Set required values and defaults.
- SCHEDULE — Use the same cron scheduler as your scheduled exports. Daily, hourly, every 5 minutes — your call.
- GOVERN — Every run goes through
ENFORCE_POLICY_OR_NULLfirst. If a policy saysBLOCK, the run halts before any data leaves the warehouse. If a policy saysREQUIRE_APPROVAL, the sync enqueues a request to your approver. IfREQUIRE_MASKING, the source query is rewritten to redact sensitive columns before the upsert. - RECONCILE — After each successful run, SnowExporter counts destination-side records and compares to what it sent. Drift gets surfaced in the Sync History.
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.
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.
- Install SnowExporter from the Snowflake Marketplace
- Run the Salesforce or HubSpot setup wizard (one-time per connector — ~10 minutes for Salesforce, ~3 minutes for HubSpot)
- Create your first sync in the Reverse ETL page
- Schedule it or run it on-demand