CRM migration

Migrate from Dynamics 365 Marketing to Nutshell

Field-level mapping, validation, and rollback between Dynamics 365 Marketing and Nutshell. We move data and schema; workflows are rebuilt natively in Nutshell.

Dynamics 365 Marketing logo

Dynamics 365 Marketing

Source

Nutshell

Destination

Nutshell logo

Compatibility

70%

7 of 10

objects map 1:1 between Dynamics 365 Marketing and Nutshell.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Dynamics 365 Marketing to Nutshell is a platform simplification, not a direct replacement of equivalent features. Dynamics 365 Marketing stores core CRM records (Contacts, Leads, Accounts, Opportunities) in Dataverse alongside marketing-specific objects in Customer Insights - Journeys, while Nutshell uses a single unified People model that combines Dynamics Leads and Contacts into one record type. We split the Dataverse Contact and Lead entities into Nutshell People during import, preserving the original Lifecycle Stage as a custom field. Marketing-specific objects including Customer Journeys, Segments, Marketing Lists, and marketing email templates do not have Nutshell equivalents and are delivered as exported data with a rebuild inventory for the customer's admin. The $1,500-per-month per-tenant marketing billing model does not carry forward; we map each source contact's marketing-flag status to a custom People field in Nutshell so the customer retains the data if they later evaluate a marketing automation layer. We do not migrate Power Automate flows, Customer Journey definitions, or marketing automation rules; these require manual rebuild in Nutshell's native workflow builder.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Dynamics 365 Marketing logo

Dynamics 365 Marketing

What's pushing teams away

  • Users without prior Microsoft stack experience report the interface as complex and overwhelming, with menu navigation described as clunky and feature locations hard to remember across sessions.
  • Performance degrades noticeably when handling large contact databases or running complex Journey logic, leading to slow load times that disrupt marketing team workflows.
  • Licensing costs are prohibitive for small to mid-market teams; the per-tenant Marketing price point starts at $1,500/month before user-level CRM seats are added.
  • Implementation timelines commonly stretch to 6-12 weeks for full deployments, and organizations underestimate the hidden costs of training, integration, and data migration that are not included in licensing quotes.
  • Power Apps and Power Automate are marketed as low-code but require technical resources to extend; business users hit barriers quickly when documentation assumes IT-level familiarity.

Choosing

Nutshell logo

Nutshell

What's pulling them in

  • Lowest cost entry point among mid-market CRMs—Foundation plan starts at $13/user/month, making it accessible for teams validating CRM fit before committing.
  • Integrated sales automation and email sequencing on Pro plans without requiring a separate email marketing platform, per verified Capterra reviews.
  • Consistently praised for intuitive interface and fast onboarding, with case studies reporting 100% team adoption rates within initial deployment periods.
  • Strong customer support responsiveness cited across G2 reviews, with dedicated support tiers available on Enterprise plans.
  • Native integrations with WhatsApp, Facebook Messenger, Instagram, and Slack reduce reliance on third-party middleware for common communication channels.

Object mapping

How Dynamics 365 Marketing objects map to Nutshell

Each row shows how a Dynamics 365 Marketing 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.

Dynamics 365 Marketing

Contact

maps to

Nutshell

People

1:many
Fully supported

Dynamics 365 Marketing Contact records map to Nutshell People. Where the source Contact has a related Lead, we evaluate the Lead's lifecycle stage and merge into a single People record in Nutshell with a custom field retaining the original lifecycle stage value from Dataverse. The primary email address becomes the dedupe key during import. The Contact-to-Account lookup resolves to the Account mapping described below before the People import begins.

Dynamics 365 Marketing

Lead

maps to

Nutshell

People

1:many
Fully supported

Dynamics Lead records that have not been qualified into Contacts merge into Nutshell People. We preserve the leadscore, lead status, and source attribution fields as custom fields on the People record. Active Leads and Contacts are processed together in a single pass using the lifecycle stage evaluation logic to avoid creating duplicate People records for the same individual.

Dynamics 365 Marketing

Account

maps to

Nutshell

Company

1:1
Fully supported

