CRM migration

Migrate from Nutshell to Freshsales

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

Nutshell logo

Nutshell

Source

Freshsales

Destination

Freshsales logo

Compatibility

75%

9 of 12

objects map 1:1 between Nutshell and Freshsales.

Complexity

BStandard

Timeline

2-3 weeks

Rollback included Accuracy guarantee Field-level validation

Try the reverse

Freshsales
Nutshell

Overview

What this migration involves

Moving from Nutshell to Freshsales is a schema-translation migration that starts with Nutshell's JSON-RPC API and ends with Freshsales' REST-based import layer. Nutshell's flat People-attached-to-Company model maps to Freshsales' Contacts linked to Accounts, and Nutshell's separate Leads records can either map to Freshsales Leads or merge into Contacts depending on your sales process. We use paginated JSON-RPC reads against Nutshell's API with rate-limit handling to extract all objects, then translate the schema during a staging phase before writing to Freshsales. Activities (calls, emails, meetings, tasks) migrate as Freshsales Appointments and Tasks with parent-contact resolution. Nutshell email sequences do not export via API; we document the sequence configuration for your admin to rebuild in Freshsales Workflows post-migration. Custom fields enumerate per-object and recreate in Freshsales before data import begins.

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

Nutshell logo

Nutshell

What's pushing teams away

  • Reporting features are considered weak by users—many resort to exporting data and performing analysis in Excel rather than using built-in dashboards.
  • Limited customization options for workflows, fields, and pipeline configurations compared to HubSpot or Salesforce, frustrating power users.
  • Mobile app is described as stripped-down relative to desktop, lacking many features available in the full web application.
  • Jack-of-all-trades positioning means Nutshell lacks the depth in any single area—marketing, service, or advanced sales automation—that growing teams eventually require.
  • Email integration limitations documented by TrustRadius reviewers, with some teams reporting reliability issues during high-volume campaign sends.

Choosing

Freshsales logo

Freshsales

What's pulling them in

  • Lowest barrier to entry among major CRMs — the free tier supports up to 3 users and includes core CRM functionality before committing to per-seat pricing.
  • Built-in chat, email, and phone reduce reliance on third-party integrations for basic sales communication and contact management.
  • Freddy AI contact scoring and deal insights are included on Pro plans at a lower price than comparable HubSpot tiers.
  • Kanban pipeline views across Contacts, Accounts, and Deals provide visual deal management without requiring custom configuration.
  • Integration with the broader Freshworks ecosystem (Freshdesk, Freshchat, Freshservice) reduces tool sprawl for teams already using Freshworks.

Object mapping

How Nutshell objects map to Freshsales

Each row shows how a Nutshell object lands in Freshsales, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

Nutshell

People

maps to

Freshsales

Contact

1:1
Fully supported

Nutshell People records map directly to Freshsales Contacts. Standard fields (name, email, phone, address) translate to Freshsales Contact fields. The primary_email becomes the Contact email, and we use email as the dedupe key during import to prevent duplicate Contacts. People records without an email address are flagged for manual review because Freshsales relies on email for duplicate detection and some automation triggers.

Nutshell

Company

maps to

Freshsales

Account

1:1
Fully supported

Nutshell Companies map to Freshsales Accounts. The company name becomes Account Name, and any company-level custom fields migrate to Freshsales Account custom fields. We create the Account in Freshsales before importing linked People records so the Account-Contact lookup relationship is satisfied at insert time. Nutshell Companies without a name are held for manual naming before Account creation.

Nutshell

People

maps to

Freshsales

Contact (linked to Account)

1:1
Fully supported

Each Nutshell Person carries a reference to its parent Company. During migration we resolve the Company-Nutshell-ID-to-Account-ID mapping so that each Freshsales Contact receives the correct AccountId lookup. This parent-record resolution is critical: without it, Contacts import as unlinked and reps lose the company context on the Contact record.

Nutshell

Lead

maps to

Freshsales

Lead or Contact (customer choice)

1:many
Fully supported

Nutshell Leads are separate records with their own custom field definitions and lifecycle stage. During scoping we determine whether the customer's sales process uses Leads as unqualified prospects (mapping to Freshsales Lead) or whether all Nutshell Leads should merge into Freshsales Contacts. If Lead-to-Lead, we preserve Nutshell Lead status and source fields on the Freshsales Lead record. If Lead-to-Contact, we map the Nutshell Lead owner and any score fields to Freshsales Contact custom fields.

Nutshell

Pipeline

maps to

Freshsales

Deal (with Sales Process)

lossy
Fully supported

