CRM migration
Field-level mapping, validation, and rollback between Workiz and Nutshell. We move data and schema; workflows are rebuilt natively in Nutshell.
Workiz
Source
Nutshell
Destination
Compatibility
13 of 14
objects map 1:1 between Workiz and Nutshell.
Complexity
BStandard
Timeline
24–48 hours
Overview
Workiz is a field-service management platform built around Clients, Jobs, Leads, Estimates, Invoices, and Items. It stores technician assignments, GPS tracking data, job-type taxonomies, and automations that trigger on job-status changes. Workiz uses a flat-import model (CSV/XLSX via technical-support requests) and its API exposes jobs, clients, and leads but not full invoice line-item history or automation logic. Nutshell is a sales CRM built around People, Companies, Leads, and Deals organized into configurable pipelines. It has no native field-service scheduling, no technician management, no native estimate or invoice objects, and no workflow automation engine — though it offers personal email sequences and task-based activity tracking via its JSON-RPC API. The migration maps Workiz Clients to Nutshell People, Companies to Nutshell Companies, Jobs to Nutshell Deals (with Workiz job status mapped to Nutshell pipeline stages), Estimates to custom-line Deals, Leads to Nutshell Leads, and Items to Nutshell Products. Custom fields migrate as Nutshell custom fields on the corresponding record types. FlitStack sequences the migration so that People exist before Deals (via party associations), then runs a sample migration with field-level diff before committing the full load with a 24–48-hour delta-pickup window.
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 Workiz 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.
Workiz
Client
Nutshell
Person
1:1Workiz Clients store the primary contact information for each service location — name, email, phone, service address, billing address. We map these directly to Nutshell People. If the client has no associated company in Workiz, the Person record stands alone. A client's secondary contacts migrate as additional Person records linked to the primary.
Workiz
Client
Nutshell
Company
many:1Workiz clients with a company name populate both a Nutshell Person record (for the primary contact) and a Nutshell Company record (for the business entity). The company record holds the business address, website, and industry if present. Multiple Workiz clients sharing the same company name collapse to one Company record with multiple Person associations.
Workiz
Job
Nutshell
Deal
1:1Workiz Jobs are the core operational record — each job belongs to a client, has a job type, assigned technician, scheduled window, status, and price. Nutshell Deals have a name, value, pipeline stage, close date, and party associations. We transform Workiz jobs into Nutshell Deals using a mapping where job status (new, in-progress, done, cancelled) routes to specific Nutshell pipeline stages configured for field service reporting.
Workiz
Job Status
Nutshell
Pipeline Stage
1:1Workiz job statuses (new, scheduled, in-progress, completed, cancelled) need explicit value-by-value mapping to Nutshell pipeline stages. The Workiz technician can rename statuses in Workiz, so we read the actual status labels from the Workiz account during discovery and configure matching pick-list values in Nutshell's pipeline before migration runs.
Workiz
Lead
Nutshell
Lead
1:1Workiz Leads and Nutshell Leads share the same concept — an unqualified prospect captured from a phone call, web form, or third-party lead feed (Angi Leads, Thumbtack, Genius Leads). Source attribution fields in Workiz (ad_source, lead_source) map to Nutshell's standard lead source pick-list, with unmapped values stored as a custom field.
Workiz
Estimate
Nutshell
Deal
1:1Workiz Estimates contain line items, tax rates, and discount fields with an approval status. Nutshell has no native estimate object. Estimates migrate as Nutshell Deals using the Workiz estimate total as the Deal value. Line items are preserved as a custom text field on the Deal for reference — your team rebuilds formal quotes using Nutshell's proposal tool or a third-party document integration post-migration.
Workiz
Invoice
Nutshell
Deal
1:1Workiz Invoices carry payment status, balance due, and service fee information. Nutshell has no native invoice object. Invoices migrate as Deals with a custom payment_status field storing the Workiz invoice balance (paid, partially paid, overdue). Workiz payment history is preserved as activity notes on the Deal record — full financial reconciliation requires your accounting software.
Workiz
Item
Nutshell
Product
1:1Workiz Items are reusable service and product line items stored in a price book. Nutshell Products serve the same function — a catalog of services and parts that can be attached to Deals. We map Workiz Items to Nutshell Products preserving name, unit price, and description. Products must exist in Nutshell before they can be added to Deals, so Product migration runs before Deal migration.
Workiz
Custom Field (Job)
Nutshell
Custom Field (Deal)
1:1Workiz custom fields assigned to jobs (e.g., job-type-specific inspection checklists, equipment serial numbers, warranty codes) have no native equivalent in Nutshell Deals. We create matching Nutshell custom fields on the Deal object — pick-list values map value-by-value, text fields pass through directly, and date fields preserve the original ISO format.
Workiz
Custom Field (Client)
Nutshell
Custom Field (Person)
1:1Workiz custom fields on clients (e.g., billing preferences, property type, key contact notes) map to Nutshell Person custom fields. Nutshell separates Person and Company custom fields, so client-level custom fields live on the Person record. Any company-level attributes from Workiz custom fields are placed on the Nutshell Company record.
Workiz
Job Type
Nutshell
Custom Field (Deal)
1:1Workiz job types categorize work (e.g., lockout, rekey, safe opening) and drive which custom fields appear. Nutshell has no native job-type concept. We store Workiz job type as a custom pick-list field on Nutshell Deals so you can filter pipelines by service category. Job-type taxonomy is preserved as-is; your team defines how to use it in Nutshell reporting.
Workiz
User / Technician
Nutshell
User
1:1Workiz Users (technicians, dispatchers, admins) are resolved by email match against Nutshell Users. A Workiz technician assigned to a job maps to a custom field on the Nutshell Deal (Assigned_Technician__c) since Nutshell has no native technician or scheduling concept. Unmatched Workiz users are flagged before migration so you can create Nutshell accounts or assign to a fallback owner.
Workiz
Workiz Automations
Nutshell
Not Migrated
1:1Workiz Automations are event-driven rules with conditions and actions — e.g., send an SMS when a job status changes to 'completed', or email the client 30 minutes before the scheduled window. Nutshell has no automation engine for field-service events. We export Workiz automation definitions as a reference document for your team to rebuild using Nutshell Sequences or a third-party tool like Zapier.
Workiz
Attachment / File
Nutshell
Attachment
1:1Workiz stores file attachments on jobs, clients, and invoices (photos, signed documents, equipment specs). Files migrate as Nutshell attachments linked to the corresponding Person or Deal record. File size limits apply — Nutshell's attachment limit is 25 MB per file. Large files or image-heavy attachments that exceed this are flagged for manual re-upload.
| Workiz | Nutshell | Compatibility | |
|---|---|---|---|
| Client | Person1:1 | Fully supported | |
| Client | Companymany:1 | Fully supported | |
| Job | Deal1:1 | Fully supported | |
| Job Status | Pipeline Stage1:1 | Fully supported | |
| Lead | Lead1:1 | Fully supported | |
| Estimate | Deal1:1 | Fully supported | |
| Invoice | Deal1:1 | Fully supported | |
| Item | Product1:1 | Fully supported | |
| Custom Field (Job) | Custom Field (Deal)1:1 | Fully supported | |
| Custom Field (Client) | Custom Field (Person)1:1 | Fully supported | |
| Job Type | Custom Field (Deal)1:1 | Fully supported | |
| User / Technician | User1:1 | Fully supported | |
| Workiz Automations | Not Migrated1:1 | Fully supported | |
| Attachment / File | Attachment1: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.
Workiz gotchas
QuickBooks Online sync conflict during job import
Automations do not export or migrate
Jobs and estimates imported as separate flat files can create duplicates
GPS location history and call recordings are not exportable
User permissions and roles do not transfer
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
Pull Workiz data via file export and API audit
FlitStack initiates the Workiz data pull by submitting the formal export request to Workiz technical support for Clients, Jobs, Leads, Estimates, Invoices, and Items. In parallel, we query the Workiz API for any records not covered by the flat-file export (active jobs, recent leads). We audit the resulting dataset for record counts, custom field names, job-type taxonomies, and status labels. Any records flagged as non-exportable (call history, parent-client relationships) are noted in the migration plan with an explicit data-loss disclosure.
Design Nutshell schema: pipelines, stages, custom fields, and user accounts
We map Workiz job statuses to Nutshell pipeline stages and create the necessary Nutshell pipelines before data lands. All Workiz custom fields (client-level, job-level, item-level) are created as matching Nutshell custom fields on the appropriate record types (Person, Company, Deal, Product). Workiz Users are matched by email to Nutshell Users — any unmatched technicians or dispatchers are flagged for account creation before migration runs. Products are created in Nutshell before Deals so line-item associations resolve on import.
Migrate Products, Companies, People, then Leads before Deals
Nutshell requires parent records to exist before child records reference them. We sequence the migration: (1) Products from Workiz Items, (2) Companies from Workiz client company names, (3) People from Workiz Clients with party associations to Companies, (4) Leads from Workiz Leads with source mapping, then (5) Deals from Workiz Jobs and Estimates with partyId links resolved. This ordering ensures that every Deal has a valid Nutshell party association rather than orphaning records.
Run a sample migration with field-level diff
A representative slice — typically 200–500 records spanning Clients, Jobs, Leads, Estimates, and a range of job types — migrates into your live Nutshell environment. We generate a field-level diff showing every mapped field, the value in Workiz, and the value written to Nutshell. You review the diff to confirm that job status → pipeline stage mapping is correct, custom fields populated as expected, and technician assignments resolved. We iterate on any field mapping before committing the full run.
Execute full migration with delta-pickup window and audit log
The full dataset loads into Nutshell. During the cutover window your team continues working in Workiz — FlitStack uses read-only access to capture in-flight records. A delta-pickup run (typically 24–48 hours after the main load) captures any new or modified Jobs, Leads, or Estimates created during the cutover. Every migration operation is logged in an audit report showing source record, destination record, timestamp, and operator. One-click rollback is available if reconciliation fails.
Platform deep dives
Workiz
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 Workiz 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
Workiz: Not publicly documented.
Data volume sensitivity
Workiz 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 Workiz to Nutshell migration scoping. Not seeing yours? Book a call.
Walk through your Workiz 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 Workiz
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.