CRM migration

Migrate from Mautic to Nutshell

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

Mautic logo

Mautic

Source

Nutshell

Destination

Nutshell logo

Compatibility

44%

4 of 9

objects map 1:1 between Mautic and Nutshell.

Complexity

BStandard

Timeline

2-3 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Mautic to Nutshell is a migration from a self-hosted marketing automation platform built around campaigns and segments to a SaaS CRM built around pipelines and engagement tracking. Mautic organizes data around Contacts, Companies, Campaigns, Segments, Stages, Points, Tags, and Custom Objects; Nutshell uses Leads, Contacts, Accounts, Opportunities, Activities, and custom fields. We extract contact and company data directly from the Mautic database or API rather than relying on Mautic's built-in CSV export, which silently fails in v6.0.0. We map Mautic Stages to Nutshell lifecycle or pipeline positions, Mautic Tags to Nutshell custom fields, and Mautic Companies to Nutshell Accounts with multi-contact relationship preservation. Campaign and segment definitions export as written documentation for your admin to rebuild in Nutshell's automation tools. We do not migrate Workflows, Forms, Landing Pages, Assets, or Custom Objects as code; these require post-migration rebuild in Nutshell or a separate implementation engagement.

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

Mautic logo

Mautic

What's pushing teams away

  • Upgrading between major versions (4→5→6) is not a simple in-place update; plugins and custom code frequently break silently with no errors logged.
  • MySQL/MariaDB column-size limits and index-per-table restrictions throttle performance at contact counts above 500K, forcing expensive database workarounds.
  • Self-hosting requires dedicated server management, security patching, and cron job maintenance that marketing teams are not equipped to handle.
  • The UI and documentation lag behind feature development, making routine tasks like bulk contact exports unreliable in newer versions (v6.0.0 CSV exports queue but do not reliably email).
  • Enterprise support tiers at $20K–$30K/year are priced similarly to SaaS alternatives, removing the cost advantage for organizations that need professional SLA coverage.

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 Mautic objects map to Nutshell

Each row shows how a Mautic 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.

Mautic

Contact

maps to

Nutshell

Lead or Contact

1:many
Fully supported

Mautic Contacts with no associated Company map to Nutshell Lead. Mautic Contacts with an associated Company map to Nutshell Contact tied to an Account. We use Mautic's stage and lifecycle_status properties to determine qualification, and preserve the original Mautic stage in a custom field mautic_stage__c for audit. Tag membership migrates to custom multi-select fields or list membership based on customer preference.

Mautic

Company

maps to

Nutshell

Account

1:1
Fully supported

Mautic Company records map directly to Nutshell Account. The company name becomes the Account name, and address, industry, revenue, and website fields map to their Nutshell equivalents. Mautic's many-to-one contact-to-company relationship becomes Nutshell's one-to-many Account-to-Contact relationship, with multiple Contact records linked to the same Account after migration.

Mautic

Campaign

maps to

Nutshell

Automation (written documentation)

lossy
Fully supported

Mautic Campaigns are automation workflows with trigger conditions, action steps, and contact membership. Nutshell's automation model is scoped to CRM records and pipeline events rather than campaign-based contact journeys. We export campaign definitions including trigger types, step sequences, and membership criteria as a written document for the customer's admin to rebuild in Nutshell Automation or email sequences. The campaign membership itself is preserved as tag and segment membership on the contact records.

Mautic

Segment

maps to

Nutshell

List or Saved Filter

lossy
Fully supported

Mautic Segments are dynamic contact lists filtered by field values, tags, behaviors, or combinations. We export the segment filter logic as a written definition specifying each filter condition, operator, and value. The customer recreates the segment in Nutshell as a List or Saved Filter using the same logic. Segment membership contact IDs are preserved as tag assignments so the admin can validate the rebuilt segment against the original membership.

Mautic

Stage

maps to

Nutshell

Lifecycle Stage or Pipeline Position

lossy
Fully supported

Mautic Stages define contact lifecycle positions (Lead, MQL, SQL, Customer). We map stage names directly to Nutshell lifecycle stages if the destination uses a comparable model, or to pipeline stage positions on the Account/Contact records. Stage sequence order is preserved in the mapping documentation.