Dynamics 365 Marketing Accounts map to Nutshell Companies. The primary address, industry, website, and any custom account fields migrate as Company fields. The Account is created before any People import so that the Account-to-People relationship is satisfied at the moment of People insert.

Dynamics 365 Marketing

Opportunity

maps to

Nutshell

Deal

1:1
Fully supported

Dynamics Opportunities map to Nutshell Deals. Pipeline stage maps from the Dynamics stage name to the Nutshell pipeline stage. Estimated close date, deal amount, probability, and owner assignment migrate directly. The opportunity-to-People and opportunity-to-Company lookups resolve via the People and Company import passes completed earlier.

Dynamics 365 Marketing

Activity: Task

maps to

Nutshell

Activity

1:1
Fully supported

Dynamics Task records (ActivityPointer with Task type) map to Nutshell Activity entries on the relevant People or Deal timeline. Subject, description, due date, priority, and owner assignment transfer. The regarding object lookup (WhoId, WhatId) resolves to the migrated People or Deal record using the ID mapping table built during the People and Deal passes.

Dynamics 365 Marketing

Activity: PhoneCall

maps to

Nutshell

Activity

1:1
Fully supported

Dynamics PhoneCall records (ActivityPointer with PhoneCall type) map to Nutshell Activity entries with the call disposition and duration preserved in custom fields. The Activity timestamp preserves the original Dynamics call date and time. Resolved WhoId and WhatId references connect the activity to the migrated People or Deal record.

Dynamics 365 Marketing

Activity: Appointment

maps to

Nutshell

Activity

1:1
Fully supported

Dynamics Appointment records map to Nutshell Activity entries with start time, end time, and location preserved. Attendee information migrates as custom fields on the Activity record because Nutshell does not have a separate EventRelation equivalent. The original Dynamics timestamp is retained as the Activity date.

Dynamics 365 Marketing

Annotation (Note with Attachment)

maps to

Nutshell

Attachment

1:1
Fully supported

Dynamics Annotations with file attachments export as individual records. We map each Annotation to a Nutshell Attachment linked to the parent People or Deal record via the objectid and objecttypecode from Dataverse. The attachment content and the note body migrate as separate entries: note body as Activity content and the file as a linked Attachment.

Dynamics 365 Marketing

User

maps to

Nutshell

User

1:1
Fully supported

Dynamics Users referenced as record owners are mapped to Nutshell Users by email match. We extract the complete owner list from Dataverse during discovery and the customer's Nutshell admin provisions the corresponding users before production migration begins. Owner resolution is a prerequisite for the Deal and Activity passes because OwnerId is a required reference on those object types.

Dynamics 365 Marketing

Custom Property

maps to

Nutshell

Custom Field

lossy
Fully supported

Custom fields defined in the Dataverse solution schema migrate to Nutshell custom fields on the corresponding People, Company, or Deal object. The customer must confirm which custom fields are available on their Nutshell plan (Enterprise tier required for custom fields on some objects). We require the managed solution ZIP or Configuration Migration Tool schema export to capture field type, required status, and picklist values before creating the Nutshell field definitions.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Dynamics 365 Marketing logo

Dynamics 365 Marketing gotchas

High

Marketing Contact billing triggers on record import

High

Configuration Migration Tool does not migrate high-volume transactional data

Medium

Customer Insights segments are stored separately from Dataverse CRM records

Medium

Marketing Lists and Campaign Activities have legacy schema dependencies

Low

Custom entities require a managed solution schema, not a UI export

Nutshell logo

Nutshell gotchas

High

Contact tier limits enforced on import

Medium

No bulk API endpoint requires paginated extraction

Medium

Email sequences not exportable via API

Medium

Foundation plan disables key sales features

