Phase 0
Decide & Plan
Decisions that lock scope before any work begins.
-
Risk if skipped: A plan-tier surprise mid-migration forces a contract amendment or strips features like sandbox testing and custom objects from scope.
-
Risk if skipped: Configuring single-workspace then discovering a second brand needs isolation requires rebuilding ticket fields, SLAs, and automations.
-
Risk if skipped: Scope ambiguity around Custom Objects or time entries surfaces during cutover and forces emergency mapping work.
-
Risk if skipped: Pulling all-time history balloons run time; pulling too little erodes agent context for long-tail accounts.
-
Risk if skipped: Provisioning in the wrong region requires opening a new account and reloading every byte.
-
Risk if skipped: Loading PHI without a signed BAA creates a notifiable HIPAA breach.
-
Risk if skipped: Unwritten exclusions become user complaints in the first week after cutover.
-
Risk if skipped: Without numeric criteria the migration is never formally complete and the team keeps firefighting.
Phase 1
Pre-Migration Prep
Everything that must be true before the first byte leaves the source.
1a. Source-system audit and cleansing
-
Risk if skipped: Without a baseline you cannot prove the migration was complete during Phase 6 reconciliation.
-
Risk if skipped: Duplicate contacts in the source produce silent merges in Freshdesk, mixing ticket histories across distinct people.
-
Risk if skipped: Phone numbers without country codes are not recognized by Freshcaller and routing breaks for inbound calls.
-
Risk if skipped: Multi-email contacts collapse to a single email and the other addresses are lost, breaking inbound email matching.
-
Risk if skipped: Required-field gaps surface mid-import and halt entire batches.
-
Risk if skipped: Inline images converted to broken links produce unreadable historical tickets agents cannot escalate from.
1b. Freshdesk destination setup
-
Risk if skipped: Skipping sandbox testing puts every field-mapping bug into production where rollback is expensive.
-
Risk if skipped: Tickets owned by agents who do not exist in Freshdesk fall back to a default owner and break historical workload reporting.
-
Risk if skipped: Changing timezone after import shifts every ticket timestamp and breaks SLA reporting.
-
Risk if skipped: Importing a value into a missing custom field silently drops it; importing a value with mismatched case fails validation.
-
Risk if skipped: Creating Custom Object schema after data import means rebuilding lookup relationships row by row.
-
Risk if skipped: A wrong field type discovered after import forces field deletion and re-import of every affected ticket.
-
Risk if skipped: Active rules during import spam customers with status-change emails, trigger reassignments, and inflate Freshcaller call attempts.
-
Risk if skipped: Migration imports trigger thousands of stale notification emails to end users, generating immediate complaint tickets.
-
Risk if skipped: Email reconnect on a previously-connected mailbox can pull the last 48–72 hours of inbox history and create duplicate tickets in Freshdesk.
1c. People and process prep
-
Risk if skipped: Without a triage owner the first surface bug becomes a Slack thread with no resolution path.
-
Risk if skipped: Without a documented rollback plan, a bad cutover devolves into ad-hoc decisions made under pressure.
Phase 2
Source Export
Get the data out of the source system in a form you can transform.
-
Risk if skipped: Missing the resolved_at or closed_at column means migrated tickets cannot be re-stamped to the right historical state.
-
Risk if skipped: Conversations exported without the public/private flag will all import as the same visibility, leaking internal discussion to customers.
-
Risk if skipped: Attachments exceeding 20 MB per conversation are silently rejected at import and the corresponding ticket loses evidence.
-
Risk if skipped: Inline images become broken-image placeholders if not re-uploaded and rewritten with new URLs.
-
Risk if skipped: Translated articles imported without a locale tag default to the primary language and the multilingual experience breaks.
-
Risk if skipped: Without captured automation configs, the team forgets edge-case rules and customer-facing behavior subtly changes after cutover.
Phase 3
Transform & Map
Take raw source exports and produce Freshdesk-shaped files.
3a. Mapping spreadsheet
-
Risk if skipped: Without a written mapping, field decisions get re-debated mid-import and waste cycles.
-
Risk if skipped: Case mismatches reject entire rows silently in batch with no partial save.
-
Risk if skipped: Status collapsing skews SLA and reopen-rate reports for years after cutover.
-
Risk if skipped: Missed agent mappings dump tickets onto a default agent and erase historical workload attribution.
3b. Data transformation
-
Risk if skipped: Mixed timezone strings produce ticket events where first_responded_at appears before created_at, breaking SLA calculations.
-
Risk if skipped: Bad encoding causes silent character corruption (mojibake) across tens of thousands of records.
-
Risk if skipped: Source rows exceeding Freshdesk text limits reject the entire row, not just the long field.
-
Risk if skipped: A single bad dropdown value can reject the entire ticket and block the import batch.
3c. Relationship and audit-trail decisions
-
Risk if skipped: Without preserved source timestamps, all migrated tickets look like they arrived on cutover day and historical reporting collapses.
-
Risk if skipped: Teams that assume created_at is overridable discover at validation that every contact looks brand-new and account-tenure reports are wrong.
-
Risk if skipped: Without a source-ID custom field, idempotent re-runs become impossible and any retry duplicates tickets.
3d. Helpdesk-specific transforms
-
Risk if skipped: Mixing public and private into a single visibility exposes internal triage notes to customers via the portal.
-
Risk if skipped: Uploading translations before the primary article exists drops the translation silently.
-
Risk if skipped: Treating all source triggers as a single Freshdesk rule type creates rules that never fire or fire on the wrong event.
-
Risk if skipped: Missing SLA policies break first-response and resolution clocks for migrated open tickets immediately at go-live.
-
Risk if skipped: Default 24x7 business hours bypass source business hours and inflate SLA pass rates artificially.
-
Risk if skipped: Connecting Freshchat before agents are trained causes live customer chats to bounce around an empty queue.
-
Risk if skipped: Enabling Freddy AI mid-import causes the model to train on a partial dataset and gives bad recommendations for weeks.
Phase 4
Sandbox Test Migration
Catch every problem in sandbox before it costs you in production.
-
Risk if skipped: A sample biased toward recent tickets misses encoding bugs in legacy threads that surface in production.
-
Risk if skipped: Discovering the 20 MB ceiling on production cutover day forces emergency re-architecture of the attachment loader.
-
Risk if skipped: Internal-note leakage exposes triage commentary, escalation discussion, or competitive analysis to customers.
-
Risk if skipped: Discovering a 100k-ticket load needs 50 hours during cutover weekend leaves no buffer for diagnosis.
-
Risk if skipped: Without a domain expert's eye, subtle data wrongness ships to production.
-
Risk if skipped: Without written sign-off, scope creep continues into production and the window slips.
Phase 5
Production Cutover
The migration itself — tightly sequenced execution.
-
Risk if skipped: A leaked write during freeze means the delta never matches and reconciliation runs forever.
-
Risk if skipped: One enabled notification rule emails thousands of customers about 3-year-old resolved tickets.
-
Risk if skipped: Mixed-order conversation loads scramble the thread display and confuse agents reading historical context.
-
Risk if skipped: Lost error logs mean failures get rediscovered weeks later by users instead of caught in validation.
-
Risk if skipped: Pushing through partial data creates orphan tickets, missing attachments, and a multi-week cleanup project.
Phase 6
Validate
Prove the migration is correct before users get in.
6a. Reconciliation
-
Risk if skipped: Count mismatch caught a week after cutover surfaces as 'where did my ticket go?' agent escalations.
-
Risk if skipped: An open-ticket count delta of even 1% breaks first-response SLA reporting from day one.
-
Risk if skipped: Tickets without a Source Ticket ID cannot be re-imported idempotently and orphan future delta runs.
6b. Relationship validation
-
Risk if skipped: A visibility misconfiguration exposes internal KB articles to the public portal.
6c. Audit and compliance
-
Risk if skipped: Discovering an unsigned BAA after PHI is loaded creates a notifiable breach.
-
Risk if skipped: Wrong SLA clocks mean SLA breach reports are wrong for the entire migrated cohort.
6d. User-acceptance check
-
Risk if skipped: Without manager UAT, reporting gaps surface in the first board meeting after cutover.
6e. Sign-off
-
Risk if skipped: Without sign-off, users get access while issues are still open and post-cutover firefighting begins immediately.
Phase 7
Post-Migration Cleanup
Wrap up so the team can move on.
-
Risk if skipped: An accidental source-system write post-cutover muddies the historical record and confuses agents who still log in by habit.
-
Risk if skipped: An over-broad Supervisor rule can bulk-close thousands of migrated open tickets in a single hour.
-
Risk if skipped: Lost source archives mean any future audit or legal question about migrated data has no source-of-truth to consult.
Watch list
Risks to track throughout
These risks live across multiple phases — keep an eye on them from kickoff through cutover.
-
Case-sensitive dropdowns and immutable field types
Freshdesk dropdown values are case-sensitive and several field types cannot be changed after creation. A 'Closed Won' source value fails against a 'closed won' Freshdesk choice silently in batch. Lock the destination schema in Phase 1, validate every dropdown value in Phase 3, and treat field-type changes after import as last-resort destructive operations.
-
Email reconnect creates duplicate tickets
Freshdesk fetches the last 48–72 hours of inbox history when a support mailbox is connected or reconnected. During cutover, an accidental disconnect-and-reconnect on a previously-connected mailbox pulls in two days of emails as net-new Freshdesk tickets, on top of the migration. Sequence email channel connection deliberately in Phase 5 and avoid reconnecting any mailbox already in scope.
-
Three automation engines hide silent dual-firing
Freshdesk's Dispatch'r (creation), Observer (update), and Supervisor (hourly time-based) engines are separate. Source-platform triggers often map to multiple Freshdesk engines, and re-enabling all three at once can fire the same action twice on a migrated ticket. Re-enable engines one at a time in Phase 7, watch the first 24 hours of triggered actions on each engine, and confirm no duplicate updates land on historical tickets.
Pair this with the long-form guide
The complete Freshdesk migration guide
Same research, written as prose: data model, import mechanisms, mapping strategy, pitfalls, and partner landscape.