CRM migration

Migrate from Practice by Numbers to Nutshell

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

Practice by Numbers logo

Practice by Numbers

Source

Nutshell

Destination

Nutshell logo

Compatibility

91%

10 of 11

objects map 1:1 between Practice by Numbers and Nutshell.

Complexity

BStandard

Timeline

48–72 hours of clock time

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Practice by Numbers (PbN) is a dental-practice management platform centered on patients, providers, appointments, treatments, and KPI analytics. Nutshell is a general-purpose CRM that organizes data into People, Companies, Leads, Deals, and Activities with an open API and CSV import tooling. There is no published PbN API — migration runs through CSV exports parsed by FlitStack AI, mapped to Nutshell's object model field-by-field. We map PbN patient records to Nutshell People (individual contacts) and Companies (the practice itself). Appointment records become Nutshell Deals, with the appointment date as the Nutshell close date and the provider as the deal owner. Treatment histories become Nutshell Tasks or Notes attached to the patient record. Custom fields capture PbN patient IDs, treatment types, appointment statuses, and dental KPIs that have no native Nutshell equivalent. Because PbN does not expose an API, all data flows through CSV extracts — we validate completeness and flag duplicates before writing to Nutshell. A 24–48 hour delta window captures any records created or modified in PbN during the cutover window. Analytics exports (treatment acceptance rates, per-provider production numbers, goal tracking) are preserved as custom notes labeled Legacy PbN Analytics and referenced post-migration for reporting rebuilds. We do not migrate automations, scheduled sequences, reporting dashboards, or third-party integrations — those are destination-side features that require rebuild using Nutshell's workflow builder and reporting tools.

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

Practice by Numbers logo

Practice by Numbers

What's pushing teams away

  • Limited public API documentation makes automated data extraction difficult, forcing practices to rely on manual CSV exports which restrict field selection and historical depth.
  • No free tier or low-cost entry point means the full feature set requires a significant commitment before the practice can validate fit with their specific workflow.
  • The breadth of features creates a steep onboarding curve, and some practices report that staff adoption lags during the first months after implementation.

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 Practice by Numbers objects map to Nutshell

Each row shows how a Practice by Numbers 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.

Practice by Numbers

Patient Record

maps to

Nutshell

People

1:1
Fully supported

PbN patient records map directly to Nutshell People. Every patient name, email, phone, and address field has a corresponding Nutshell People field. The patient's PbN record ID is stored as a custom field for traceability and duplicate detection in future delta runs.

Practice by Numbers

Patient Phone Number

maps to

Nutshell

People > phone

1:1
Fully supported

Primary phone number on the PbN patient record maps to the Nutshell People phone field. Additional phone numbers such as cell phone and emergency contact map to Nutshell People custom text fields because Nutshell's standard schema supports only one primary phone number. These supplementary contact numbers are preserved in dedicated custom fields labeled clearly (Mobile_Phone__c, Emergency_Contact_Phone__c) to distinguish them from the primary contact line.

Practice by Numbers

Practice / Clinic Record

maps to

Nutshell

Company

1:1
Fully supported

For multi-location dental groups, each PbN practice location becomes a separate Nutshell Company record. The practice name, address, phone, and specialty fields map directly to their Nutshell Company counterparts. Single-location practices may skip this object if all patient records are managed under one clinic. When multiple locations are mapped, each Company record links to its associated patient People records, enabling location-based filtering in pipeline views and reports.

Practice by Numbers

Appointment / Scheduled Visit

maps to

Nutshell

Deal

1:1
Fully supported

Each scheduled or historical appointment in PbN becomes a Nutshell Deal. The appointment date maps to the Nutshell Deal close date. The appointment status (Completed, No Show, Cancelled) becomes a custom pick-list field and also maps to the Nutshell Deal stage. Patient name is stored as a custom field on the Deal because Nutshell Deals are organization-centric rather than person-centric by default.

Practice by Numbers

Appointment Status

maps to

Nutshell

Deal > Stage + Custom Field

1:1
Fully supported

PbN appointment statuses (Scheduled, In Treatment, Completed, No Show, Cancelled, Rescheduled) map to Nutshell Deal stage values through explicit value-by-value mapping. Each status gets assigned a corresponding Nutshell stage or closed state. The original PbN status label is preserved as a custom field on the Deal for audit purposes.

Practice by Numbers

Treatment / Procedure Record

maps to

Nutshell

Task or Note on People

1:1
Fully supported

Treatment records (procedure code, tooth number, materials used, provider notes) migrate as Nutshell Tasks attached to the patient People record with Task Type = 'Treatment Record' and the original PbN treatment date as the task due date. This preserves the chronological treatment timeline within the patient's Nutshell activity feed.

Practice by Numbers

Provider / Doctor Record

maps to

Nutshell

People + User Match

1:1
Fully supported