Mautic

Tag

maps to

Nutshell

Custom Field (multi-select)

1:1
Fully supported

Mautic Tags are flat string labels applied to contacts and other objects. We export all unique tag strings and map them to Nutshell custom multi-select fields. Tag-based segmentation logic transfers as tag assignments on each contact record. Tags that represent categorical data (industry, product interest, account type) are mapped to dedicated custom fields rather than a catch-all tag field.

Mautic

Custom Contact Field

maps to

Nutshell

Custom Field

1:1
Fully supported

Mautic custom contact fields (user-defined properties beyond the standard schema) map to Nutshell custom fields with type matching: text to text, number to number, date to date, boolean to checkbox, and picklist to dropdown. Field alias from Mautic becomes the field name in Nutshell. We flag any fields approaching Mautic's ~150 field ceiling so the customer knows which fields were constrained before migration.

Mautic

User

maps to

Nutshell

User

1:1
Fully supported

Mautic User records (internal user accounts with roles and permissions) map to Nutshell User records. We extract user email, first name, last name, and role. Password hashes do not transfer; we document the user list so the customer's admin provisions new Nutshell login credentials. Role and permission configurations map to Nutshell team roles as documented in the migration output.

Mautic

Category

maps to

Nutshell

List or Tag Group

lossy
Fully supported

Mautic Categories group assets, campaigns, emails, and contacts into hierarchical folders. We export the category hierarchy and map top-level categories to Nutshell Lists or tag groups for the admin to assign during post-migration cleanup.

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.

Mautic logo

Mautic gotchas

High

Mautic v6 CSV export silently fails to deliver files

High

Mautic 4 to 5 upgrade breaks plugins without warning

Medium

MySQL/MariaDB index limits throttle large contact databases

Medium

Custom Object Relationships API is non-functional

Medium

Mautic 5 to 6 migration logs no errors on failure

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

  • Mautic v6 CSV export silently fails without error logs

    In Mautic 6.0.0, the CSV export function queues the file for processing but never delivers it via email and writes no errors to Apache or Mautic internal logs. This affects both contact and company exports. We handle this by bypassing the built-in export entirely: we pull contact and company data directly from the MySQL/MariaDB database using authenticated read access, or we call the REST API in batched requests with offset pagination. This approach is slower but reliable regardless of the export queue failure.

  • MariaDB source databases require compatibility handling

    Mautic instances running on MariaDB may use syntax and data types not compatible with MySQL or the Nutshell API. Long-running Mautic instances (started at v2.x and upgraded through v4/v5/v6) accumulate schema drift that complicates export. We profile the source database schema before extraction, flag any MariaDB-specific types or encodings, and apply type normalization in the transform layer before loading into Nutshell. This adds scoping time but prevents import rejection from type mismatches.

  • Mautic Custom Objects use an incomplete Relationships API

    Mautic's Custom Objects support relationships between object types, but the REST API endpoint for creating relationship records is documented as broken in community reports from 2022. We access relationship data through the MySQL/MariaDB junction table schema, mapping the junction records to the destination's equivalent relationship model or to tag assignments if no direct equivalent exists in Nutshell.

  • Mautic Campaigns and Segments require manual rebuild

    Mautic's campaign and segment model has no direct Nutshell equivalent. Nutshell's automation is scoped to CRM records and pipeline events rather than contact-triggered multi-step journeys. We export campaign definitions and segment filter logic as written documentation, preserving the membership data as tag assignments on contact records so the admin has a reference for rebuild. This is not an automated migration of automation logic.

  • Mautic Plugins and Custom Code break on major version upgrades

    When Mautic 4 to 5 or 5 to 6 upgrades run, third-party plugins frequently become incompatible with no pre-upgrade compatibility checker. Instances running plugin-dependent integrations (Salesforce sync, HubSpot sync, custom field plugins, relationship plugins) face the risk that the upgrade process will break the sync before migration data is extracted. We audit all installed plugins and their compatibility status before migration scoping, and we extract data before any upgrade attempt to avoid triggering a broken upgrade on a live instance.

