CRM migration

Migrate from My Dental Clinic to Freshsales

Field-level mapping, validation, and rollback between My Dental Clinic and Freshsales. We move data and schema; workflows are rebuilt natively in Freshsales.

My Dental Clinic logo

My Dental Clinic

Source

Freshsales

Destination

Freshsales logo

Compatibility

80%

8 of 10

objects map 1:1 between My Dental Clinic and Freshsales.

Complexity

BStandard

Timeline

24–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

My Dental Clinic is a dental-practice-management platform centered on patient records, treatment planning, and appointment scheduling — its data model prioritizes clinical workflow over relationship tracking. Freshsales is a sales-focused CRM built around Leads, Contacts, Accounts, and Deals, with Contact Lifecycle Stages, multiple sales pipelines, and Freddy AI scoring on Pro plans. The migration maps My Dental Clinic patient records to Freshsales Contacts with address and contact fields preserved, clinic/facility data to Accounts, treatment plan summaries to custom fields on Contacts, and appointment history to Tasks and Events with original timestamps. The main structural gap is that My Dental Clinic's clinical data (treatment codes, imaging references, insurance claims) has no native Freshsales equivalent — these become custom fields, Notes, or a custom Treatment_Records object that your team configures after migration. FlitStack AI uses scoped read access on My Dental Clinic, maps fields value-by-value during extraction, and delivers a field-level diff before committing the full run. Automations, workflows, and appointment reminder rules do not migrate and must be rebuilt in Freshsales Workflows or exported as reference documents for your admin.

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

My Dental Clinic logo

My Dental Clinic

What's pushing teams away

  • Customer service scores lag behind category leaders, with users reporting slow response times and difficulty reaching support during urgent issues.
  • Feature set feels limiting as practices grow beyond single-location operations, with fewer advanced reporting and multi-location management tools than competitors.
  • Lower value-for-money ratings compared to platforms offering broader feature bundles at similar price points.
  • Integration ecosystem is narrower than major dental platforms, making connectivity to specialized imaging or lab systems a friction point.

Choosing

Freshsales logo

Freshsales

What's pulling them in

  • Lowest barrier to entry among major CRMs — the free tier supports up to 3 users and includes core CRM functionality before committing to per-seat pricing.
  • Built-in chat, email, and phone reduce reliance on third-party integrations for basic sales communication and contact management.
  • Freddy AI contact scoring and deal insights are included on Pro plans at a lower price than comparable HubSpot tiers.
  • Kanban pipeline views across Contacts, Accounts, and Deals provide visual deal management without requiring custom configuration.
  • Integration with the broader Freshworks ecosystem (Freshdesk, Freshchat, Freshservice) reduces tool sprawl for teams already using Freshworks.

Object mapping

How My Dental Clinic objects map to Freshsales

Each row shows how a My Dental Clinic object lands in Freshsales, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

My Dental Clinic

Patient Record

maps to

Freshsales

Contact

1:1
Fully supported

My Dental Clinic patient records map directly to Freshsales Contacts. First name, last name, date of birth, phone, email, and address fields map to Freshsales Contact fields. The patient's primary clinic association maps to Account lookup. Original patient create date is preserved as a custom datetime field since Freshsales CreatedDate reflects migration timestamp.

My Dental Clinic

Patient Record (unscheduled lead)

maps to

Freshsales

Lead

1:many
Fully supported

Patients in My Dental Clinic who have inquiry records but no completed appointments map to Freshsales Leads. Incoming referral sources, marketing campaign responses, and phone inquiries become Lead records. When a Lead converts to a booked appointment, Freshsales creates a Contact, Account, and Deal automatically if the conversion workflow is configured.

My Dental Clinic

Clinic / Practice Location

maps to

Freshsales

Account

1:1
Fully supported

My Dental Clinic stores clinic name, address, phone, and operating hours. These map to Freshsales Account fields (Name, address fields, phone). For multi-location groups, each My Dental Clinic location becomes a separate Account record, and parent-company relationships can be modeled using Account hierarchy if available in the source data.

My Dental Clinic

Appointment / Visit

maps to

Freshsales

Task / Event

1:1
Fully supported

My Dental Clinic appointments map to Freshsales Tasks (for administrative tasks like treatment plan follow-up) and Events (for scheduled visits with start/end times). The original appointment date, practitioner assigned, and visit type (hygiene, restorative, consultation) are stored as custom fields on the Task or Event. Past appointments become closed Tasks; future appointments become Events.

My Dental Clinic

Treatment Plan / Procedure Record

maps to

Freshsales

Custom Object: Treatment_Record

1:1
Fully supported

My Dental Clinic treatment plans (procedure codes, tooth numbers, materials used, treatment status) have no direct Freshsales equivalent. We create a Treatment_Record custom object with fields for procedure_code, tooth_surface, treatment_date, status, and provider. Each Treatment_Record links to the patient Contact via association. Your Freshsales admin configures the object schema before migration.

My Dental Clinic

