CRM migration
Field-level mapping, validation, and rollback between Rubi CRM and Nutshell. We move data and schema; workflows are rebuilt natively in Nutshell.
Rubi CRM
Source
Nutshell
Destination
Compatibility
7 of 11
objects map 1:1 between Rubi CRM and Nutshell.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Rubi CRM and Nutshell serve different core use cases. Rubi CRM is a UK-built platform for membership organisations, training providers, and events companies with native Sage, QuickBooks, and Xero accounting integrations; Nutshell is a US-built SMB sales CRM with transparent per-user pricing, native iOS and Android apps, and a documented REST API. The structural gap between these platforms is the most significant migration challenge: Rubi CRM's Member and Membership record types have no direct Nutshell equivalent, so we map tier names, renewal dates, and status values to custom fields on the Contact record. Kanban pipeline stages stored as Rubi CRM custom fields are extracted and re-created as Nutshell deal stage values. We do not migrate accounting integrations, the Outlook email plugin activity log (we export Activity timestamps and body text separately), or Sales Pipeline automation configurations, and we deliver a written inventory of these for the customer's admin to rebuild or reconfigure post-migration.
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 Rubi 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.
Rubi CRM
Contact
Nutshell
Contact
1:1Rubi CRM Contacts map directly to Nutshell Contacts. Standard fields (name, email, phone, address) migrate 1:1. Any Rubi CRM custom contact properties are discovered during the scoping phase and created as matching Nutshell custom fields before import. The Contact is the parent record for most other object types, so it migrates first.
Rubi CRM
Company
Nutshell
Company
1:1Rubi CRM Company records map to Nutshell Companies. The Company-Contact relationship is preserved by establishing the Nutshell Company first and resolving the CompanyId on the Contact record at import time. Name-matching handles cases where no explicit foreign key is present in the Rubi CRM export.
Rubi CRM
Member
Nutshell
Contact (custom fields)
lossyRubi CRM's Member record is a distinct type tied to the membership module and stores member ID, tier name, and status. Nutshell has no native Member object, so we map Member ID to a custom text field member_id__c and membership status to a custom picklist field membership_status__c. Tier names require a value-mapping table during scoping because Rubi CRM tier names are user-defined and must align with Nutshell picklist values.
Rubi CRM
Membership
Nutshell
Contact (custom fields)
lossyIndividual Membership records (subscription against a Member profile) map to the Contact with custom fields for start_date__c, end_date__c, and membership_tier__c. Rubi CRM does not export full subscription history in a single pass, so we run a separate export query against the Membership module if historical renewal records are required; otherwise we migrate the current active membership only.
Rubi CRM
Event
Nutshell
Event
1:1Rubi CRM Events map to Nutshell Events with event name, date, and booking status preserved. Seat-level attendance data requires a separate export run from the Events module. We map booking status to a custom picklist field event_booking_status__c on the Nutshell Event. Event records are linked to their originating Contact via the event_registrant__c relationship.
Rubi CRM
Training Booking
Nutshell
Event (custom fields)
1:1Training bookings are a Rubi CRM object type with sessions tied to Contacts or Members. We map the training course name, session date, and booking status to Nutshell Event records using a custom field training_course__c and event_type = 'Training' to distinguish from standard events. Completion status migrates to a custom picklist attendance_status__c.
Rubi CRM
Sales Pipeline (Kanban stage)
Nutshell
Deal Stage
lossyRubi CRM uses a Kanban-style pipeline view where stage names are user-defined custom fields stored against deal records, not a native pipeline object. We extract the distinct stage values during scoping, create matching Deal stage values in Nutshell's pipeline configuration, and map the Rubi CRM stage custom field to Nutshell Deal.stage during import. This configuration is performed before any deal data is loaded.
Rubi CRM
Deal
Nutshell
Deal
1:1Rubi CRM Deals map to Nutshell Deals. Deal name, amount, and expected close date migrate directly. The Kanban stage custom field resolves to the Nutshell Deal stage configured in the previous step. Owner assignment resolves by email match to Nutshell User records.
Rubi CRM
Activity (Outlook plugin)
Nutshell
Activity (Task or Event)
1:1Email interactions logged via Rubi CRM's Outlook plugin are stored as Activities linked to Contacts. We export activity timestamps, subject, and body text. Email body migrates to a Nutshell Activity record with body preserved as text. Thread-level email threading from the original message is not preserved because Rubi CRM does not export thread ID. Call and meeting activities from the Outlook plugin migrate as Task (subtype call/meeting) or Event records in Nutshell.
Rubi CRM
Task
Nutshell
Task
1:1Rubi CRM Tasks (owner, due date, status, description) map directly to Nutshell Tasks. Owner assignment resolves by email match. Due date and status migrate with type preservation. Open and completed task status maps to Nutshell's open and completed status values.
Rubi CRM
Custom Fields
Nutshell
Custom Fields
lossyRubi CRM allows custom fields per record type but does not expose a schema endpoint. We discover custom field names, types, and values during the export scoping phase. Nutshell custom fields are created in the destination account before the corresponding record import begins. Text, number, date, and picklist field types are supported; list fields migrate as multi-select picklists.
| Rubi CRM | Nutshell | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Company | Company1:1 | Fully supported | |
| Member | Contact (custom fields)lossy | Fully supported | |
| Membership | Contact (custom fields)lossy | Fully supported | |
| Event | Event1:1 | Fully supported | |
| Training Booking | Event (custom fields)1:1 | Fully supported | |
| Sales Pipeline (Kanban stage) | Deal Stagelossy | Fully supported | |
| Deal | Deal1:1 | Fully supported | |
| Activity (Outlook plugin) | Activity (Task or Event)1:1 | Fully supported | |
| Task | Task1:1 | Fully supported | |
| Custom Fields | Custom Fieldslossy | Mapping required |
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.
Rubi CRM gotchas
Pipeline stages are stored as user-defined custom field values, not a native pipeline object
Outlook plugin does not preserve email thread continuity
Memberships and Events require separate export passes
Acquisition by Sapling Multi Ventures introduces roadmap uncertainty
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 scoping call
We conduct a discovery session with the customer's Rubi CRM admin to map the record types in active use: Contacts, Companies, Members, Memberships, Events, Training bookings, Deals, Activities, and Tasks. We identify custom field names and types per record type, extract a sample of Kanban stage values from the pipeline view, and document any Rubi CRM-specific integrations (Sage, QuickBooks, Xero) and the Outlook plugin usage pattern. We review Nutshell's destination account to confirm plan tier and available custom field capacity. The output is a written migration scope with object-level mapping and a pricing proposal.
Schema preparation in Nutshell
We create all required Nutshell custom fields before any data import begins. This includes member_id__c, membership_status__c, membership_tier__c, membership_start_date__c, and membership_end_date__c on the Contact object; event_booking_status__c, training_course__c, and attendance_status__c on the Event object; and any Rubi CRM custom contact, company, or deal fields discovered during scoping. We configure Deal pipeline stages to match the extracted Rubi CRM Kanban stage values and assign the correct stage probability percentages. Custom field creation is validated in Nutshell before the first record import.
Data export and deduplication from Rubi CRM
We extract data from Rubi CRM in dependency order: Companies (no parent dependency), Contacts (with CompanyId resolution), Members (with Contact lookup), Memberships (with Member lookup), Events and Training bookings (with Contact lookup), Deals (with Contact and Company lookup and Kanban stage field extraction), and Activities and Tasks (with Contact lookup). We deduplicate records using email address as the primary key for Contacts and company name for Companies. Any Rubi CRM custom fields are included in the export with their raw values for transformation during the staging phase.
Data transformation and staging
We stage the exported data in a migration workbench. Membership tier names are mapped to Nutshell picklist values using the value-mapping table defined during scoping. Kanban stage values are mapped to the Nutshell Deal stage values configured in Step 2. Owner email addresses are resolved against the Nutshell User table; any unresolvable owners are held in a reconciliation queue for the customer to provision before import resumes. Activity body text is cleaned of HTML markup and truncated to Nutshell's activity description field limits. A 25-record sample import is run first to validate field mapping and custom field type compatibility.
Production import in dependency order
We run the production import into the live Nutshell account in record-dependency order: Companies first, then Contacts with CompanyId resolved, then Members and Memberships linked to Contacts, then Events and Training bookings linked to Contacts, then Deals with ContactId, CompanyId, and stage resolved, then Activities and Tasks linked to Contacts. Each phase emits a row-count reconciliation report showing records loaded, duplicates skipped, and errors encountered. Errors are investigated and corrected in the staging data before the affected phase is re-run.
Cutover and inventory handoff
We freeze Rubi CRM write access during the cutover window, run a final delta migration of any records created or modified after the initial export, and confirm that all reconciliation queues (unresolved owners, unmapped membership tiers, unmatched Kanban stages) have been addressed. We deliver a written inventory of: (1) Rubi CRM integrations requiring rebuild (Sage, QuickBooks, Xero accounting sync; Outlook plugin replacement), (2) Kanban pipeline stages created in Nutshell with their probability settings, and (3) custom fields created with their Rubi CRM source field mapping. We provide a one-week hypercare window for reconciliation issues raised by the customer's team.
Platform deep dives
Rubi CRM
Source
Strengths
Weaknesses
Nutshell
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 3 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 Rubi CRM and Nutshell.
Object compatibility
3 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
Rubi CRM: Not publicly documented.
Data volume sensitivity
Rubi 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 Rubi CRM to Nutshell migration scoping. Not seeing yours? Book a call.
Walk through your Rubi 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 Rubi 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.