CRM migration
Field-level mapping, validation, and rollback between Thryv and Nutshell. We move data and schema; workflows are rebuilt natively in Nutshell.
Thryv
Source
Nutshell
Destination
Compatibility
5 of 8
objects map 1:1 between Thryv and Nutshell.
Complexity
BStandard
Timeline
2-3 weeks
Overview
Moving from Thryv to Nutshell is a structural simplification for service-based small businesses that have outgrown Thryv's bundled pricing model. Thryv bundles CRM, scheduling, payments, and marketing into a single platform priced at $255-$1,475 per month; Nutshell offers a focused CRM with marketing and engagement starting at $16 per user per month. We extract Thryv's Clients as People records, its flat Company structure as Nutshell Companies, and its Deals with stage names preserved. Thryv's freeform tag system converts to Nutshell's structured dropdown or multi-select custom fields with deduplication. Appointments migrate as Tasks with date, duration, and service-type notes. Invoices are exported as a structured CSV with line items, totals, and payment status because Nutshell does not have a native invoice object — customers import via Nutshell's built-in CSV importer. We do not migrate Thryv Automation Workflows or ThryvPay payment processor configurations.
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 Thryv 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.
Thryv
Contact (Client)
Nutshell
Person
1:1Thryv's Client records map to Nutshell Person records. We extract standard fields (first name, last name, email, phone, address) and preserve all contact-level custom field values. Thryv's client tags are extracted separately and converted to Nutshell dropdown or multi-select custom fields on Person. Any Thryv custom fields that exceed Nutshell's character limits (Text fields cap at 225 characters) are flagged during scoping, and long-text fields are mapped to Nutshell Long Text fields.
Thryv
Company
Nutshell
Company
1:1Thryv's flat Company structure maps to Nutshell's Company object. Company name, address, phone, website, and company-level custom fields transfer directly. We flag any Thryv Company records that have no associated Contacts — these are imported as standalone Nutshell Companies with no Person link, which is valid in Nutshell's data model.
Thryv
Opportunity (Deal)
Nutshell
Deal
1:1Thryv Opportunities map to Nutshell Deals. We preserve deal name, monetary value, stage name, expected close date, and owner assignment. Custom stage names from Thryv are preserved as-is in Nutshell's Deal stage columns. If the Thryv account uses multiple deal pipelines, we map each pipeline to a separate Nutshell pipeline column.
Thryv
Appointment
Nutshell
Task
1:1Thryv Appointments (date, time, duration, service type, assignee) map to Nutshell Tasks with activity date set to the appointment start time and a note attached containing service type and duration. Recurring appointment series are flattened into individual Task records per occurrence, since Nutshell does not support recurring task series natively. Assignee maps to the matching Nutshell User by email.
Thryv
Invoice
Nutshell
CSV Export
lossyNutshell does not have a native invoice or billing object. We export full invoice records (line items, totals, payment status, client association) as a structured CSV with column headers matching Nutshell's CSV import template for Leads and People. The customer runs the import via Nutshell's built-in importer. Paid or unpaid status is added as a custom field in Nutshell after import if the customer needs to track it.
Thryv
Tag (Client Tag)
Nutshell
Custom Field (Dropdown or Multi-Select)
lossyThryv's freeform tagging system on Client records converts to Nutshell custom fields. During scoping, we identify the distinct tag vocabulary, deduplicate it, and map tag groups to either Dropdown (single-tag) or Multi-Select (multi-tag) custom fields on Person. Tags used as content classification rather than contact classification are exported as a separate tagging reference sheet for manual categorization.
Thryv
Custom Field
Nutshell
Custom Field
lossyThryv custom fields map to Nutshell custom fields on the matching record type (Person or Company). Field type matching is required: Thryv radio buttons map to Nutshell Dropdown, Thryv checkboxes map to Nutshell Checkbox, Thryv text maps to Nutshell Text (or Long Text if over 225 characters). Thryv Pro's 100-field limit and Max's 150-field limit do not apply in Nutshell, but Nutshell's supported field types are fewer — any unsupported Thryv field types are flagged for customer decision on how to store that data.
Thryv
User (Staff/Owner)
Nutshell
User
1:1Thryv user records (name, email, role) map to Nutshell Users resolved by email match. Thryv role-based permission levels (admin, manager, staff) are preserved as a custom field in Nutshell because Nutshell's role model is structured differently. Any Thryv user without a matching Nutshell account goes to a reconciliation queue for the customer to provision before record import resumes.
| Thryv | Nutshell | Compatibility | |
|---|---|---|---|
| Contact (Client) | Person1:1 | Fully supported | |
| Company | Company1:1 | Fully supported | |
| Opportunity (Deal) | Deal1:1 | Fully supported | |
| Appointment | Task1:1 | Fully supported | |
| Invoice | CSV Exportlossy | Fully supported | |
| Tag (Client Tag) | Custom Field (Dropdown or Multi-Select)lossy | Fully supported | |
| Custom Field | Custom Fieldlossy | Fully supported | |
| User (Staff/Owner) | User1:1 | 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.
Thryv gotchas
XML-RPC API sunset breaks existing integrations
Custom field limits vary by edition and block installs
Automation workflows cannot be exported
Bounce rate limits affect email campaign recovery
ThryvPay payment processor lock-in
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 extraction inventory
We audit the source Thryv account across edition (Marketing Center, Keap, Kickstart, Ignite), record counts (Clients, Companies, Deals, Appointments, Invoices), custom field definitions, tag vocabulary size, active workflow count, and API usage (REST v2 vs XML-RPC). We also identify any ThryvPay transaction history that needs exporting as a standalone financial record. The discovery output is a written extraction inventory listing every object, field, and data type with an estimated row count and any API or field-type limitations.
Schema design and field mapping
We design the Nutshell destination schema, creating custom fields on Person and Company to match Thryv's custom field definitions. We convert Thryv tag groups to Nutshell dropdown or multi-select fields, run tag deduplication, and flag any Thryv field types without a Nutshell equivalent for customer approval. We configure Nutshell pipeline columns to match Thryv deal stages. Schema is deployed into the customer's Nutshell account before data import begins.
User reconciliation
We extract every distinct Thryv Owner referenced on Client, Company, Deal, and Appointment records and match by email against the Nutshell destination account's User table. Owners without a matching Nutshell User are held in a reconciliation queue. The customer provisions any missing Users in Nutshell (with the appropriate role assignment) before record import resumes. Nutshell permission levels differ from Thryv's — we document the mapping for the customer's admin to finalize.
Data extraction and transformation
We extract Thryv data via REST v2 API (or XML-RPC where REST gaps exist, flagged explicitly). Transform steps include: Client-to-Person rename, tag deduplication and dropdown conversion, appointment flattening to individual Tasks, invoice export to CSV with line items normalized, and custom field type matching against Nutshell's supported types. Each transform step produces a row-count reconciliation report. We do not write to Nutshell during this phase — the output is a validated staging dataset.
Staging import and spot-check
We import the transformed dataset into Nutshell's staging environment (or production with a test flag if the account is small). The customer spot-checks 20-30 records across Person, Company, Deal, and Task objects against the Thryv source to verify field-level accuracy, tag mapping, and owner assignment. Any mapping corrections are applied to the transform layer and the staging import is re-run before production cutover.
Production cutover and workflow handoff
We freeze Thryv writes during the cutover window, run a final delta extraction for any records modified since the initial export, then load the complete dataset into Nutshell production. Invoice CSV is delivered alongside the migration for the customer to import via Nutshell's built-in CSV importer. We deliver a written automation inventory document listing every Thryv Automation Builder workflow with its trigger, conditions, and actions, plus a recommendation for rebuilding each in Nutshell or an alternative tool. We do not rebuild Thryv workflows in Nutshell — that is a separate engagement or an internal admin task.
Platform deep dives
Thryv
Source
Strengths
Weaknesses
Nutshell
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 2 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 Thryv and Nutshell.
Object compatibility
2 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
Thryv: Not publicly documented.
Data volume sensitivity
Thryv 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 Thryv to Nutshell migration scoping. Not seeing yours? Book a call.
Walk through your Thryv 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 Thryv
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.