Insurance / Billing Record

maps to

Freshsales

Custom Fields on Contact / Deal

many:1
Fully supported

Insurance provider, policy number, coverage percentage, and outstanding balance from My Dental Clinic merge into custom fields on the Contact record (Insurance_Provider__c, Policy_Number__c, Coverage_Pct__c) and optionally onto a Deal representing the patient's active treatment plan with estimated billing. Claims history is preserved as Notes attached to the Contact.

My Dental Clinic

Referral Source

maps to

Freshsales

Custom Field on Contact

1:1
Fully supported

My Dental Clinic tracks referring dentist or physician as a contact property. This maps to a custom field (Referral_Source__c) on the Freshsales Contact. If the referral source is another practice, it can link to an Account record representing the referring practice.

My Dental Clinic

Practitioner / Staff

maps to

Freshsales

User (owner assignment)

1:1
Fully supported

My Dental Clinic practitioners (dentist, hygienist, assistant) resolve against Freshsales users by email match. Unmatched practitioners are flagged and assigned to a fallback owner (typically the practice admin). Practitioner role (dentist vs. hygienist) maps to a custom Contact field if you need to track provider-level patient history on the Contact record.

My Dental Clinic

Recall / Re-care Record

maps to

Freshsales

Deal (treatment pipeline) / Task

1:1
Fully supported

My Dental Clinic recall records (6-month hygiene recall, annual exam due) map to Freshsales Deals in a Treatment pipeline with stage values representing recall status (Recall Due, Appointment Scheduled, Completed). Overdue recalls generate Tasks assigned to the front-desk user for outreach. This model leverages Freshsales automation for recall campaigns.

My Dental Clinic

Patient Document / Attachment

maps to

Freshsales

Note / Attachment on Contact

1:1
Fully supported

Patient documents (consent forms, imaging referrals, insurance cards) stored in My Dental Clinic re-upload as Freshsales Notes and Attachments linked to the Contact record. File size limits apply (Freshsales supports standard attachment limits per plan). PDFs and images are preserved in their original format.

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.

My Dental Clinic logo

My Dental Clinic gotchas

High

Dental ledgers are structurally complex to migrate accurately

Medium

Tooth-numbering systems differ between dental platforms

Medium

Insurance carrier IDs must be re-mapped post-migration

Medium

Custom clinical note templates may not map directly

Freshsales logo

Freshsales gotchas

Medium

Freddy AI is Pro-tier only despite heavy marketing

High

Post-migration emails and sequences are disabled

Medium

Bot session credits are a one-time 500-session allocation

Medium

Phone credits charged per minute with no cap

Low

File storage limits scale with plan tier

Pair-specific challenges

  • Treatment history has no native Freshsales equivalent — custom object required

    My Dental Clinic stores procedure codes, tooth numbers, materials used, and treatment notes as structured patient data. Freshsales has no native clinical data model — treatment plans, per-tooth records, and imaging references cannot map to standard Contact, Account, or Deal fields without first creating a Treatment_Record custom object. Your Freshsales admin must create this object (with fields: Procedure_Code__c, Tooth_Surface__c, Treatment_Date__c, Status__c, Provider__c) before the migration run. FlitStack delivers a schema setup plan specifying the exact field configuration needed so your admin can pre-build the object before data lands.

  • Freshsales Lifecycle Stages require mapping from My Dental Clinic patient status

    My Dental Clinic patient status (Active, Inactive, Recall Due, New) does not map automatically to Freshsales Contact Lifecycle Stages. FlitStack applies a value-mapping table: Active patients become Contacts with Lifecycle Stage 'Customer', inactive patients become Leads, and Recall Due patients are routed as Contacts with a pending Deal in the Treatment pipeline. The mapping is applied at migration time based on the source status field value. If your My Dental Clinic uses custom status labels, FlitStack surfaces the value list before migration so you can confirm or adjust the mapping.

  • Insurance and billing data collapses to custom fields — claims history is not queryable

    My Dental Clinic insurance records (provider, policy number, group number, coverage percentages, outstanding balance) migrate as custom text and currency fields on the Freshsales Contact. These are storage fields, not a billing module — you cannot run insurance claim reports or generate superbills from Freshsales. Claims history, adjustments, and write-offs are preserved as Notes on the Contact record for reference. If billing reporting is critical, consider exporting insurance reports from My Dental Clinic separately and storing them as attachments rather than in Freshsales fields.

  • Practitioner-to-user matching fails for staff without email addresses in My Dental Clinic

    Freshsales requires a user account (matched by email) for task and event ownership. My Dental Clinic practitioners with no email address in the system cannot resolve to a Freshsales User and are flagged before migration. Unmatched practitioners are assigned to a fallback owner (practice admin) or can be invited to Freshsales first with their email address added to My Dental Clinic before the migration run. FlitStack provides an unmatched-practitioners report at the start of the migration window so your team can resolve these gaps before data loads.

Migration approach

