New: Supaflow Claude Plugin -- let Claude create, edit, and monitor your data pipelines. Try the plugin

HUBSPOT → SNOWFLAKE

HubSpot to Snowflake

Replicate 40+ HubSpot standard objects — CRM, marketing, commerce, and engagement — into Snowflake with incremental sync, property history, and associations included.

HubSpot data is split across CRM records, marketing activity, sales engagement, commerce objects, property changes, and relationship graphs. Supaflow brings that data together in Snowflake with 40+ standard objects out of the box, property history for core objects, and associations such as deal-to-contact, company-to-engagement, and parent-to-child company hierarchies. HubSpot custom-object support is on the roadmap; contact us if it is blocking your evaluation. Every connector is included on every Supaflow plan — you pay only for the compute your pipelines consume.

Used by RevOps teams modelling lifecycle-stage transitions, marketing analytics teams attributing pipeline through deal-to-contact associations, and audit teams replaying property-history changes for compliance — with no per-row fees.

What the HubSpot to Snowflake connector does

Every row below is an actual capability in the HubSpot connector, not a forward-looking promise.

HubSpot to Snowflake capability matrix — connector features, how each works, and known limits
FeatureHow it worksLimit / caveat
Object coverageForty-plus standard objects spanning CRM (contact, company, deal, ticket, lead), engagements (note, task, call, email, meeting), marketing (form, list, campaign, marketing email, email event, subscription), commerce (line item, product, quote, invoice), and feedback.Permission errors on a parent object cascade to dependent objects — if your token cannot read deals, the deal pipeline stage object is also excluded from the run rather than failing partway.
AuthenticationOAuth 2.0 with automatic token refresh (6-hour expiry, 5-minute safety buffer). Private App Tokens (PATs) supported as a fallback for long-running enterprise jobs that exceed OAuth refresh windows.The HubSpot connection needs read access for every object you intend to sync. Missing permissions are surfaced as clear per-object errors rather than silent skips.
Incremental syncSearchable HubSpot objects sync incrementally from their last modified timestamp. Large change windows are split automatically so high-volume accounts do not lose records.Some metadata-style objects, such as forms, owners, and email subscriptions, do not support timestamp filtering in HubSpot. Supaflow refreshes those objects cleanly each run.
Property historyFor 10 core objects — contact, company, deal, ticket, feedback submission, goal, line item, product, quote, and invoice — Supaflow lands property change history in Snowflake with timestamps and available HubSpot change-source details.HubSpot applies tighter request limits to property history than ordinary object reads. Supaflow handles that automatically; users do not tune batch sizes.
AssociationsFourteen built-in association types — contact-to-company, deal-to-contact, company-to-engagement, parent-company-to-child, and more — land as their own Snowflake tables for graph analysis.
Rate limiting & retrySupaflow retries transient HubSpot throttling and server errors with backoff, and honors HubSpot retry guidance when the API asks clients to slow down.
Archive vs delete handlingHubSpot distinguishes archived records from hard-deleted records. Core CRM objects get archived-record checks so records removed from active views can still be reflected downstream when HubSpot exposes them.
Schema discoverySupaflow discovers standard, custom, and calculated properties for each object and normalizes HubSpot naming differences so Snowflake columns stay stable by object.
DestinationLands directly in Snowflake with auto-generated tables per object, canonical type mapping, and incremental merges keyed on the HubSpot Id. Property history and association tables are first-class.

Why Supaflow for HubSpot to Snowflake

Every connector included, usage-based pricing

Every Supaflow connector is included on every plan at no extra cost. You pay only for compute consumed, measured in Supaflow Credits (1 credit = 1 compute-hour on a Small node). No per-row fees.

40+ HubSpot objects across CRM and marketing

Most ELT tools cover the obvious CRM objects and stop. Supaflow handles 40+ standard HubSpot objects out of the box: CRM records, engagement activity, marketing emails and email events, commerce, quotes, and invoices. Primary objects, associations, and property history run in dependency order so a permission gap on a parent object does not corrupt downstream tables.

Property history and associations as first-class data

Property history is its own table set for 10 core objects, with timestamps and available HubSpot change-source details. Associations also land as their own tables — contact-to-company, deal-to-contact, parent-to-child company hierarchies, and more. Build attribution and lifetime-value models on real graph data, not joins guessed from the current state.

5 HubSpot quirks that break naive pipelines

Every one of these is something our connector handles specifically. A generic pipeline built in Airflow or a basic ELT tool will hit at least three of them in production.

Quirk 1

Large sync windows can hit HubSpot result limits

Failure mode: HubSpot search results are capped per query, even with pagination. A single sync window with too many modified records can silently truncate — the rest of the changes are simply not returned.

Evidence: Documented HubSpot platform behavior; reproducible against high-volume CRMs with active deals or contacts.

Fix: When a result set approaches the cap, the connector subdivides the time window, runs additional queries, and merges the results. The user never sees the cap; the sync is complete.

Quirk 2

Property history has stricter read limits