PbN provider records map to Nutshell People records with a separate matching step: the provider's email address is matched against Nutshell user accounts by email to assign OwnerId on migrated Deals and Tasks. Unmatched providers are flagged before migration so the team either creates a Nutshell user or reassigns records to a fallback owner.

Practice by Numbers

Dental KPI / Analytics Data

maps to

Nutshell

Note on People + Custom Fields

1:1
Fully supported

PbN analytics (treatment acceptance rate, revenue per provider, goal attainment, patient growth rate) have no native Nutshell equivalent. These values are preserved as Note records labeled 'Legacy PbN Analytics' on each patient record, and key metrics are also stored as Nutshell custom number fields for reference. Reporting dashboards must be rebuilt in Nutshell using exported PbN data as a static source.

Practice by Numbers

Patient Insurance Carrier

maps to

Nutshell

People > Custom Field

1:1
Fully supported

PbN insurance carrier and policy details map to Nutshell People custom text fields because Nutshell has no native insurance or benefits object. Before migration, we create Carrier_Name__c, Policy_Number__c, and Insurance_Type__c fields on the People object. Each patient's insurance information transfers into the corresponding custom fields, preserving carrier name, policy number, group number, and coverage type for reference in patient records.

Practice by Numbers

Referral Source

maps to

Nutshell

People > Custom Field

1:1
Fully supported

PbN referral source data (referring dentist, marketing channel, patient referral) becomes Nutshell People custom pick-list fields. We create Referring_Dentist__c and Referral_Source__c fields on the People object. Existing pick-list values in PbN are mapped value-by-value; new values can be added in Nutshell after migration.

Practice by Numbers

Online Booking / Appointment Request

maps to

Nutshell

Lead

1:many
Fully supported

PbN records new patient inquiries and appointment requests that have not yet converted to confirmed appointments. These map to Nutshell Leads with the inquiry date as the Lead create date and the requested appointment type as a custom field. Once the appointment is confirmed, the Lead converts to a Person record and a corresponding Deal.

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.

Practice by Numbers logo

Practice by Numbers gotchas

High

No publicly documented API for automated migration

High

Dental EHR data is inherently messy during extraction

Medium

Goal management metrics require explicit field mapping

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

  • Practice by Numbers exposes no public API — all migration runs through CSV export parsing

    Practice by Numbers has no published REST or bulk API. Every migration uses CSV exports from PbN's report builder and practice dashboards. CSV column headers must be matched manually to Nutshell field names before writing. If a PbN report does not export a field you need, the data point is unavailable unless PbN support can generate a custom export. FlitStack AI runs a pre-migration audit of all available PbN export templates, flags any missing required fields, and proposes workarounds (custom field preservation, static export as Note attachment) before the migration plan is finalized.

  • Appointment-to-Deal mapping requires deciding whether every historical visit becomes a Deal

    Dental practices often have 5–20x more appointment records than active patient relationships. Mapping every PbN appointment to a Nutshell Deal creates a large deal volume that can overwhelm Nutshell's pipeline reporting if not scoped carefully. FlitStack AI works with your team to define the scoping rule before migration: completed appointments from the past 12 months migrate as Deals; older historical records migrate as Tasks on the People record; cancelled or no-show records migrate as completed Tasks with a Cancelled status flag. This scoping decision significantly affects record count and migration price.

  • Dental KPI data has no native Nutshell equivalent and requires a manual rebuild plan

    Practice by Numbers treatment acceptance rate, per-provider production per hour, patient growth rate, and goal attainment metrics are calculated within PbN's analytics engine. These values have no corresponding native field or report object in Nutshell. FlitStack AI captures the most recent PbN KPI snapshot as Note records labeled Legacy PbN Analytics on each patient and provider record, and stores calculated metric values as custom number fields. Your team uses these preserved values to rebuild Nutshell reports and dashboards in Nutshell's reporting module or a connected BI tool after go-live.

  • Provider-to-Nutshell-user owner resolution requires email matching and fallback decisions

    PbN provider records do not natively correspond to Nutshell user accounts. FlitStack AI resolves owner assignment by matching the provider's email address against Nutshell user email addresses. Providers with no matching Nutshell user are flagged before migration — your team either creates a Nutshell user for each provider or assigns their records to a fallback owner (a practice manager or admin user). Unresolved records cannot be assigned to non-existent Nutshell users and will fail validation if left unassigned.

  • Multi-location practices need practice-to-Company affiliation decisions before mapping

    For dental groups with multiple PbN practice locations, FlitStack AI must decide whether each location becomes a separate Nutshell Company record linked to patient People records, or whether all patients are loaded under a single parent Company. PbN supports multi-location patient records differently than Nutshell's Company-People affiliation model. We surface this decision point during the schema setup phase and provide a written affiliation plan showing which patients link to which Company records before any data is written.

Migration approach