Migration approach

Six steps for a successful Mautic to Nutshell data migration

  1. Source audit and extraction method selection

    We audit the source Mautic instance across version (v4, v5, or v6), database engine (MySQL or MariaDB), custom field count, segment definitions, campaign definitions, tag inventory, and installed plugin list. If the instance is v6 or exhibits the CSV export failure, we select direct database extraction as the primary method. If the instance is v4 or v5 with a working export, we use the REST API with batched pagination. We flag any plugins with known compatibility issues before proceeding.

  2. Destination schema preparation

    We configure the Nutshell destination before data extraction begins. This includes creating custom fields mapped to Mautic custom contact field names and types, configuring lifecycle stages or pipeline positions to match the Mautic stage hierarchy, and setting up lists or saved filters for segment reconstruction. Nutshell's API supports custom field creation; we use the Nutshell REST API to provision the schema in a pre-migration validation pass.

  3. Data extraction from Mautic

    For v6 instances or instances with CSV export failures, we extract contact and company records directly from the Mautic MySQL/MariaDB database using authenticated read access with batched queries to avoid locking. We extract standard fields, custom contact fields, company associations, tag assignments, and stage values in parallel passes. For v4/v5 instances with working exports, we use the REST API with offset pagination (500 records per page) and rate-limit handling to extract the same dataset.

  4. Transform and load into Nutshell

    We transform the extracted data in the migration staging layer. Mautic Contacts without an associated Company map to Nutshell Lead; contacts with an associated Company map to Nutshell Contact with AccountId resolved. We compute the Account record first so that Contact inserts succeed with the lookup. Custom field values map by name match; tag assignments map to the designated custom multi-select field. We use the Nutshell REST API for record inserts with batched requests and error logging per record.

  5. Campaign and segment documentation

    We export the Mautic campaign definitions (trigger types, step sequences, action configurations) and segment filter logic (field conditions, operators, values) as written JSON and structured text documents. Tag membership is preserved on contact records as tag values that reference the original segment names. The admin receives the campaign documentation and segment membership data as a handoff package for rebuild in Nutshell Automation.

  6. Cutover and validation

    We freeze Mautic writes during the final cutover window, run a delta extraction for any records modified since the initial extraction, and load the delta into Nutshell. We deliver a row-count reconciliation report comparing Mautic record counts against Nutshell record counts by type. We provide the campaign and segment documentation package. We do not rebuild Mautic workflows or automations in Nutshell; that work falls to the customer's admin or a Nutshell implementation partner.

Platform deep dives

Context on both ends of the pair

Mautic logo

Mautic

Source

Strengths

  • Zero per-contact licensing cost with the self-hosted open-source core product.
  • Full source code access enables unlimited customization without vendor dependency.
  • Complete data ownership and infrastructure control for compliance-sensitive organizations.
  • Multi-channel support including email, SMS, mobile push, and web notifications in one platform.
  • Active community and partner ecosystem with implementation support available.

Weaknesses

  • Self-hosted deployment requires ongoing server administration, security updates, and infrastructure costs.
  • MySQL/MariaDB column-size and index-per-table limits constrain large-scale contact databases.
  • Documentation and feature parity across versions is inconsistent, especially for new major releases.
  • CSV export reliability degrades in Mautic v6, and queued export jobs can fail silently without logging errors.
  • Upgrade paths between major versions frequently break third-party plugins and custom code.
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. 2 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 Mautic and Nutshell.

  • Object compatibility

    B

    2 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

    Mautic: Not publicly documented — enforced at the server level, not within Mautic software.

  • Data volume sensitivity

    B

    Mautic doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Mautic 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 Mautic to Nutshell data migrations

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

Can't find your answer?

Walk through your Mautic 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 two and three weeks for instances under 10,000 Contacts with a clean v5 source, no complex custom field schemas, and a MySQL source database. Migrations from v4 instances, large contact databases (over 100,000 records), legacy MariaDB databases, or instances with heavy plugin dependencies move to four to six weeks because of direct database extraction work, compatibility handling, and extended validation.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Mautic.
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