CRM migration

Migrate from Teamwork CRM to Nutshell

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

Teamwork CRM logo

Teamwork CRM

Source

Nutshell

Destination

Nutshell logo

Compatibility

63%

5 of 8

objects map 1:1 between Teamwork CRM and Nutshell.

Complexity

BStandard

Timeline

1-2 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Teamwork CRM to Nutshell is a lateral-size migration between two SMB-focused sales platforms. Both systems use a Person-Organization relationship model, but Teamwork maintains separate Leads and Opportunities pipelines while Nutshell consolidates both into a single Lead object with status-based stages. We handle that schema reduction during scoping, map Teamwork's text, number, and dropdown Custom Fields to Nutshell's typed custom field model, and resolve Owner IDs against Nutshell's People table before record import. Teamwork's 120 req/min API ceiling and CSV-only list export govern our extraction strategy; Nutshell's plan-gated custom field limits govern what can be written during load. Attachments, documents, and SSO configuration do not migrate; we deliver a written inventory of Teamwork Custom Filters and pipeline configurations for manual rebuild in Nutshell's settings.

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

Teamwork CRM logo

Teamwork CRM

What's pushing teams away

  • Multiple Capterra and G2 reviews report that users cannot attach emails or documents directly to Contact records, forcing activity logging to happen outside the CRM.
  • The platform lacks native Office 365 integration, which creates friction for teams embedded in the Microsoft ecosystem who rely on calendar and email sync.
  • Teams outgrowing the feature set cite missing capabilities: advanced forecasting, multi-object automation, and granular role-based permissions available in HubSpot or Salesforce.
  • Larger organizations report that the per-user pricing model becomes costly as the sales team scales, prompting evaluation of flat-rate or tiered alternatives.

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

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

Teamwork CRM

Company

maps to

Nutshell

Organization

1:1
Fully supported

Teamwork CRM Company records map directly to Nutshell Organization. The Organization is the parent record in the data model, created before any Person import so that the Organization lookup is satisfied at Person insert. We use Company name as the primary dedupe key and map address, phone, website, and industry fields by name.

Teamwork CRM

Contact

maps to

Nutshell

Person

1:1
Fully supported

Teamwork CRM Contact maps to Nutshell Person with the OrganizationId lookup resolved to the target Organization created in the previous phase. Standard fields (name, email, phone, title) map directly. All active Contact Custom Fields migrate as typed Nutshell custom fields; Teamwork dropdown options become Nutshell dropdown values verbatim. Note that Teamwork's per-Contact tag set maps to Nutshell's tag field on Person.

Teamwork CRM

Lead

maps to

Nutshell

Lead

1:1
Fully supported

Teamwork CRM Lead maps to Nutshell Lead. The leadstage property from Teamwork maps to Nutshell's Lead status field. Teamwork pipeline assignment is captured as a custom field on the Nutshell Lead because Nutshell does not support multiple parallel lead pipelines; pipeline context is preserved for manual rebuild in Nutshell settings. Owner resolution runs against the User mapping before Lead insert.

Teamwork CRM

Opportunity

maps to

Nutshell

Lead

1:many
Fully supported

Teamwork CRM Opportunities map to Nutshell Lead records with a deal-type classification. The opportunity value, probability, and stage from Teamwork become Nutshell custom fields (deal_value__c, probability__c, opportunity_stage__c) because Nutshell does not have a native Opportunity object equivalent to Salesforce. We flag the stage value for Nutshell pipeline and stage configuration post-migration. This split is the most significant schema reduction in the migration and is reviewed with the customer during scoping.

Teamwork CRM

Pipeline

maps to

Nutshell

Lead status values

lossy
Fully supported

Teamwork's named pipelines and stage definitions are captured as migration metadata. We deliver a written pipeline configuration document specifying which Teamwork pipeline maps to which Nutshell Lead status values, along with the recommended stage order and any deprecated stage handling. The customer configures Nutshell's Lead statuses (Settings > Leads > Statuses) before production migration begins.

Teamwork CRM

Activity (calls, meetings, tasks)

maps to

Nutshell

Activity (calls, meetings, tasks)

1:1
Fully supported

Teamwork CRM Activity records (SyncHub entity model: title, description, start date, duration, due date, completion status, assignee) map to Nutshell Activity records linked to the target Person or Lead. Call and meeting type are preserved via activity type field. We resolve the assignee by matching Teamwork hubspot_owner_id to the Nutshell Person's user record by email before insert.

