Freshdesk to Freshdesk migration, to merge or move your accounts
Tickets with every reply and note, contacts, companies, groups and your Solutions knowledge base, from one Freshdesk account into another. Start with a free Sample of 20, 100, 500 or 1,000 of your own tickets.
- Free Sample on your own data
- A Reconciliation report after every run
- Roll back any run, with a preview first
Last updated
This page is about moving data from one Freshdesk account into another, to merge two accounts or move to a new one. DataGrine moves contacts, companies, groups and tickets with every reply, note, attachment, tag and custom field, plus your Solutions categories, folders and articles. Replies are written as notes that start with their original time, sender and recipients, never through Freshdesk’s reply action, so the migration sends no reply emails. Freshdesk to Freshdesk has been tested end to end on the current release.
What moves
How Freshdesk records map to Freshdesk
| Freshdesk | Freshdesk | How |
|---|---|---|
| Contacts | Contacts | Matched on email or external ID, never on name or phone; other emails travel too. |
| Companies | Companies | A company whose domain is already in the target is linked to it; a different company with the same name is added with ‘(migrated ...)’ after its name. |
| Tickets | Tickets | Created with their requester, company, cc, tags and custom fields. Freshdesk sets Created to the migration day, so the original date is kept in a text field such as ‘created at freshdesk’, which the mapping screen can create. |
| Agent public replies, private notes and customer replies | Public notes, private notes and notes from that customer | Each starts with a line giving its original time in UTC and author, for example ‘Originally sent 2026-01-31 09:15 UTC by Name’. The second line names who it went to: To, Cc and Bcc; on a private note it reads ‘Notified’. Bcc is never written on a note your customer can see. |
| Attachments | Attachments | On the ticket and on each note, up to 20 MB per message (Freshdesk’s limit). A file that does not make it is named on the record with the reason. |
| Inline images | Inline images | Uploaded to the ticket and placed where the author put them. Freshdesk also lists them under attachments; it is one file. |
| Tags | Tags | Freshdesk allows 32 characters and no comma, so a longer tag is shortened and named, not dropped. A run tag can be added to every migrated ticket. |
| Custom fields | Custom fields | Through the mapping; missing fields can be created on the target first. Text fields hold 255 characters. |
| Groups | Groups | Groups the target lacks can be created with their members. |
| Source (email, portal, chat and others) | Source | Passes through as it was. |
| Solutions | Solutions | Categories, folders and sub-folders, articles in draft or published state, translations and SEO settings. Links between articles are rewritten to the new articles. A folder visible to selected companies keeps that audience; one visible to segments or bots becomes agents-only, and the record says so. |
Why teams make this move
Teams merge two Freshdesk accounts after an acquisition or a reorganisation, or move to a new Freshdesk account, and need the full ticket history and knowledge base in the account that stays.
The tricky part on this route
Freshdesk does not let anyone set a ticket’s creation date through its API, and its reply action emails the requester and every cc each time. So history has to be written as notes that carry the original time, sender and recipients on their first lines, with the original creation date in a ticket field, and nothing sent through the reply action.
You decide how to handle it in the field mapping, before the first run.
What doesn’t move
What stays behind in Freshdesk, and why.
After every run, the Reconciliation report names each record that did not arrive as it was, in three groups: Vendor limit, where Freshdesk cannot hold it the way Freshdesk did; Setup gap, where the mapping does not cover it yet; and Not carried, where it did not reach Freshdesk.
| Freshdesk | Outcome | Why |
|---|---|---|
| SLA due dates | Not carried | The target applies its own SLA policies to every migrated ticket. |
| A Type, Industry, language or time zone the target does not list | Left off and named | Named on the record as a Setup gap or Vendor limit, so the record still migrates. |
| Automations, canned responses, SLA policies and notifications | Rebuilt in Freshdesk | Settings, not data. |
Automations, macros and views are settings, not data, so they are set up again in Freshdesk.
Before you start: what to switch off and set up in Freshdesk
- Switch off requester and CC notifications (Admin > Workflows > Email Notifications). DataGrine sends nothing through the reply action, but Freshdesk’s own notifications still fire on new tickets and notes unless you switch them off.
- Turn off automation rules that email, assign or change tickets, on all three tabs: Ticket Creation, Ticket Updates and Hourly Triggers, or add a condition that leaves out your migration tag.
- Pause the satisfaction survey.
- Untick ‘required when closing’ on ticket fields for the run.
- Add agents and the ticket Type values you need; groups can be created for you.
- Pause busy integrations: they share Freshdesk’s per-minute API allowance.
- Connect the source with an admin whose scope is all tickets.
- Freshdesk archives closed tickets untouched for 120 days and they cannot be unarchived; export the Archive view if you need them.
- DataGrine sends nothing through the reply action, but the target’s own notifications and automations still fire unless you switch them off before the run.
Full checklist: Helpdesk migration checklist
What you get
What your team has after the move.
Full ticket history
Your agents open an old ticket and see every reply in order, with internal notes still private.
Reports still work
Your custom fields come across, so reports built on them keep working from day one.
Help centre ready at the switch
Your knowledge base articles are already in the new helpdesk on the day you switch.
No pause for your team
Agents keep working in the old helpdesk until the switch, and tickets from the last hour come across too.
An undo button
If something looks wrong, you can undo a run. You see exactly what will be removed before you confirm.
A clear answer before go-live
Before you tell anyone it’s done, you know what moved and what didn’t, record by record.
A report you can forward
The reconciliation report accounts for every record in scope. Export it to Excel and send it to your manager or your client.
Screens from the app
What you see after every run.
A list of anything that didn’t move
After every run you see how many records the source had and how many arrived. If the new helpdesk can’t hold something, the report lists that record and says why.
Undo a run, after a preview
You can roll back one run or the whole migration. Before you confirm, you see what will be removed, with examples.
Full ticket threads, in order
Every reply and private note arrives in order, with its attachments on the message they belong to. The Full migration skips what the Sample already wrote, and a Delta run only moves what changed.
Every record either arrives, or shows up in the report with the reason.
Run a free SampleHow it works
Five steps, and nothing is written until you start a run.
- 01
Connect
Connect both helpdesks. Freshdesk is only read, never written to.
- 02
Map
Map every field and value to where it lands. Missing fields can be created on Freshdesk from the mapping screen. The mapping locks once a run completes.
- 03
Sample
A free Sample of 20, 100, 500 or 1,000 of your own tickets (100 by default), with the contacts and companies they use. Keep it or roll it back.
- 04
Full migration
One Full migration moves everything in scope and skips what the Sample already wrote. Retry failed re-attempts only the failed records.
- 05
Delta
Up to 5 Delta runs bring across only what changed since the last completed run, until you switch.
After every run the Reconciliation report compares Freshdesk and Freshdesk line by line. Any run, or the whole migration, can be rolled back after a preview of what will be deleted, restored or left. When Freshdesk’s per-minute allowance is spent, the run waits a full minute and carries on; nothing is lost. A rollback deletes the contacts and companies the migration created and sends its tickets to Freshdesk’s Trash, where an admin can still restore them. Freshdesk is the connector we hold fixed: its behaviour is pinned by tests on every change, and any change to it needs a written reason.
Run it on the platform
Pick your two helpdesks and run a free Sample of 20 to 1,000 of your own tickets first. When you are happy with it, run the Full migration, then Delta runs at cut-over for anything that changed.
Our team runs it end to end
Our team plans the mapping, runs the whole migration and checks the results with you.
How a migration works · Security and data handling · Pricing · Talk to us about Freshdesk to Freshdesk
Questions
Questions about moving from Freshdesk to Freshdesk.
Will our customers get emails?
DataGrine never uses Freshdesk’s reply action, so it sends no reply emails. The target account’s own notifications and automations still fire on new tickets and notes unless you switch them off before the run; DataGrine does not switch them off for you.
Where is each ticket’s original date?
In a text field named after the source, such as ‘created at freshdesk’, which the mapping screen can create. Freshdesk’s own Created date is the migration day.
Do articles keep their folders and links?
Yes. Categories, folders and sub-folders, articles in draft or published state, translations and SEO settings travel, and links between articles are rewritten to the new articles. Restricted folders are never widened: one visible to selected companies keeps that audience, and one visible to segments or bots becomes agents-only, and the record says so.
What does a rollback do?
It deletes the contacts and companies the migration created and sends its tickets to Freshdesk’s Trash, where an admin can still restore them; Freshdesk has no API to purge a ticket. Replies added to a ticket that already existed are deleted.
Has this been tested?
Yes. Freshdesk to Freshdesk has been run end to end on the current release.
What does not carry across from Freshdesk?
Automations, macros and views are settings, not data, so they are set up again in Freshdesk. Anything that has no place in Freshdesk is named in the Reconciliation report as a Vendor limit, a Setup gap or Not carried.
Can we run it ourselves?
Yes. You connect both helpdesks and run it yourself on the DataGrine platform, or our migration team runs it for you.
Does our team have to stop working?
No. Freshdesk is only read, never written to, so your team keeps working during the Full migration. At cut-over, a Delta run brings across only what was created or changed since the last completed run.
What does it cost?
A Sample migration of your own records is free. After that, the price depends on how many records move and whether you run it yourself or have our team run it, and it is fixed before anything moves. Only four things count as records: companies, contacts, tickets (or conversations) and knowledge base articles. Everything inside them, replies, notes, attachments and custom fields, comes along and is not counted, and neither are tags, agents, teams or knowledge base categories. Enter your email on the pricing page to work out your price in a minute.
Related reading