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

SALESFORCE → SNOWFLAKE

Salesforce to Snowflake

Load eligible Salesforce standard and custom objects into Snowflake with scheduled, cursor-based incremental sync.

Supaflow discovers API-accessible objects and fields, selects a usable timestamp for each eligible object, and loads the selected CRM data into Snowflake. Bulk extraction is enabled by default for supported large reads, with a synchronous fallback when Salesforce does not support the bulk path. This connector does not claim Salesforce CDC. Every connector is included on every Supaflow plan — you pay only for the compute your pipelines consume.

For RevOps, finance, and analytics teams joining Salesforce pipeline data with billing, product, support, and marketing records — with no per-row fees.

What the Salesforce to Snowflake connector does

Verified connector behavior and known limits for this source.

Salesforce to Snowflake capability matrix — connector features, how each works, and known limits
FeatureHow it worksLimit / caveat
Standard and custom objectsSupaflow discovers standard and custom objects and fields that are visible and queryable through the connected Salesforce user.Deprecated, hidden, non-queryable, Big, external, and other restricted object types may be omitted or marked as skipped during discovery.
Authentication and org selectionUse OAuth by default or Basic authentication with a username, password, and security token. Connect to production, sandbox, or a custom My Domain host.
Scheduled incremental syncFor each object, Supaflow prefers a filterable SystemModstamp, then LastModifiedDate, then CreatedDate, and saves progress after a successful run.An object without a usable incremental timestamp is skipped. This is scheduled cursor-based ingestion, not Salesforce Change Data Capture.
Bulk reads with fallbackSalesforce bulk extraction is enabled by default for supported large reads. When that path is unavailable for an object or query, the connector can use the synchronous Salesforce API path.
Deleted-record visibilityThe source read includes active, archived, and recycle-bin records Salesforce still exposes, and maps the Salesforce deletion indicator for downstream handling.The connector does not support hard-delete detection. Once Salesforce permanently purges a record, it is no longer available for the source read.
Picklist metadataOptional Supaflow metadata tables expose picklist API values, display labels, field definitions, and supported dependent-picklist relationships for warehouse joins.Checkbox-controlled dependent picklists are identified but are not expanded into the relationship table.
Rate limiting and retrySupaflow retries transient Salesforce session, throttling, and server failures with backoff. Source API-limit exhaustion is surfaced as a sync error instead of retried indefinitely.
Snowflake loadingEach selected Salesforce object loads into a Snowflake table with destination-friendly types and stable Salesforce record identity for merges.

Why Supaflow for Salesforce 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 billable job hour on an S (Small) Agent node). No per-row fees.

Eligibility is checked per object

A long-lived Salesforce org contains objects with very different query capabilities. Supaflow discovers what the connected user can read, verifies whether returned objects support a safe incremental path, and gives a reason when a returned object does not.

Use picklist values with readable labels

Salesforce stores an API value that can differ from the label users see. Supaflow keeps the stored value on the record and offers optional metadata tables for joining display labels and supported dependency relationships in Snowflake. Label-only renames do not change the stored API value.

4 Salesforce behaviors to account for

These source-specific cases affect discovery, parsing, or incremental reads. The notes below explain the failure mode and connector behavior.

Quirk 1

Incremental timestamps vary by object

Failure mode: A Salesforce object can lack a filterable modification timestamp even when other objects in the same org support incremental reads.

Evidence: The connector evaluates SystemModstamp, LastModifiedDate, and CreatedDate in order and verifies that Salesforce allows filtering on the chosen field.

Fix: Objects with a usable field sync incrementally. An object without one is skipped with a missing-cursor reason instead of being presented as safely incremental.

Quirk 2

Compound fields are not ordinary query columns

Failure mode: Salesforce exposes compound Address and Location metadata, but selecting the compound parent like an ordinary field can make the source query fail.

Evidence: The connector identifies compound field types during metadata discovery and builds reads from the queryable fields Salesforce exposes.

Fix: Use the component fields returned in the discovered schema for warehouse analysis rather than expecting the compound parent as one scalar column.

Quirk 3

Visible deletes end when Salesforce purges the record

Failure mode: A recycle-bin record can still be returned and marked deleted, but a permanently purged record has no row left for a scheduled source read.

Evidence: The connector uses Salesforce’s all-record query path and maps the deletion indicator, while its declared capabilities explicitly exclude hard-delete support.

Fix: Use the deletion indicator while Salesforce retains the record. If permanent-delete reconciliation is required, add a separate downstream retention policy or source-of-truth process.

Quirk 4

Picklist labels and API values are separate

Failure mode: A warehouse record can show the stored API value while Salesforce users see a renamed display label, creating an apparent mismatch in reports.

Evidence: The connector publishes separate picklist field and value metadata tables, plus supported dependent-picklist relationships.

Fix: Keep the API value in fact tables and left join the optional metadata tables when a report needs the current Salesforce label.

How it works

1

Connect Salesforce

Choose OAuth or Basic authentication, enter the production, sandbox, or custom domain, and authorize a user with API and object access.

Salesforce source docs
2

Select eligible objects and fields

Review discovered standard and custom objects. Supaflow omits objects Salesforce does not expose safely and identifies objects without a usable incremental cursor.

3

Connect Snowflake

Choose the Snowflake destination and target database and schema for Salesforce object and optional picklist metadata tables.

Snowflake destination docs
4

Set the schedule

Run on a cron or interval schedule. Eligible objects resume from their saved timestamp position, with an optional lookback for late-arriving updates.

Schedules docs

Frequently asked questions

Is Supaflow’s Salesforce connector based on CDC?

No. Supaflow uses scheduled cursor-based reads with a usable timestamp selected per object. Snowflake Openflow documents a separate Salesforce connector based on Change Data Capture; choose that model when event-based CDC is a requirement.

Can Supaflow sync Salesforce custom objects?

Yes, when the object is API-accessible, queryable, visible to the connected user, and has a filterable SystemModstamp, LastModifiedDate, or CreatedDate field. Objects Salesforce does not expose to the connected user may not appear; a returned object without one of those fields is skipped with a reason.

Does Supaflow capture deleted Salesforce records?

The connector includes archived and recycle-bin records while Salesforce still exposes them and maps the deletion indicator. It cannot detect a record after Salesforce permanently purges it, so this is not hard-delete capture.

Does the connector use Salesforce Bulk API?

Yes. Bulk extraction is enabled by default for supported large reads. The connector can use the synchronous API path when a particular object or query is not supported by the bulk path.

How do Salesforce picklist labels reach Snowflake?

Object tables keep the Salesforce API value returned for each record. Select the optional Supaflow picklist metadata tables and join them when reports need current display labels or supported dependent-picklist relationships.

How is Supaflow priced for Salesforce to Snowflake?

Salesforce pipelines are not priced by rows or connector count. 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 billable job hour on an S (Small) Agent node). No per-row fees. See the pricing page for current credit packages and the free tier.

Move Salesforce data into Snowflake

Every connector is included on every Supaflow plan — you pay only for the compute your pipelines consume. Standard and custom objects with scheduled incremental sync and bulk extraction.