CRM migration
Field-level mapping, validation, and rollback between My Practice Now and HighLevel. We move data and schema; workflows are rebuilt natively in HighLevel.
My Practice Now
Source
HighLevel
Destination
Compatibility
10 of 10
objects map 1:1 between My Practice Now and HighLevel.
Complexity
BStandard
Timeline
48–72 hours
Overview
My Practice Now serves solo practitioners and small service businesses with appointment scheduling, client notes, invoicing, and recurring billing in a single interface. HighLevel replaces that stack with an all-in-one CRM that adds pipeline management, workflows, funnels, SMS/email marketing, and reputation tools under one subscription. The migration carries My Practice Now client records, appointments, invoices, notes, and custom fields into HighLevel's Contact, Company, Task, and custom-object schema via HighLevel's REST API. We resolve My Practice Now staff logins to HighLevel users by email match so records land with the correct owners. The gap that requires manual rebuild is My Practice Now automations — appointment reminders, follow-up sequences, and billing notifications — which do not export as portable logic and must be recreated in HighLevel's Workflow Builder. We deliver a test migration against a representative sample before committing the full dataset, run a 24–48 hour delta pickup after cutover, and provide a full audit log with rollback capability if reconciliation fails.
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 My Practice Now object lands in HighLevel, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
My Practice Now
Client
HighLevel
Contact
1:1My Practice Now Client records map directly to HighLevel Contacts. Address, phone, email, and custom fields carry over as Contact properties. Owner resolution happens by email match against HighLevel users; unmatched clients get assigned to a fallback owner flagged for review.
My Practice Now
Appointment
HighLevel
Task / Event
1:1My Practice Now appointments are split into two HighLevel objects based on type: task-oriented appointments (reminders, to-dos, follow-ups) become HighLevel Tasks with the original due date, time, and assigned user preserved as Task properties. Calendar-bookable appointments with specific start and end times become HighLevel Events linked to the Contact record, maintaining the full appointment schedule in HighLevel's calendar view.
My Practice Now
Invoice
HighLevel
Opportunity
1:1My Practice Now invoices become HighLevel Opportunities with the paid amount stored as monetaryAmount and the invoice status mapped to a custom Opportunity status field. Unpaid invoices land in a 'Quote Sent' or 'Proposal' stage; paid invoices move to 'Won' with the close date set to the payment date.
My Practice Now
Company / Business
HighLevel
Company
1:1If your My Practice Now setup stores separate company or business records distinct from client contacts, they migrate to HighLevel Companies. Company name, website, address, industry classification, and any custom fields carry over directly. Migrated Companies are then linked to their associated Contact records via the Contact's Company field lookup.
My Practice Now
Note
HighLevel
Note
1:1My Practice Now client notes migrate as HighLevel Notes attached to the corresponding Contact record in HighLevel. The original note body text, create date, and last-modified date are all preserved during migration. Rich-text formatting present in My Practice Now notes gets converted to HighLevel's supported note format.
My Practice Now
Tag / Label
HighLevel
Tag
1:1My Practice Now tags and labels migrate as HighLevel Tags on Contact records. If the same tag appears on multiple record types (client and invoice), we create separate tag entries per object type. You can specify tag-merge rules if the source uses inconsistent labeling.
My Practice Now
Recurring Billing
HighLevel
Custom Field + Opportunity
1:1Recurring billing arrangements are handled using a dual-object approach: a custom field set on the Contact record stores the billing frequency (weekly, monthly, quarterly), next billing date, and billing amount; separate Opportunities are created for each completed billing cycle to preserve the full payment history without requiring HighLevel's commerce module.
My Practice Now
Custom Field (Client)
HighLevel
Custom Field (Contact)
1:1My Practice Now custom fields on Client records become HighLevel custom fields on Contact. Field types are mapped: text fields to Single Line Text, number fields to Number, date fields to Date, and pick-list fields to Dropdown. Unique-field constraints are applied per HighLevel's limit of 10 unique fields per object.
My Practice Now
Custom Object
HighLevel
Custom Object
1:1If My Practice Now has custom objects (e.g., for service-specific records), they map 1:1 to HighLevel Custom Objects. Associations between custom objects and Contacts become HighLevel Custom Object Associations. Each custom object can have up to 10 unique fields in HighLevel.
My Practice Now
Staff / Practitioner
HighLevel
User
1:1My Practice Now staff or practitioner records are matched to HighLevel users by email address. Unmatched staff members are flagged in the pre-migration report — you either invite them to create HighLevel accounts first or reassign their records to a designated fallback user before migration runs.
| My Practice Now | HighLevel | Compatibility | |
|---|---|---|---|
| Client | Contact1:1 | Fully supported | |
| Appointment | Task / Event1:1 | Fully supported | |
| Invoice | Opportunity1:1 | Fully supported | |
| Company / Business | Company1:1 | Fully supported | |
| Note | Note1:1 | Fully supported | |
| Tag / Label | Tag1:1 | Fully supported | |
| Recurring Billing | Custom Field + Opportunity1:1 | Fully supported | |
| Custom Field (Client) | Custom Field (Contact)1:1 | Fully supported | |
| Custom Object | Custom Object1:1 | Fully supported | |
| Staff / Practitioner | 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.
My Practice Now gotchas
Research data is sparse and often misattributed
Thinkific export scope determines what we can migrate
Content files require separate media migration
HighLevel gotchas
Sub-account architecture creates isolated data silos per client
Usage-based telecom and AI costs are not in the subscription price
Workflows have no native equivalent in most destination CRMs
API rate limits cap bulk migration throughput at 100 requests per 10 seconds per sub-account
White-label configuration and branding assets do not export via API
Pair-specific challenges
Migration approach
Audit My Practice Now data model and export scope
FlitStack AI connects to your My Practice Now account via API and inventories all objects: client records, appointments, invoices, notes, tags, and any custom objects. We count records per object type, identify custom fields and their data types, and flag any records with missing required fields (e.g., clients with no email address). The output is a data audit report that defines the exact migration scope and flags any objects that require pre-migration schema decisions in HighLevel.
Design HighLevel schema and pipeline structure
Based on the audit, FlitStack AI generates a HighLevel setup plan: which custom fields to create on Contact, how to model appointments as Tasks or Events, how to map invoices to Opportunities with the correct pipeline stages, and which custom objects to create. You review and approve the schema plan before any data moves. If your practice uses multiple pipelines (e.g., one for new clients, one for existing clients), we create a separate HighLevel pipeline for each.
Resolve staff logins and tag deduplication
We match My Practice Now staff accounts to HighLevel users by email address. Staff members without a corresponding HighLevel user account are flagged during this phase — you invite them to create HighLevel accounts or designate a fallback owner before migration proceeds. Simultaneously, we run a comprehensive tag-cleanup pass on your My Practice Now tag library to merge duplicates and standardize labels. You review and approve the final tag list before any data migrates.
Run test migration with field-level verification
A representative sample — typically 100–300 records across all object types including contacts, appointments, invoices, and any custom objects — migrates to HighLevel first in a controlled test environment. We generate a detailed field-level diff comparing source values against destination values so you can verify that appointment times, invoice amounts, custom field data, and owner assignments all transferred correctly. You sign off on the sample results before the full migration commits.
Execute full migration with delta-pickup window
The full dataset migrates to HighLevel in batches, with progress monitored against API rate limits. A delta-pickup window of 24–48 hours after the main migration run captures any new or modified records created in My Practice Now during the cutover period. All migration operations are logged in FlitStack AI's comprehensive audit trail. If reconciliation fails or errors are detected, one-click rollback reverts the destination to its pre-migration state.
Deliver automation reference and post-migration checklist
We export your My Practice Now automation definitions as a structured reference document for your HighLevel admin. The document captures triggers, conditions, and actions in a format suitable for recreation in HighLevel's Workflow Builder. The post-migration checklist covers: verifying record counts in HighLevel match the audit report, spot-checking custom field values, reviewing imported tags for accuracy, confirming owner assignments are correct, and rebuilding automations in HighLevel's visual workflow builder.
Platform deep dives
My Practice Now
Source
Strengths
Weaknesses
HighLevel
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 My Practice Now and HighLevel.
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
My Practice Now: Not publicly documented at the individual storefront level; Thinkific generally applies org-level rate limits.
Data volume sensitivity
My Practice Now 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 My Practice Now to HighLevel migration scoping. Not seeing yours? Book a call.
Walk through your My Practice Now to HighLevel migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave My Practice Now
Other ways to arrive at HighLevel
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.