Failure mode: HubSpot property history reads have tighter request limits than ordinary object reads. Pipelines that treat them the same way can drop history or fail during large syncs.

Evidence: Documented HubSpot behavior, but easy to miss because ordinary object reads and property-history reads look similar from the outside.

Fix: The connector uses the right request shape for property history automatically. Users do not configure read sizes per object type.

Quirk 3

Field names vary across HubSpot product areas

Failure mode: HubSpot exposes CRM, engagement, marketing, and system fields with different naming conventions. A pipeline that assumes one naming pattern breaks across large parts of the object catalog.

Evidence: Reproducible by comparing fields across HubSpot CRM, engagement, and marketing objects.

Fix: The connector normalizes field naming during discovery. Snowflake column names stay stable per object regardless of which HubSpot product area produced the field.

Quirk 4

Archived vs hard-deleted records

Failure mode: HubSpot has two distinct removed-record states: archived records can still be exposed by the API, while hard-deleted records are gone. Pipelines that only read active records miss archived ones; pipelines that re-sync everything every time burn API quota.

Evidence: Standard HubSpot data lifecycle behavior.

Fix: Core CRM objects get archived-record checks in addition to the regular incremental run. Other objects rely on HubSpot update timestamps to surface archive transitions where HubSpot exposes them.

Quirk 5

Permission errors on parent objects orphan dependent ones

Failure mode: A token without deal-read permission can’t read deals — but it also shouldn’t be allowed to read deal_pipeline_stage, line_item-on-deal associations, or property history for deals. Pipelines that try anyway raise confusing errors per dependent object instead of one clean failure.

Evidence: Common in least-privilege OAuth setups where engineers grant scopes incrementally.

Fix: When Supaflow detects a permission error on a parent object, it excludes the dependent objects from the run with a clear explanation. One root error, one explanation, no spam.

How it works

1

Connect HubSpot

Use OAuth 2.0 with a Supaflow-provided app, or supply a Private App Token if your organization prefers that authentication model. Choose read access for the objects you want to sync.

HubSpot source docs
2

Pick objects to sync

Forty-plus standard objects out of the box. Pick a subset or sync everything — Supaflow runs primary objects, then associations, then property history, in dependency order.

3

Pick Snowflake as destination

Connect your Snowflake warehouse. Each HubSpot object becomes a Snowflake table; associations and property history get their own tables for graph and audit-log analysis.

Snowflake destination docs
4

Set a schedule

Cron or interval. Incremental objects pull only records changed since the last successful run; metadata-style objects refresh cleanly; core CRM objects get an extra archived-record check.

Schedules docs

Frequently asked questions

How does Supaflow sync HubSpot to Snowflake?

The connector authenticates with OAuth 2.0 or a Private App Token, discovers the 40+ standard objects you have access to across CRM, marketing, commerce, and engagement, and reads them with the right HubSpot method for each object type. Each object becomes a Snowflake table; associations and property history land as separate tables. Searchable objects sync incrementally, while metadata-style objects refresh cleanly. HubSpot custom objects are on the roadmap — see below.

Does Supaflow sync HubSpot custom objects?

HubSpot custom-object support is on the roadmap. The current connector covers 40+ standard objects across CRM, marketing, engagement, and commerce; custom-object support is in active development. If custom objects are critical to your evaluation, contact us — we can scope timing or provide a path forward for your specific objects.

Does Supaflow capture HubSpot property history?

Yes for 10 core objects: contact, company, deal, ticket, feedback submission, goal, line item, product, quote, and invoice. Property history lands in Snowflake as a separate table per object so analysts can build attribution and lifecycle models on real change data.

How is pricing different from Fivetran or Hevo for HubSpot to Snowflake sync?

Fivetran and Hevo often price by rows or changed-record volume. HubSpot is one of the worst offenders for row-based pricing — every contact update, every property history row, every email event can compound the bill, especially when property history is enabled. Every Supaflow connector is included on every plan at no extra cost. You pay only for compute consumed, measured in Supaflow Credits (1 credit = 1 compute-hour on a Small node). No per-row fees. See the pricing page for the credit packages and free tier.

How does Supaflow handle large HubSpot sync windows?

When a sync window contains more modified records than HubSpot returns in one query, the connector subdivides the time range, runs additional reads, and merges results into a single complete batch. HubSpot result limits are invisible to users; the sync is complete.

Does Supaflow capture HubSpot associations?

Yes. Fourteen built-in association types — contact-to-company, deal-to-contact, company-to-engagement, parent-company-to-child, and others — land as their own Snowflake tables for graph analysis. Custom association types are also supported.

Can I self-host the HubSpot to Snowflake pipeline?

Yes. The sync agent runs in your own VPC if you want HubSpot credentials and CRM/marketing data to stay in your network. The control plane is managed; the data plane can be managed or self-hosted.

Land HubSpot data in Snowflake

Every connector is included on every Supaflow plan — you pay only for the compute your pipelines consume. Forty-plus standard objects, property history, and associations included.