Pair-specific challenges

  • Customer Journeys, Segments, and marketing emails have no Nutshell equivalent

    Dynamics 365 Marketing's marketing automation objects, including Customer Journeys, Segments, marketing email templates, and form submissions, do not have structural equivalents in Nutshell's CRM model. Nutshell provides basic email tools and workflow automation but lacks a journey-builder, segment engine, or marketing contact management layer. We execute a separate data export pass for these objects, preserving the raw content, membership criteria, and configuration metadata in a written inventory for the customer's admin to rebuild in Nutshell or a dedicated marketing automation platform.

  • Marketing contact billing flag does not carry to Nutshell

    Dynamics 365 Marketing's per-tenant marketing contact billing model has no equivalent in Nutshell. Any contact record that qualified as a Marketing Contact in Dynamics 365 Marketing should be flagged in the scoping call. We preserve this flag value in a custom field on the Nutshell People record (msdyn_marketing_contact__c) so that if the customer later evaluates HubSpot, Salesforce Marketing Cloud Account Engagement, or another marketing automation layer, the historical marketing contact status data is available for segmentation without a second migration pass.

  • Configuration Migration Tool cannot handle high-volume transactional data

    The Configuration Migration Tool is designed for marketing asset schema (email templates, Journey definitions, segment rules, form configurations) and reference data. Large-volume transactional data such as activity history or bulk contact imports cannot move through this tool without timeouts and record count limits. We use the Configuration Migration Tool for marketing asset schema extraction and the Dataverse REST API with batched requests for high-volume record migration, with Power Automate used as a fallback for very large datasets.

  • Customer Insights segment data lives in a separate service from core CRM records

    Segment definitions and membership data in Dynamics 365 Marketing's Customer Insights - Data service are stored separately from the core CRM Dataverse database. A migration that only exports CRM records will leave segment memberships behind. We execute a separate export pass for Customer Insights segment data and handle the dependency ordering so People records exist in Nutshell before segment memberships are imported as a custom field or list membership.

  • Custom entity schema requires a managed solution export, not a UI export

    Custom entities created within a Dataverse solution require the managed solution ZIP or Configuration Migration Tool schema file before we can accurately map custom entity imports. Extracting field definitions from the Dynamics 365 UI does not capture relationship metadata, field security profiles, or managed property settings. We use UI-based exports only for data verification, not schema definition.

Migration approach

Six steps for a successful Dynamics 365 Marketing to Nutshell data migration

  1. Discovery and schema audit

    We audit the source Dynamics 365 Marketing environment across Dataverse core entities (Contact, Lead, Account, Opportunity, ActivityPointer) and marketing-specific tables under the msdynmkt_ prefix. We extract the managed solution ZIP or Configuration Migration Tool schema file to capture custom entity definitions, field types, picklist values, and relationship metadata. We inventory marketing assets (Journeys, Segments, marketing emails, forms) and count owner, activity, and attachment volumes. The discovery output is a written migration scope covering object counts, custom field inventory, and a recommendation on whether the customer wants a separate Customer Insights segment pass.

  2. Nutshell workspace preparation

    We create the Nutshell workspace structure: People fields configured to match the Dataverse contact and lead schema, Company fields aligned with the account schema, Deals configured with pipeline stages mapped from Dynamics opportunity stages, and custom fields created for any lifecycle stage, lead score, or custom property values. Owner users are provisioned in Nutshell by the customer's admin with email addresses matching the Dynamics user records. Custom field creation is confirmed with the customer before any data import begins because Nutshell's custom field availability varies by plan.

  3. Sandbox migration and reconciliation

    We run a full migration into a Nutshell trial or staging environment using production-equivalent data volumes. The customer's admin reviews record counts (People in, Companies in, Deals in, Activities in), spot-checks 25-50 random records against the Dynamics source, and confirms the lifecycle stage mapping is accurate before we proceed to production. Mapping corrections and custom field additions happen at this stage, not during production cutover.

  4. Production migration in dependency order

    We run production migration in record-dependency order: Companies first (from Accounts), then People (from Contacts and Leads with the lifecycle stage split applied and marketing contact flag preserved in a custom field), then Deals (with resolved People and Company lookups and owner references), then Activity history (Tasks, PhoneCalls, Appointments via batched API writes with parent-record resolution), then Attachments. Marketing asset exports (Journeys, Segments, marketing emails) run as a separate data pass with the output delivered as structured data files rather than Nutshell records.

  5. Cutover and handoff

    We freeze writes in Dynamics 365 Marketing during cutover, run a final delta migration of any records modified during the migration window, then enable Nutshell as the system of record. We deliver the marketing asset inventory and segment data export to the customer's admin. We support a one-week hypercare window to resolve reconciliation issues reported by the Nutshell end users. We do not rebuild Dynamics marketing workflows, Customer Journeys, or segment automations inside the migration scope; these are documented for the customer's admin to rebuild in Nutshell or a dedicated marketing automation platform.