Nutshell Pipelines become Freshsales Deals scoped by Sales Process or Record Type. We extract each Nutshell pipeline definition including stage names, stage order, and win/loss status, then configure matching Freshsales Deal sales processes before migration. Probability percentages map to Freshsales Deal probability fields with rounding to the nearest whole number.

Nutshell

Deal

maps to

Freshsales

Deal

1:1
Fully supported

Nutshell Deals map to Freshsales Deals. The deal name becomes Deal Name, pipeline maps to the pre-created Freshsales Sales Process, and stage maps to the corresponding Freshsales Deal stage. We preserve close_date as the Freshsales Deal expected_close_date and amount as the Deal Amount. Owner assignment resolves via email match against Freshsales Users.

Nutshell

Activity (Call)

maps to

Freshsales

Task (TaskSubtype = Call)

1:1
Fully supported

Nutshell call activities map to Freshsales Tasks with task_type set to Call. Duration, disposition, and call outcome from Nutshell translate to custom Task fields. The activity timestamp preserves as Task creation date for timeline ordering. We resolve the parent-contact lookup so the call appears on the correct Contact record in Freshsales.

Nutshell

Activity (Email)

maps to

Freshsales

Task (with email body)

1:1
Fully supported

Nutshell email activities map to Freshsales Tasks with the email body preserved in the Task notes or linked as an attachment. Email subject, sender, and recipient resolve to the appropriate Freshsales Contact. If the Nutshell account used the built-in email client, the email thread reference migrates as a linked note on the Contact timeline.

Nutshell

Activity (Meeting)

maps to

Freshsales

Appointment

1:1
Fully supported

Nutshell meeting activities map to Freshsales Appointments with start time, end time, and location preserved. We resolve the attendee list by matching Nutshell contact references to Freshsales Contact records and create Appointment contact links for each attendee.

Nutshell

Activity (Task)

maps to

Freshsales

Task

1:1
Fully supported

Nutshell task activities (as opposed to calls and emails) map to Freshsales Tasks with Status, Priority, and due date preserved. The task subject becomes the Task title. If the Nutshell task was assigned to a specific owner, we resolve by email to the corresponding Freshsales User.

Nutshell

Custom Field

maps to

Freshsales

Custom Field

lossy
Fully supported

Nutshell custom fields exist per object (Company, Person, Lead). We enumerate all custom field definitions during discovery, map each to a Freshsales custom field of equivalent type (text, number, date, dropdown), and create the destination field in Freshsales before any record import begins. Custom field API names translate from Nutshell's naming to Freshsales' convention during the transform phase.

Nutshell

Tag

maps to

Freshsales

Tag or Label

1:1
Fully supported

Nutshell tags on People and Companies export as tag values and map to Freshsales Tags on the Contact or Account. Tag hierarchy (if configured in Nutshell) flattens during export since Freshsales Tags are a flat taxonomy. We apply tags in bulk after the primary record import completes.

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.

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

Freshsales logo

Freshsales gotchas

Medium

Freddy AI is Pro-tier only despite heavy marketing

High

Post-migration emails and sequences are disabled

Medium

Bot session credits are a one-time 500-session allocation

Medium

Phone credits charged per minute with no cap

Low

File storage limits scale with plan tier

Pair-specific challenges

  • JSON-RPC pagination extends extraction time for large datasets

    Nutshell's API is JSON-RPC with no bulk endpoint, requiring paginated cursor-based reads for every object. For accounts with 25,000+ People records, extraction time scales linearly and can take hours per object before any data transformation begins. We implement rate-limit-aware pagination with exponential backoff, chunk records into manageable batches, and coordinate extraction scheduling to avoid source API throttling. This extraction overhead extends the migration timeline compared to REST-based source CRMs.

  • People-to-Account lookup resolution required before Contact import

    Nutshell's flat model attaches People directly to Companies; Freshsales links Contacts to Accounts via an AccountId lookup field. If the Account lookup is unresolved at insert time, Contacts land in Freshsales without a parent Account, breaking the account context that reps depend on. We resolve the Nutshell Company ID to Freshsales Account ID before the Contact phase begins, using a lookup table built during the Account migration phase. This is a blocking dependency that must complete before Contacts write.

  • Email sequences and Pro-plan automations not accessible via API

    Nutshell Pro and Business plan users with active email sequences cannot export those sequences via the API. We do not migrate email sequences as a configuration artifact. We document all active sequence names, step counts, and trigger conditions during discovery so the customer has a rebuild checklist for Freshsales Workflow automations. Pro-plan automation rules (time-based and field-triggered) similarly do not export; we inventory them for Freshsales Workflow rebuild.

  • Nutshell Foundation plan users cannot use automation features in Freshsales

    Nutshell Foundation ($13/user/month) excludes email sequences, automation rules, and advanced pipeline customization. Teams on Foundation plans migrating to Freshsales should evaluate whether the Growth ($9/user/month) or Pro ($39/user/month) plan is appropriate for their automation needs. Freshsales Growth includes basic workflow automations, while Pro unlocks advanced Workflows and Freddy AI features. We flag this plan mismatch during scoping to prevent post-migration surprises.