Teamwork CRM

Custom Field

maps to

Nutshell

Custom Field

lossy
Fully supported

Teamwork CRM supports three custom field types: short text, integer, and dropdown. Each migrates to a Nutshell custom field of the equivalent type. Multi-select, date, and boolean custom fields are not natively supported by Teamwork CRM, so there is no corresponding gap on the destination. If a Teamwork dropdown custom field has options not pre-created in Nutshell, we create the Nutshell field and options before migration. Custom field limits are plan-gated in Nutshell; we verify the destination plan accommodates the field count during scoping.

Teamwork CRM

User

maps to

Nutshell

Person (user role)

1:1
Fully supported

Teamwork CRM Users map to Nutshell Person records that are flagged as active users. We match by email address. Any Teamwork User without a matching Nutshell Person goes to a reconciliation queue; the customer's admin provisions the missing user before record migration resumes. Active Teamwork users with zero working hours (a known Teamwork V2 people endpoint issue for pre-fix user records) are flagged and surfaced for manual review before migration.

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.

Teamwork CRM logo

Teamwork CRM gotchas

Medium

120 req/min API rate limit during extraction

Medium

CSV export only available in list view

Low

Known API bug with custom field value deletion

Low

Working hours absent for legacy user profiles

High

SSO unavailable on Pro tier

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

  • Teamwork CRM is not a supported Import2 source

    Nutshell's native CRM-to-CRM import wizard (Settings > Data > Import > Another CRM) lists 28 supported source platforms, but Teamwork CRM is not among them. The native import path does not apply to this migration. We perform a custom API extraction from Teamwork CRM using its REST endpoints and CSV list-view export, then load into Nutshell via its REST API. This is a pair-specific constraint: it does not apply to migrations from any of the 28 platforms Nutshell natively supports.

  • Opportunity records have no direct Nutshell equivalent

    Teamwork CRM maintains separate Lead and Opportunity objects that can run in parallel pipelines. Nutshell has a single Lead object with no Opportunity record type. Opportunities from Teamwork CRM must be converted to Lead records in Nutshell, with deal value, probability, and stage preserved as custom fields. Pipeline context from Teamwork is not a native Nutshell concept; we deliver a written pipeline configuration document for the customer to set up in Nutshell's Settings > Leads > Statuses. Skipping this step leaves the customer without a visual pipeline in Nutshell that matches their Teamwork setup.

  • 120 req/min API ceiling extends extraction time for large datasets

    Teamwork.com enforces a 120 requests per minute ceiling per organization on its API. Our extraction engine monitors the X-Rate-Limit-Remaining response header and throttles to single-threaded crawling when the limit approaches. For migrations with 10,000 or more records, this can add hours to the extraction phase. We surface estimated extraction time during scoping based on the customer's record volume so that the overall timeline accounts for throttling.

  • Custom field plan limits must be verified before migration

    Nutshell caps the number of custom fields per plan. If the destination Nutshell account is on a lower plan tier than required to accommodate the Teamwork CRM custom field set, fields will be dropped during load. We audit the Teamwork CRM custom field count during discovery and verify the destination Nutshell plan has sufficient capacity. If a plan upgrade is needed, we surface this as a migration prerequisite before extraction begins.

  • SSO configuration does not migrate and requires Enterprise provisioning

    Teamwork CRM SSO (single sign-on) is gated behind the Enterprise tier. If the customer is on Teamwork CRM Pro and their users authenticate via a third-party identity provider (Okta, Azure AD, Google Workspace), those SSO credentials do not carry to Nutshell. Nutshell SSO is an Enterprise feature. We raise Enterprise-tier provisioning as a pre-migration requirement if SSO continuity is a business need. Standard email-password authentication for Teamwork CRM Pro users maps to Nutshell's standard login without changes.

Migration approach