Six steps for a successful Practice by Numbers to Nutshell data migration

  1. Audit PbN export templates and map fields to Nutshell schema

    FlitStack AI reviews every available PbN report and CSV export template accessible under your account. We identify which PbN fields map directly to Nutshell People, Company, Deal, and Task objects, which require custom fields, and which have no Nutshell equivalent. We deliver a written field-mapping plan showing each source field, destination field, mapping type, and any custom field to be created in Nutshell before migration. You approve or adjust the plan before any data is moved.

  2. Create Nutshell custom fields and configure People, Company, and Deal structure

    FlitStack AI creates all required custom fields in Nutshell — pbn_patient_id__c, referral_source__c, insurance_carrier__c, treatment_acceptance__c, procedure_code__c, and all other identified custom fields on the People, Company, Deal, and Task objects. We also configure Nutshell Deal stages to match your PbN appointment statuses, set up pipeline views, and configure the user-owner mapping for provider records. This step runs in your Nutshell sandbox or production account under admin credentials you provide.

  3. Run sample migration with field-level diff and owner-resolution validation

    A representative sample of 100–300 patient records, their associated appointments, treatment records, and provider assignments migrates to Nutshell. FlitStack AI generates a field-level diff comparing each PbN source value to the corresponding Nutshell destination value. Owner resolution is validated — matched and unmatched providers are reported. You review the sample in Nutshell, confirm field mapping accuracy, and approve adjustments before the full migration is scheduled.

  4. Execute full migration with delta-pickup window and live audit log

    The full migration runs: all patient records → Nutshell People, all appointment records → Nutshell Deals, all treatment records → Nutshell Tasks, and all provider records → Nutshell People with owner resolution. A 24–48 hour delta-pickup window opens at the start of the migration — any PbN records created or modified during the cutover are captured and written after the main run. FlitStack AI maintains a live audit log of every record written, updated, or skipped, with reasons for any failures. You receive a migration summary report at completion.

  5. Validate record counts, post-migration reporting setup, and rollback planning

    FlitStack AI reconciles record counts between PbN source exports and Nutshell destination records — patients, appointments, treatments, and providers are each verified against source totals. Known discrepancies (cancelled appointments excluded by scope, provider records without email matches) are documented. We provide a written post-migration checklist for rebuilding PbN analytics in Nutshell's reporting module and re-establishing any third-party integrations. One-click rollback remains available for 48 hours after go-live if critical reconciliation failures surface.

Platform deep dives

Context on both ends of the pair

Practice by Numbers logo

Practice by Numbers

Source

Strengths

  • Bi-directional integration with major dental PMSs (Open Dental 15.4+, Dentrix, Dentrix Ascend, EagleSoft, Practice-Web) — PbN writes SMS, email, call and note activity back into the PMS CommLog so the PMS remains the system of record.
  • Dentist-founded product with a 9.8/10 G2 support rating and 99.99% advertised uptime — reviewers consistently call out responsive support and quick feature delivery.
  • Real-time Practice IQ dashboards cover production, collections, case acceptance, new-patient, hygiene reappointment and other dental KPIs that horizontal BI tools do not pre-build.
  • PbN Voice native phone system (call tracking, recording, analytics) plus payments, digital forms and insurance verification consolidate vendors small practices would otherwise stitch together.
  • Modular plan structure lets practices add Voice, Payments or specific modules incrementally rather than paying for everything in tier 1.

Weaknesses

  • Only the Core plan ($249/month) has publicly listed pricing — higher tiers (Flow, Scale, Thrive) require sales contact, complicating self-serve evaluation.
  • Reports are not customisable enough for some practices — granular per-practice metric configuration often requires support involvement.
  • Single-location practices report PbN can feel expensive relative to features they actually use — pricing is more competitive at multi-location and DSO scale.
  • Some digital-form and online-scheduling flows have reliability gaps — reviewers cite forms occasionally failing to send and patients struggling to open them.
  • PbN is a layer on top of the PMS, not the PMS itself — practices migrating need to plan PMS-side data extraction (Open Dental, Dentrix) in parallel.
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. 1 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 Practice by Numbers and Nutshell.

  • Object compatibility

    B

    1 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

    Practice by Numbers: Not publicly documented.

  • Data volume sensitivity

    B

    Practice by Numbers doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Practice by Numbers 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 Practice by Numbers to Nutshell data migrations

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

Can't find your answer?

Walk through your Practice by Numbers to Nutshell migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most Practice by Numbers to Nutshell migrations complete in 48–72 hours of clock time for practices with fewer than 5,000 patient records and clean CSV exports. Multi-location practices with 5,000–30,000 records, complex provider-to-owner mapping, or custom fields spanning more than 15 columns extend to 5–10 days. The timeline is dominated by PbN CSV export generation, custom field creation in Nutshell, and the sample migration validation step before the full run commits.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Practice by Numbers.
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