Six steps for a successful My Dental Clinic to Freshsales data migration

  1. Export My Dental Clinic patient records and validate schema

    FlitStack initiates a scoped API read or structured CSV export from My Dental Clinic covering all patient records, appointments, treatment plans, insurance data, and practitioner profiles. We validate field counts, check for null values in required fields, and flag records missing email addresses (which affect Freshsales user matching). The export produces a manifest of record counts per object so you can verify scope before field mapping begins.

  2. Create Freshsales custom object and fields for dental-specific data

    Before data loads, your Freshsales admin creates the Treatment_Record custom object (or confirms FlitStack's schema plan) and all custom Contact fields (Date_of_Birth__c, Insurance_Provider__c, Policy_Number__c, Original_Create_Date__c, Referral_Source__c, Outstanding_Balance__c, Last_Payment_Date__c, Coverage_Pct__c). FlitStack delivers a step-by-step schema setup checklist with field names, types, pick-list values, and validation rules. This preparation runs in parallel with the source export and must be complete before the sample migration. The checklist includes detailed instructions for each custom field type (text, date, currency, picklist) so your admin can pre-configure the Freshsales org without trial and error.

  3. Resolve practitioners to Freshsales users by email match

    FlitStack matches My Dental Clinic practitioner records to Freshsales users using email address as the unique identifier. For each practitioner in the source system, FlitStack checks whether a corresponding Freshsales user account exists with a matching email. Unmatched practitioners are flagged in a pre-migration report — your team either invites them to Freshsales with their email address or assigns their records to a fallback owner (such as the practice administrator). No appointment or treatment record loads into Freshsales without a valid user owner; unresolved practitioners are grouped under the practice admin account to ensure data integrity and audit trails remain intact throughout the migration.

  4. Run sample migration with field-level diff

    A representative slice (typically 200–500 patient records, 100 appointments, 50 treatment plans) migrates to Freshsales first. FlitStack generates a field-level diff comparing source values to destination field contents — you verify Lifecycle Stage mapping, custom object linkage, and appointment timestamps. You approve the sample before the full run commits. This step catches mapping errors before they affect your full patient base.

  5. Execute full migration with delta-pickup window

    The full dataset loads to Freshsales: Contacts (linked to Accounts), Events for appointments, Tasks for follow-ups, Treatment_Record custom object entries, and custom field values. A delta-pickup window (24–48 hours) captures any new patients or appointments created in My Dental Clinic during cutover. FlitStack's audit log tracks every record inserted or updated. If reconciliation fails, one-click rollback reverts the Freshsales instance to its pre-migration state.

Platform deep dives

Context on both ends of the pair

My Dental Clinic logo

My Dental Clinic

Source

Strengths

  • Web-based, browser-accessible interface requiring no local server installation or maintenance overhead.
  • Automated patient communication tools including appointment reminders and intake form collection reduce front-desk workload.
  • Specialized dental workflow features including tooth charting and perio charting built into the core product rather than add-ons.

Weaknesses

  • Narrower third-party integration ecosystem compared to major dental platforms, limiting connectivity with specialized imaging and lab vendors.
  • Per-feature pricing model can become unpredictable in cost as practices add modules over time.
  • Customer service responsiveness scores trail category competitors, creating risk for practices that need timely support during transitions.
Freshsales logo

Freshsales

Destination

Strengths

  • Generous free tier for small teams with core CRM functionality without per-seat costs.
  • All-in-one sales CRM with built-in telephony, chat, and email reducing third-party tool dependency.
  • Freddy AI contact scoring and deal predictions available on Pro tier.
  • Multiple pipeline views with Kanban and list options across all plans.

Weaknesses

  • Reports lack depth compared to competitors like HubSpot, with limited customization options.
  • Integration setup is poorly documented with no clear guides for connecting third-party tools.
  • AI features gated behind $39/user/month Pro tier despite marketing emphasis on Freddy AI.
  • Bot sessions limited to 500 one-time allocation with no monthly refresh.

Complexity grading

How hard is this migration?

Standard CRM migration. 2 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 My Dental Clinic and Freshsales.

  • Object compatibility

    B

    2 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

    My Dental Clinic: Not publicly documented..

  • Data volume sensitivity

    B

    My Dental Clinic doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your My Dental Clinic to Freshsales 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 My Dental Clinic to Freshsales data migrations

Answers to the questions buyers ask most during My Dental Clinic to Freshsales migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your My Dental Clinic to Freshsales migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most My Dental Clinic to Freshsales migrations complete in 24–72 hours for practices with fewer than 25,000 patient records and standard custom field counts. Larger practices with over 50,000 records, multi-location clinic structures, or treatment-history data requiring a custom object extend to 5–10 days. The longest planning step is Freshsales custom object and field setup — FlitStack delivers a schema plan so your admin can pre-build the configuration before data extraction begins.

Adjacent paths

Related migrations to explore

Ready when you are

Move from My Dental Clinic.
Land in Freshsales, 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