CRM migration
Field-level mapping, validation, and rollback between ContactWise CRM and Nutshell. We move data and schema; workflows are rebuilt natively in Nutshell.
ContactWise CRM
Source
Nutshell
Destination
Compatibility
7 of 10
objects map 1:1 between ContactWise CRM and Nutshell.
Complexity
BStandard
Timeline
2-3 weeks
Overview
Moving from ContactWise CRM to Nutshell is a size-down migration for teams seeking transparent pricing, faster onboarding, and a simplified data model. ContactWise stores Contacts, Leads, and Opportunities as distinct objects with workflow automation and service desk ticketing, while Nutshell uses a leaner People-Company-Deal model without a native ticket object. The primary migration constraint is that ContactWise does not publish a public REST API for the CRM module, so data export relies on the platform's native export function with limited record relationship fidelity. We run a discovery export first to assess completeness, then perform explicit field mapping for every custom property, create matching Nutshell custom fields before import, and preserve pipeline stage definitions in a written stage mapping table. Workflows, automation rules, and service desk tickets do not migrate as code; we deliver a documented inventory of every active rule for your admin to rebuild in Nutshell.
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 ContactWise CRM 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.
ContactWise CRM
Contact
Nutshell
Person
1:1ContactWise Contacts map directly to Nutshell People. Standard fields including name, email, phone, address, and purchase history transfer to corresponding Nutshell People fields. Custom contact properties are identified during discovery, matching Nutshell custom fields are created before import, and value transformations are applied where data types differ (for example, multi-select picklists from ContactWise convert to comma-separated text in Nutshell).
ContactWise CRM
Lead
Nutshell
Person (with tag)
1:1ContactWise Leads map to Nutshell People with a lead_source tag applied during import. The Lead status and source attribution migrate as custom fields on the Person record. If the customer wants to distinguish Leads from Contacts in Nutshell's People model, we create a custom field for lead_status and tag records accordingly.
ContactWise CRM
Company/Account
Nutshell
Company
1:1ContactWise Company records map to Nutshell Company with a direct field correspondence. Company name, address, website, and industry transfer to matching Nutshell fields. Company is created before any Person import so that the Person-to-Company association is satisfied at the moment of Person insert.
ContactWise CRM
Opportunity
Nutshell
Deal
1:1ContactWise Opportunities map to Nutshell Deals with deal name, amount, stage, expected close date, and owner assignment preserved. The opportunity_value maps to Deal value; opportunity_stage maps to Nutshell Deal status. Owner assignment resolves by email match against Nutshell users.
ContactWise CRM
Pipeline Stage
Nutshell
Deal Status
lossyContactWise pipeline stage definitions are documented during discovery, including stage names, order, and probability percentages. We create a stage mapping table that is applied during import, and Nutshell Deal status values are configured to match the source stage sequence. Stage names are preserved as written in ContactWise unless they exceed Nutshell's character limit.
ContactWise CRM
Custom Contact Properties
Nutshell
Custom Fields
lossyContactWise custom properties on Contact and other objects are identified during scoping, and matching Nutshell custom fields are created before any data import. Field names must match exactly for Nutshell's CSV import to map them correctly. We apply type transformations where ContactWise data types do not map to Nutshell field types, such as date formats and numeric precision.
ContactWise CRM
Service Desk Ticket
Nutshell
Not Migrated (documented)
1:1ContactWise service desk tickets do not have a direct Nutshell equivalent because Nutshell does not include a native ticket or case object. We export ticket records to a CSV for customer reference and create a lookup document mapping each ticket to its linked Contact Person. If the customer needs ticket functionality in Nutshell, we recommend creating a Deal for each active ticket with a custom ticket_status picklist field and closing the Deal when resolved.
ContactWise CRM
Time Entry
Nutshell
Not Migrated (documented)
1:1ContactWise time tracking entries are exported to a CSV linked to the associated Contact, Ticket, or Project reference. Nutshell does not have a native time tracking object, so we preserve the export for customer reference and note the association in the migration deliverable. Time entries do not map to standard Nutshell activity records.
ContactWise CRM
Document/Attachment
Nutshell
File (via cloud storage)
1:1ContactWise documents and attachments associated with Contacts, Opportunities, or Tickets are exported to cloud storage (customer-provided bucket or our staging storage). Link records are created in Nutshell as file attachments on the corresponding Person, Company, or Deal. We flag any file type that Nutshell does not support for preview rendering.
ContactWise CRM
Workflow Rule
Nutshell
Not Migrated (documented)
lossyContactWise workflow rules are platform configuration, not data records, and do not export as transferable logic. We document every active workflow during discovery with its trigger type, conditions, and actions, then deliver a written inventory recommending equivalent Nutshell Powerup rules or Workflow automation configurations. The customer's admin rebuilds the automation logic post-migration.
| ContactWise CRM | Nutshell | Compatibility | |
|---|---|---|---|
| Contact | Person1:1 | Fully supported | |
| Lead | Person (with tag)1:1 | Fully supported | |
| Company/Account | Company1:1 | Fully supported | |
| Opportunity | Deal1:1 | Fully supported | |
| Pipeline Stage | Deal Statuslossy | Fully supported | |
| Custom Contact Properties | Custom Fieldslossy | Fully supported | |
| Service Desk Ticket | Not Migrated (documented)1:1 | Fully supported | |
| Time Entry | Not Migrated (documented)1:1 | Fully supported | |
| Document/Attachment | File (via cloud storage)1:1 | Fully supported | |
| Workflow Rule | Not Migrated (documented)lossy | 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.
ContactWise CRM gotchas
Workflow rules do not export as records
Service desk tickets require non-standard field mapping
API documentation is not publicly available for the CRM module
Custom contact properties may require manual field creation in destination
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 export assessment
We audit the ContactWise CRM instance to inventory all objects, custom properties, pipeline definitions, active workflows, and service desk tickets. We run an initial export using ContactWise's native export function to assess data completeness, record relationship fidelity, and any data gaps that require supplemental extraction or transformation. The discovery output is a written scope document with object counts, custom field inventory, and a risk assessment for the API gap.
Schema design and custom field provisioning
We design the Nutshell destination schema based on the discovery findings. This includes creating custom fields that correspond exactly to ContactWise custom properties, configuring Deal status values to match the ContactWise pipeline stage sequence, and creating any tag categories needed to distinguish Leads from Contacts. Custom fields are created in Nutshell before any data import so that the CSV import can map them correctly.
Test import and reconciliation
We run a test migration using a representative sample of ContactWise records (typically 50-100 records per object) into a Nutshell trial or staging environment. We validate field mapping accuracy, verify Person-to-Company associations, confirm Deal stage assignments, and check that custom field values transfer correctly. The customer's admin reviews the test output and signs off before production migration begins.
Export extraction and transformation
We extract data from ContactWise using the native export function supplemented by any customer-provided direct database access. Records are transformed into Nutshell-compatible CSV format with exact field name correspondence, date format normalization, and multi-select value flattening. We generate a stage mapping table that maps ContactWise pipeline stages to Nutshell Deal status values, applying probability percentages where applicable.
Production migration in dependency order
We run production migration in record-dependency order: Companies first, then People (with the Lead/Contact distinction handled via tags), then Deals (with Company association resolved and Owner assignment matched by email). Custom field data is included in each CSV batch. After each object batch completes, we emit a reconciliation report comparing imported record count to source record count.
Cutover, documentation, and rebuild handoff
We freeze ContactWise writes during cutover and run a final delta migration for any records modified during the migration window. We deliver the workflow inventory document, the ticket-to-Deal mapping reference, and the time entry CSV export to the customer's admin team. We provide a one-week hypercare window to resolve reconciliation issues. We do not rebuild ContactWise workflows in Nutshell as part of the migration scope; that work is handled by the customer's admin using the delivered inventory.
Platform deep dives
ContactWise CRM
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 ContactWise CRM 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
ContactWise CRM: Not publicly documented.
Data volume sensitivity
ContactWise CRM doesn't expose a bulk API — REST + parallelization used for high-volume runs.
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 ContactWise CRM to Nutshell migration scoping. Not seeing yours? Book a call.
Walk through your ContactWise CRM 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 ContactWise CRM
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.