CRM migration
Field-level mapping, validation, and rollback between Iterable and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
Iterable
Source
Salesforce Sales Cloud
Destination
Compatibility
11 of 12
objects map 1:1 between Iterable and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
4-8 weeks
Overview
Iterable and Salesforce Marketing Cloud are both cross-channel marketing platforms, but they organize data differently and require deliberate mapping during migration. Iterable uses a flat user-profile model with unlimited custom fields, lists for segmentation, and Journeys as the automation engine. Salesforce Marketing Cloud uses a Contact data model tied to a Data Extension architecture, with Journey Builder as the orchestration layer and separate Subscription Management for channel-level opt-out tracking. We map Iterable user profiles to SFMC Contacts and Data Extensions, migrate active list memberships as Audience membership, export campaign metadata and templates as reference records, and deliver a written Journey inventory so your SFMC admin can rebuild automation logic in Journey Builder. We do not migrate Journeys as code, Templates as code, or Automations. SMS configuration requires re-verification with carriers post-migration because SFMC manages sender IDs and long-codes independently from Iterable.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Iterable object lands in Salesforce Sales Cloud, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Iterable
User Profile
Salesforce Sales Cloud
Contact + Data Extension
1:1Iterable user profiles map to SFMC Contact records using email as the Subscriber Key. System fields (dataId, userId, email, createdAt, updatedAt) map to standard SFMC Contact attributes. Custom profile fields migrate to a primary Data Extension with the same field names and types, linked to Contact via Subscriber Key. We flag any fields approaching Iterable's 8,000-field soft limit during scoping and consolidate redundant or deprecated fields before migration to avoid Data Extension schema bloat in SFMC.
Iterable
Custom Events
Salesforce Sales Cloud
Data Extension (event-log table)
1:1Iterable custom events with their full metadata payloads migrate to a dedicated Data Extension that logs event name, user identification (Subscriber Key), event timestamp, and all custom event metadata columns. We flatten nested event metadata to top-level Data Extension fields during the transform phase. For recurring behavioral triggers that the customer wants to replicate in Journey Builder, we document the event schema and recommend Triggered Send or API Event entry sources.
Iterable
List
Salesforce Sales Cloud
Audience or Data Extension
lossyIterable Lists are flat user collections used for campaign targeting. We migrate list memberships as Contact membership in SFMC Audiences or as rows in a List-Name Data Extension keyed by Subscriber Key. Dynamic Lists require SQL Query Activities to replicate using Contact data and event filters. We preserve the original Iterable list names and IDs in the migration metadata for reference during Journey rebuild.
Iterable
Campaign
Salesforce Sales Cloud
Campaign reference record
1:1Iterable campaign metadata (name, channel type, status, schedule, template reference, send configuration) exports as a reference record that we store outside SFMC as a migration artifact. SFMC does not have a native Campaign object equivalent to Iterable's campaign model. We deliver the campaign inventory as a structured CSV and a written summary so the customer's SFMC admin can recreate campaign reference data in SFMC Email Sends, Journey Builder entry configurations, or a custom Campaign object if the customer builds one in Salesforce CRM and links it via the SFMC-CRM connector.
Iterable
Journey
Salesforce Sales Cloud
Journey Builder reference inventory
1:1Iterable Journeys define multi-step, multi-channel automation paths. We export Journey definitions including trigger conditions, branching logic, wait steps, and message action configurations as a written inventory document. SFMC Journey Builder uses a different event and activity model. We do not migrate Journeys as code. The inventory document maps each Iterable Journey to a recommended Journey Builder structure with entry source, activities, and split logic so the customer's admin or SFMC partner can rebuild them post-migration.
Iterable
Template
Salesforce Sales Cloud
Content Builder asset
1:1Iterable HTML and Handlebars-templated message content migrates as asset records in SFMC Content Builder. We export template content, metadata, and personalization syntax. Handlebars conditionals and merge tags require manual conversion to SFMC AMPscript or Marketing Cloud Personalization (Interaction Studio) syntax during the SFMC implementation phase. We flag templates with complex dynamic logic for admin review before migration.
Iterable
Catalog Items
Salesforce Sales Cloud
Data Extension (product catalog)
1:1Iterable Catalog is a product data store used for dynamic content insertion. We export catalog schemas and item records to a SFMC Data Extension with the same column structure. Product relationships to Journey steps require reconfiguration in Journey Builder because SFMC references catalog data through AMPscript lookup functions within email content rather than a separate catalog object.
Iterable
Purchase Events
Salesforce Sales Cloud
Data Extension (purchase log)
1:1Iterable purchase events (orderId, total, items, user) migrate to a purchase-history Data Extension keyed by Subscriber Key. For teams migrating to SFMC Einstein (AI) capabilities, we recommend structuring this Data Extension to support Einstein Send Time Optimization and Einstein Email Recommendations, which require specific data shapes.
Iterable
Subscriptions
Salesforce Sales Cloud
Contact Subscription + Suppression Lists
1:1Iterable channel-level opt-in/opt-out states migrate to SFMC Contact attributes (HasOptedOutOfEmail, MobileConnect opt-in flags) and to channel-specific suppression lists in MobileConnect and Push. We preserve subscription event history to maintain suppression logic. Note that SFMC handles SMS and push subscriptions separately from email subscriptions, and each requires its own opt-out configuration in the respective SFMC product.
Iterable
Data Sync Records
Salesforce Sales Cloud
Not migrated (requires separate engagement)
1:1Iterable Data Sync is a warehouse export feature gated behind Customer Success and requiring IP allowlisting. Data Sync records migrate as standard Data Extension exports during the migration window if the customer has Data Sync enabled. If Data Sync is not active, we scope the migration to API-based profile and event extraction only and flag Data Sync activation as a pre-migration requirement for customers relying on warehouse-synced data.
Iterable
Owner/User
Salesforce Sales Cloud
SFMC User or API User
1:1Iterable user accounts referenced as creators or modifiers of campaigns, Journeys, and templates map to SFMC user accounts by email. We resolve owner references in campaign and Journey metadata to SFMC User accounts provisioned in the destination tenant. If the customer uses Salesforce CRM alongside Marketing Cloud, we recommend using the CRM User as the SFMC user to keep attribution and permissions aligned.
Iterable
Suppression List
Salesforce Sales Cloud
SFMC Suppression List
1:1Iterable maintains per-channel unsubscription records. We export the full suppression list per channel and import into SFMC Suppression Lists (for email) and MobileConnect suppression data (for SMS). This ensures migrated contacts who previously unsubscribed remain suppressed in SFMC and do not receive messages after cutover.
| Iterable | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| User Profile | Contact + Data Extension1:1 | Fully supported | |
| Custom Events | Data Extension (event-log table)1:1 | Fully supported | |
| List | Audience or Data Extensionlossy | Fully supported | |
| Campaign | Campaign reference record1:1 | Fully supported | |
| Journey | Journey Builder reference inventory1:1 | Fully supported | |
| Template | Content Builder asset1:1 | Fully supported | |
| Catalog Items | Data Extension (product catalog)1:1 | Mapping required | |
| Purchase Events | Data Extension (purchase log)1:1 | Fully supported | |
| Subscriptions | Contact Subscription + Suppression Lists1:1 | Fully supported | |
| Data Sync Records | Not migrated (requires separate engagement)1:1 | Mapping required | |
| Owner/User | SFMC User or API User1:1 | Fully supported | |
| Suppression List | SFMC Suppression List1:1 | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Iterable gotchas
Iterable does not allow field deletion
Separate API endpoints for US and EU data centers
Soft limit of 8,000 unique fields per project
Enterprise pricing is opaque and contract-based
Usage metrics lag by one calendar day
Salesforce Sales Cloud gotchas
Workflow Rules and Process Builder are retired
Bulk API batch quota exhaustion during large imports
Storage overage billing is non-obvious
Account-Contact many-to-many relationship mapping
Territory and team member import ordering dependencies
Pair-specific challenges
Migration approach
Scoping and data center confirmation
We audit the Iterable project including data center (USDC or EDC), user profile field count, custom event types and volumes, active Lists and list sizes, active Journeys, campaign history, Catalog schemas, and subscription event volumes. We confirm the SFMC tenant region and edition. We deliver a written migration scope document specifying which objects migrate, which map to written inventories, and which require post-migration manual setup.
Profile schema design and Data Extension architecture
We design the SFMC contact schema and Data Extension structure based on the Iterable profile and event field audit. This includes mapping Iterable custom fields to SFMC Data Extension columns with correct data types, designing linked Data Extensions for nested event payloads, and configuring Contact attribute relationships for use in Journey Builder entry conditions. Schema is validated in SFMC Sandbox or a parallel tenant environment before production migration.
Contact and profile migration
We extract all Iterable user profiles via the /api/users/getUsers endpoint with pagination, preserving the full field map including system fields and custom fields. Profiles load into SFMC Contacts via the Contacts API or Bulk API with Subscriber Key as the dedupe key. Subscription status loads into Contact attributes and suppression lists simultaneously to maintain compliance throughout the migration window.
Custom events, purchase history, and catalog data
We export Iterable custom events, purchase events, and Catalog items to CSV or JSON format, transform nested metadata to flat columnar format, and load into the corresponding SFMC Data Extensions via Bulk API or Data Loader. For large event histories (over 5 million events), we chunk the export and load in batches with exponential backoff to avoid Iterable API rate limits.
List and audience migration
We export all Iterable list memberships and recreate them in SFMC as Audience memberships or as rows in a List-Name Data Extension keyed by Subscriber Key. Dynamic Lists require SQL Query Activity definitions that we document and hand to the customer's SFMC admin for configuration in Automation Studio. Suppression lists import to SFMC Suppression Lists and MobileConnect suppression data to ensure unsubscribed contacts remain suppressed at cutover.
Journey and template inventory delivery
We export Journey definitions as written documentation including trigger configuration, branching logic, message actions, and wait-step timing. We export template content with metadata as Content Builder reference records. We do not rebuild Journeys or convert templates to AMPscript inside the migration scope. We deliver the inventory and a recommended rebuild guide to the customer's SFMC admin or partner.
Cutover, validation, and post-migration handoff
We freeze Iterable sends during cutover, run a final delta migration of any profiles modified during the window, validate contact counts and suppression list integrity in SFMC, and enable SFMC as the active sending platform. We conduct a one-week hypercare window to resolve any data integrity issues. We do not provide ongoing SFMC admin support, Journey Builder configuration, or AMPscript development as part of the migration scope.
Platform deep dives
Iterable
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Iterable and Salesforce Sales Cloud.
Object compatibility
1 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
Iterable: Not publicly documented; returns RateLimitExceeded code on limit.
Data volume sensitivity
Iterable exposes a bulk API — large-volume migrations stream efficiently.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Iterable to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Iterable to Salesforce Sales Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Iterable
Other ways to arrive at Salesforce Sales Cloud
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.