Migration approach

Six steps for a successful Nutshell to Freshsales data migration

  1. Discovery and Nutshell API audit

    We authenticate against the Nutshell JSON-RPC API and enumerate all objects: People, Companies, Leads, Pipelines, Deals, Activities (calls, emails, meetings, tasks), and custom field definitions per object. We extract a full schema inventory including field types, required flags, and picklist values. We identify any attachments (metadata only, since binary blobs are not returned by the API) and document active email sequences for the rebuild checklist. We produce a written scope covering record counts per object, custom field inventory, and any pipeline or hierarchy gaps.

  2. Freshsales schema pre-creation

    We create the destination Freshsales schema before any data import. This includes provisioning custom fields (matching Nutshell's type definitions to Freshsales field types), configuring Deal Sales Processes matching each Nutshell pipeline, creating any required Freshsales Users to match Nutshell Owner emails, and setting up Tags to match Nutshell tag taxonomy. Schema is validated in Freshsales before the staging migration begins.

  3. Staging migration and reconciliation

    We run a full migration into a Freshsales staging environment using a representative data sample (typically 10-20% of records). We reconcile record counts per object, spot-check 20-30 records field-by-field against the Nutshell source, and validate that Activity records attach to the correct parent Contacts and Accounts. Any mapping corrections, field type mismatches, or missing custom fields are corrected before the production migration begins.

  4. Parent-record dependency resolution

    We build the Nutshell-Company-ID to Freshsales-Account-ID lookup table during the Account migration phase. This table is used to resolve AccountId on every Contact record during the People-to-Contact phase. Owner email matching resolves Nutshell Owner to Freshsales User. Lead split rules (Lead-to-Lead vs Lead-to-Contact) are applied as a transform during the Lead migration phase. All dependency resolution is validated before record import begins.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Accounts (from Nutshell Companies), Contacts (with AccountId resolved from the lookup table), Leads (with split rule applied), Deals (with Sales Process and Owner resolved), Activities (Tasks and Appointments via API with parent-contact resolution). Each phase emits a row-count reconciliation report. We apply tags in bulk after the primary record phases complete. We use Freshsales REST API batch endpoints where available and paginated writes for large datasets.

  6. Cutover, validation, and automation rebuild handoff

    We freeze writes on Nutshell during cutover, run a final delta migration of any records created during the migration window, then enable Freshsales as the system of record. We deliver the email sequence and automation inventory document to the customer's admin for Freshsales Workflow rebuild. We support a 72-hour post-migration validation window where we resolve reconciliation issues. We do not rebuild Nutshell sequences as Freshsales Workflows within the migration scope; that is a separate rebuild task for the customer's admin.

Platform deep dives

Context on both ends of the pair

Nutshell logo

Nutshell

Source

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
Freshsales logo

Freshsales

Destination

Strengths

  • Generous free tier for small teams with core CRM functionality without per-seat costs.
  • All-in-one sales CRM with built-in telephony, chat, and email reducing third-party tool dependency.
  • Freddy AI contact scoring and deal predictions available on Pro tier.
  • Multiple pipeline views with Kanban and list options across all plans.

Weaknesses

  • Reports lack depth compared to competitors like HubSpot, with limited customization options.
  • Integration setup is poorly documented with no clear guides for connecting third-party tools.
  • AI features gated behind $39/user/month Pro tier despite marketing emphasis on Freddy AI.
  • Bot sessions limited to 500 one-time allocation with no monthly refresh.

Complexity grading

How hard is this migration?

Standard CRM migration. 3 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 Nutshell and Freshsales.

  • Object compatibility

    B

    3 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

    Nutshell: Not publicly documented in summary form..

  • Data volume sensitivity

    A

    Nutshell exposes a bulk API — large-volume migrations stream efficiently.

Estimator

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

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

Can't find your answer?

Walk through your Nutshell to Freshsales 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 accounts under 10,000 People and 2,000 Deals with no complex custom field sets. Accounts with large engagement histories (50,000+ activity records), multiple Nutshell pipelines, or extensive custom field definitions move to five to eight weeks because of paginated JSON-RPC extraction time, parent-record lookup resolution for activities, and Freshsales schema pre-creation requirements.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Nutshell.
Land in Freshsales, 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