Platform deep dives

Context on both ends of the pair

Dynamics 365 Marketing logo

Dynamics 365 Marketing

Source

Strengths

  • Native integration with Microsoft 365, Teams, and SharePoint eliminates separate identity and document management overhead.
  • Dataverse provides a unified data layer across CRM, Customer Service, and Marketing, enabling single-customer-record views without ETL synchronization.
  • Customer Insights - Journeys includes AI-assisted content generation and predictive lead scoring as part of the Marketing tier.
  • Per-tenant pricing covers unlimited marketing contacts beyond the base tenant fee, which benefits large database marketers.
  • Configuration Migration Tool supports movement of marketing assets between environments for Dev-Test-Prod promotion.

Weaknesses

  • Per-tenant marketing pricing at $1,500/month plus user-level CRM seats creates significant cost for organizations not already committed to the Microsoft stack.
  • Steep learning curve and complex UI navigation mean implementation projects routinely require 6-12 weeks with dedicated admin resources.
  • Performance issues arise with large datasets and complex Journey logic, particularly when the marketing environment shares Dataverse capacity with other applications.
  • The split between outbound marketing (Customer Insights - Journeys) and transactional CRM data introduces schema complexity that simpler standalone marketing tools do not have.
  • Configuration Migration Tool cannot handle high-volume transactional data; large record migrations require Power Automate flows or custom plugins instead.
Nutshell logo

Nutshell

Destination

Strengths

  • Simple, intuitive interface with minimal learning curve for sales teams new to CRM
  • Per-seat pricing is transparent and predictable, with annual billing reducing monthly cost
  • Full data export tool available for all account data including backups
  • Open JSON-RPC API allows programmatic access to all core objects
  • Native multichannel engagement (email, SMS, WhatsApp) without third-party add-ons for communication

Weaknesses

  • Reporting and analytics are considered weak, requiring manual Excel exports for detailed analysis
  • No bulk API endpoint—migration requires paginated API reads that must be rate-limited carefully
  • JSON-RPC API is less common than REST, requiring custom integration code compared to standard REST CRMs
  • Add-on costs (Forms, Nutshell IQ, Email Marketing) are per-company charges that stack on top of per-seat pricing
  • Feature restrictions on entry-level plans mean teams often need mid-tier to get basic automation

Complexity grading

How hard is this migration?

Standard CRM migration. 1 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Dynamics 365 Marketing and Nutshell.

  • Object compatibility

    B

    1 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Dynamics 365 Marketing: Dataverse Web API enforces organization-level throttling; specific limits vary by workload and are not publicly documented at fixed thresholds.

  • Data volume sensitivity

    A

    Dynamics 365 Marketing exposes a bulk API — large-volume migrations stream efficiently.

Estimator

Estimate your Dynamics 365 Marketing to Nutshell migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Dynamics 365 Marketing to Nutshell data migrations

Answers to the questions buyers ask most during Dynamics 365 Marketing to Nutshell migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Dynamics 365 Marketing to Nutshell migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between three and five weeks for accounts under 10,000 Contacts and 3,000 Deals with no custom entities and a straightforward lifecycle stage matrix. Migrations with large activity histories (over 200,000 activity records), Dataverse custom entities, or a separate Customer Insights segment pass move to eight to twelve weeks because of the additional export pass and the schema preparation work for custom fields. The Nutshell side of the migration is typically faster than the Dynamics export because Nutshell has a simpler schema with fewer object types.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Dynamics 365 Marketing.
Land in Nutshell, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day