Six steps for a successful Teamwork CRM to Nutshell data migration

  1. Discovery and extraction strategy

    We audit the Teamwork CRM account across record counts (Companies, Contacts, Leads, Opportunities, Activities), active custom field definitions, pipeline and stage configurations, and owner list. We also confirm the destination Nutshell plan tier and verify custom field capacity. Because Teamwork CRM lacks a bulk API endpoint, we design an extraction strategy combining REST API paginated fetches (with 120 req/min throttling) and list-view CSV exports for objects where column selection is required. We surface the Opportunity-to-Lead schema reduction and the custom field plan limit as migration prerequisites if the destination plan requires verification.

  2. Schema preparation in Nutshell

    We configure the Nutshell destination before any data loads. This includes pre-creating all custom fields (matching Teamwork's text, integer, and dropdown types), pre-populating dropdown option values, and setting up Lead status values to match the Teamwork pipeline stages documented in the discovery output. If the customer has multiple pipelines in Teamwork, we create a written pipeline configuration document for Nutshell Settings > Leads > Statuses that the customer configures manually before production migration begins.

  3. Sandbox validation run

    We run a representative migration into a Nutshell sandbox or trial environment using a sample of 100-200 records per object type. The customer reconciles field mapping accuracy, custom field values, organization-person relationships, and activity linkage against the Teamwork CRM source. Mapping corrections are documented and applied to the production migration script. This step prevents field mapping corrections from occurring mid-production run, which would require a partial rollback.

  4. Owner and user reconciliation

    We extract every distinct Teamwork CRM Owner and map them by email to Nutshell Person records that will serve as user accounts. Any Teamwork Owner without a matching Nutshell user is placed in a reconciliation queue for the customer's admin to provision. Teamwork user records with zero working hours (a known V2 people endpoint issue for legacy profiles) are flagged and surfaced for manual review. Migration cannot proceed past record import until all OwnerId references have a valid target.

  5. Production migration in dependency order

    We run production migration in this sequence: Organizations (from Teamwork Companies), Persons (with OrganizationId resolved), Leads (Teamwork Leads and Opportunities converted to Lead records with custom fields for deal data), Activities (calls, meetings, tasks linked to Persons and Leads via owner email resolution). Each phase emits a row-count reconciliation report comparing the count loaded in Nutshell against the count extracted from Teamwork CRM. Discrepancies above the tolerance threshold trigger a re-run of that phase before proceeding.

  6. Cutover, delta sync, and inventory handoff

    We freeze writes in Teamwork CRM during the cutover window, run a final delta migration capturing any records modified during the migration, then mark Nutshell as the system of record. We deliver the Pipeline Configuration document (mapping Teamwork pipelines to Nutshell Lead statuses), the Custom Filter inventory (Teamwork saved filters as reference metadata), and the Active Workflow and Automation list (for manual rebuild in Nutshell). We provide a one-week hypercare window for reconciliation issues. Workflows, sequences, and automations are not migrated as code; they require manual rebuild in Nutshell's automation settings or a separate engagement.

Platform deep dives

Context on both ends of the pair

Teamwork CRM logo

Teamwork CRM

Source

Strengths

  • Clean, visual pipeline interface with board and list views that sales teams adopt without dedicated training.
  • Configurable pipelines and stages are available on the standard Pro tier without feature gating.
  • Custom fields (text, number, dropdown) are available without requiring an Enterprise plan.
  • Strong bundling with Teamwork Projects and Desk creates a unified work stack for agencies and client-service firms.
  • Gmail add-on and Zapier integration provide basic email and automation connectivity on both pricing tiers.

Weaknesses

  • No native support for file or email attachments on Contact records — a frequently cited gap in G2 and Capterra reviews.
  • No Office 365 integration, limiting adoption in Microsoft-dominant enterprise environments.
  • Custom field types are restricted to short text, integer, and dropdown — multi-select, date, and boolean custom fields require workarounds.
  • Single sign-on (SSO) is gated behind the Enterprise tier, creating a security friction point for larger teams evaluating the platform.
  • API lacks a formal bulk or batch import endpoint; data migration relies on CSV list-view exports with manual column selection.
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. 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 Teamwork CRM and Nutshell.

  • 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

    Teamwork CRM: 120 requests per minute per organization.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

Walk through your Teamwork CRM 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 one and two weeks for accounts under 5,000 People, 2,000 Organizations, and 3,000 Leads with no custom objects. Migrations with active custom fields, large activity histories (over 100,000 records), or multi-pipeline Teamwork setups requiring extensive Nutshell stage configuration move to three to five weeks. The primary variable is Teamwork's 120 req/min API rate limit, which extends extraction time for large datasets; we provide a time estimate during discovery based on actual record volume.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Teamwork CRM.
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