CRM migration
Field-level mapping, validation, and rollback between Salesforce Marketing Cloud Account Engagement and Nutshell. We move data and schema; workflows are rebuilt natively in Nutshell.
Salesforce Marketing Cloud Account Engagement
Source
Nutshell
Destination
Compatibility
8 of 9
objects map 1:1 between Salesforce Marketing Cloud Account Engagement and Nutshell.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Salesforce Marketing Cloud Account Engagement to Nutshell is a pivot from B2B marketing automation into a sales-first CRM, and the migration reflects that shift. Account Engagement stores prospects as the central unit of its data model, with scoring grades, engagement history, and automation logic layered on top. Nutshell uses People, Companies, and Leads as its core objects without a native scoring or grading model. We map Prospects to Nutshell People using email as the dedupe key, preserve Custom Fields and Tags as custom fields and multi-select picklists, and migrate activity history (calls, emails, meetings, tasks) as Nutshell Activities. Engagement Studio programs, Automation Rules, Scoring Categories, Forms, Landing Pages, and Email Templates do not migrate. We deliver a written inventory of these assets for your team to rebuild in Nutshell's workflow and email tools. The Pardot-to-Nutshell migration is a common path for teams leaving the Salesforce ecosystem entirely — Nutshell has no native Salesforce dependency and offers a flat per-user pricing model that eliminates the tier-based Prospect volume caps that drive overage billing in Account Engagement.
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 Salesforce Marketing Cloud Account Engagement object lands in Nutshell, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Salesforce Marketing Cloud Account Engagement
Prospect
Nutshell
Person
1:1Pardot Prospects map to Nutshell People records using email address as the dedupe key. Nutshell uses email for Person identity and deduplication, matching the Pardot primary key approach. We run a three-pass matching strategy: exact email match first, then case-insensitive normalized match (strips punctuation), then flagged for manual resolution. Any Prospect without an email address is held in a reconciliation queue. Prospect custom field values migrate into Nutshell custom fields created during schema design.
Salesforce Marketing Cloud Account Engagement
Account (Salesforce CRM)
Nutshell
Company
1:1Account Engagement does not have a native Account object — Prospects are associated to Accounts via the Salesforce CRM sync. When a Salesforce export is available alongside the Pardot export, we extract the linked Salesforce Account name and map it to a Nutshell Company record. If no Salesforce export is available, we extract Account names from the Prospect's company field and create Company records in Nutshell before importing People.
Salesforce Marketing Cloud Account Engagement
Contact (Salesforce CRM)
Nutshell
Person
1:1Prospects that were synced to Salesforce Contacts map to Nutshell People by email. We use the Salesforce Contact export where available to enrich Prospect records with fields that only existed in the CRM side (account name, title, phone extensions). Prospect-to-Contact relationships are preserved as Person-to-Company links in Nutshell.
Salesforce Marketing Cloud Account Engagement
Custom Fields
Nutshell
Custom Fields
1:1Pardot Custom Fields (first-class objects in the Pardot v5 API) migrate to Nutshell custom fields. We export all field definitions (label, type, associated tags) and their values per Prospect. Field types map to Nutshell equivalents: text fields, number fields, date fields, and picklist fields. Multi-select picklist options from Pardot Scoring Categories or tag-based fields migrate to Nutshell multi-select custom fields. Custom field labels are preserved; API names are generated to match Nutshell's naming conventions.
Salesforce Marketing Cloud Account Engagement
Tags
Nutshell
Custom Field (Multi-Select Picklist)
lossyPardot Tags are first-class API objects with full export support. We export tag definitions and their assignments per Prospect. Tags migrate to a Nutshell custom field configured as multi-select picklist, preserving all tag names as picklist values. The tag assignment per Person migrates as the picklist value. If the customer uses a large tag vocabulary (over 50 distinct tags), we recommend splitting into multiple custom fields during scoping.
Salesforce Marketing Cloud Account Engagement
User / Assigned User / Owner
Nutshell
User
1:1Pardot Assigned Users correspond to Nutshell Users who own Person and Company records. We resolve Pardot user_id to Nutshell User by email match. Any Pardot User without a matching Nutshell User account goes to a reconciliation queue for the customer's admin to provision before the record import phase begins. Owner assignment on Prospects migrates to the Person's assigned Nutshell User.
Salesforce Marketing Cloud Account Engagement
Engagement: Email
Nutshell
Activity
1:1Pardot email engagement history (opens, clicks, sends) migrates to Nutshell Activities of type Email. The activity body carries the email subject and a link to the original email content if available from the Pardot export. Engagement timestamps migrate as Nutshell Activity dates. Note that Pardot's aggregate engagement metrics (total opens, total clicks per Prospect) can be written to custom number fields on the Person record; individual send-level tracking does not migrate.
Salesforce Marketing Cloud Account Engagement
Engagement: Call
Nutshell
Activity
1:1Pardot call engagement history migrates to Nutshell Activities of type Call. Call duration and disposition from the Pardot export migrate as custom fields on the Activity record. Activity timestamps preserve the original engagement date for timeline ordering.
Salesforce Marketing Cloud Account Engagement
Engagement: Form Submission
Nutshell
Activity
1:1Pardot Form submission history migrates to Nutshell Activities of type Form. The form name and page URL from the Prospect's visitor activity export migrate as activity details. Form field values submitted are not individually migrated unless those fields map to Prospect custom fields already being migrated.
| Salesforce Marketing Cloud Account Engagement | Nutshell | Compatibility | |
|---|---|---|---|
| Prospect | Person1:1 | Fully supported | |
| Account (Salesforce CRM) | Company1:1 | Fully supported | |
| Contact (Salesforce CRM) | Person1:1 | Fully supported | |
| Custom Fields | Custom Fields1:1 | Fully supported | |
| Tags | Custom Field (Multi-Select Picklist)lossy | Fully supported | |
| User / Assigned User / Owner | User1:1 | Fully supported | |
| Engagement: Email | Activity1:1 | Fully supported | |
| Engagement: Call | Activity1:1 | Fully supported | |
| Engagement: Form Submission | Activity1: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.
Salesforce Marketing Cloud Account Engagement gotchas
Engagement Programs and Automation Rules cannot be exported
Prospect contact volume limits enforced per tier
Email address is the sole unique identifier for Prospect matching
Multi-Business Unit accounts require separate migration scoping
Email Template merge fields use Pardot syntax incompatible with most destinations
Nutshell gotchas
Contact tier limits enforced on import
No bulk API endpoint requires paginated extraction
Email sequences not exportable via API
Foundation plan disables key sales features
Pair-specific challenges
Migration approach
Discovery and scoping
We audit the source Account Engagement instance across Business Unit (count and data distribution), Prospect volume, Custom Field definitions, Tag vocabulary, Active vs archived records, and engagement history count by type. We cross-reference any available Salesforce CRM export alongside the Pardot export to capture Account and Contact data that only existed on the CRM side. The discovery output is a written migration scope document that identifies which data moves, which assets are flagged for manual rebuild, and which records should be archived or suppressed before migration to keep active volume within the destination's design.
Nutshell schema design
We design the Nutshell destination schema before any data moves. This includes creating custom fields on Person to receive Pardot Custom Field values, configuring a multi-select picklist custom field for Tags, adding custom number fields for Prospect score and grade, and creating Company records (from Prospect company field or Salesforce Account export) before Person import. We coordinate with the customer's Nutshell admin to configure field visibility and required-field settings that align with the source data quality.
Pardot API export and data extraction
We extract Prospect records, Custom Field definitions, Tag definitions and assignments, User/Assigned User records, Campaign metadata, and available engagement history via the Pardot v5 API. We handle API rate limits with exponential backoff and chunking. The export runs within the scoped Business Unit if multi-BU scoping applies. We produce a row-count reconciliation report at export completion and validate field-level completeness against the discovery audit before proceeding to transformation.
Data transformation and deduplication
We transform the Pardot export into Nutshell's import format: People (from Prospects), Companies (from Account name or Salesforce Account export), and Activities (from engagement history). Email serves as the dedupe key with a three-pass matching strategy. Scoring values and grades write to custom fields on Person. Tags merge into the multi-select custom field. Owner assignment resolves via email match against Nutshell Users, with unresolved owners flagged for admin provisioning. Any records with missing required fields (empty email, no name) are held in a quarantine sheet for manual resolution before import.
Sandbox migration and reconciliation
We run a full migration into the customer's live Nutshell environment (or a sandbox equivalent if available) using production data volume. The customer reconciles record counts (People imported, Companies imported, Activities imported), spot-checks 25-50 records against the Pardot source for field-level accuracy, and signs off before the final production import phase begins. Any mapping corrections happen at this stage. This step also validates that the custom field schema in Nutshell accepts all expected data types without validation-rule rejections.
Production import and cutover
We run the production migration in dependency order: Companies first (if standalone), then People with resolved Company links, then Activities. Each phase emits a row-count reconciliation report. We freeze writes to the source Pardot account during the cutover window and run a final delta import of any records modified during migration. We do not decommission the source Pardot account on migration day — the customer retains access until the account renewal date. We deliver the Engagement Studio, Automation Rule, Form, and Landing Page inventory document to the customer's admin team for rebuild in Nutshell's tools.
Platform deep dives
Salesforce Marketing Cloud Account Engagement
Source
Strengths
Weaknesses
Nutshell
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 Salesforce Marketing Cloud Account Engagement and Nutshell.
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
Salesforce Marketing Cloud Account Engagement: Daily API quota varies by Account Engagement edition (tier); resets at start of day in the account's time zone. Maximum 5 concurrent requests per Business Unit. Exceeding the daily limit returns error code 122..
Data volume sensitivity
Salesforce Marketing Cloud Account Engagement 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 Salesforce Marketing Cloud Account Engagement to Nutshell migration scoping. Not seeing yours? Book a call.
Walk through your Salesforce Marketing Cloud Account Engagement to Nutshell migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Salesforce Marketing Cloud Account Engagement
Other ways to arrive at Nutshell
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.