Methodology: built from Zendesk and Freshworks documentation, API references, pricing pages and newsroom posts, checked on 5 Oct 2026. No vendor reviewed or paid for this article. We did not run hands-on tests.
A Zendesk to Freshservice migration moves tickets, comments, users, organizations and Guide articles into Freshservice, but each Zendesk ticket has to land as the right ITIL record: an incident, a service request or a problem. Triggers, automations, macros and SLA policies do not move. You rebuild them in Freshservice.
This guide is for IT teams moving internal support off Zendesk Support or Zendesk for Employee Service. It maps the Zendesk ticket model to Freshservice record types, sets export limits beside import limits, explains what really drives the effort, and ends with a cutover checklist.
Key takeaways
- Freshservice's Create Ticket call supports "only type 'incident' as of now", so service requests and problems need their own path (Freshservice API docs, as of 5 Oct 2026).
- Freshservice documents no self-service ticket import. Its partner Bulk API takes tickets and notes only, 50 per request, with limits marked "[To be confirmed post load testing]" (Freshservice Bulk API article, as of 5 Oct 2026).
- Zendesk incremental exports are capped at 10 requests per minute, or 30 with the High Volume add-on (Zendesk rate limits docs, as of 5 Oct 2026).
- Problem and change management start on Freshservice Pro, $99 per agent per month billed annually (Freshworks pricing page, as of 5 Oct 2026).
Why teams move from Zendesk to Freshservice
The usual trigger is that internal IT support outgrows a single ticket queue and needs separate incident, request, problem and change records. Zendesk models all of these as one ticket object typed question, incident, problem or task (Zendesk Tickets API docs).
Freshservice separates the record types and gates them by plan: incident and knowledge management on Starter at $19, service catalog and SLA management on Growth at $49, and problem, change and release management on Pro at $99, per agent per month billed annually (Freshworks pricing page, as of 5 Oct 2026). On 29 Jul 2026 Freshworks announced it was named a Leader in the 2026 Gartner Magic Quadrant for IT Service Management Platforms (Freshworks press release, as of 5 Oct 2026).
Staying is a real option, because Zendesk is adding IT features too. Its IT asset management reached general availability on 11 May 2026, with up to 500 asset records on Suite Growth and above (Zendesk announcement, as of 5 Oct 2026). Employee Service Suite Growth costs $59 per agent per month paid yearly (Zendesk Employee Service pricing page, as of 5 Oct 2026). If Jira Service Management is the other contender, our Zendesk to Jira migration guide covers that pair.
The verdict: move when you need problem, change and asset records working together; stay if a ticket queue with a service catalog covers your IT work.
What moves, what gets rebuilt, what's at risk in a Zendesk migration
Data moves. Configuration is rebuilt. Running SLA timers never move, because the target clock starts when the record is created.
| Moves (data) | Rebuilt in Freshservice (configuration) | At risk (needs a plan) |
|---|---|---|
| Tickets, as incidents, service requests or problems | Triggers and automations, as Workflow Automator workflows | Running SLA timers and breach history |
| Public comments and internal notes | Macros, as canned responses | Original created dates and comment authors |
| End users, agents and organizations, as requesters, agents and departments | SLA policies and business hours | Private attachments on short-lived URLs |
| Groups, tags and custom field values | Views, ticket forms and field conditions | Archived tickets that list endpoints skip |
| Attachments | Statuses and the priority matrix | Side conversations and CSAT responses |
| Guide categories, sections and articles | Help center user segments, as folder visibility | Article images and translations |
| IT assets, where used | Service catalog items and approvals | Problem-to-incident links |
Zendesk triggers fire on ticket create or update, while automations "run every hour on all your tickets that are not closed" (Zendesk help center, as of 5 Oct 2026). Freshservice documents event-based and scheduled workflows in Workflow Automator, and canned responses set up per workspace, which is where macros land.
Zendesk SLA policies measure seven metrics (Zendesk help center, as of 5 Oct 2026), while Freshservice sets SLA targets by priority with business or calendar hours. So SLA policies are redesigned, not mapped.
Zendesk to Freshservice field mapping
Record type, status and priority matter most, because they drive SLA targets and reporting.
Ticket types to ITIL record types
Freshservice's API docs describe the ticket type attribute as "[Support for only type 'incident' as of now]" (as of 5 Oct 2026). Freshservice places service requests through the service catalog, and problems have their own endpoints and need Pro.
A workable rule: Zendesk incidents and most questions become incidents. Employee Service catalog requests become service requests. Problem tickets become problems, with each incident's problem_id rebuilt as an association. Decide tasks by group or form.
Statuses, priorities and people
Freshservice lets you switch the SLA timer on or off for Pending and custom statuses, so map Zendesk hold to a custom status with the timer off if hold time should stay out of SLA. Freshservice calculates "Priority = Impact x Urgency" on incidents only, so decide whether imported priorities should survive a recalculation.
Freshworks' own Zendesk guide maps organizations to departments. The catch: a Zendesk user's organization_id returns only the default organization when the user belongs to several (Zendesk Users API docs). Freshservice imports requesters by CSV only, with Reporting Manager as an email and locations created first.
Comments, attachments and assets
A Zendesk comment's public flag is false for an internal note. Map it to the private flag on Freshservice notes, or internal notes reach requesters. Zendesk accepts inbound attachments up to 50 MB per file (Zendesk help center, as of 5 Oct 2026), while Freshservice caps a ticket's attachments at 40 MB in total (Freshservice API docs, as of 5 Oct 2026). Assets import by CSV, one asset type per import.
| Zendesk | Freshservice | Decision |
|---|---|---|
| Ticket type incident | Incident | Default target |
| Ticket type question or task | Incident or service request | Classify by group, form or tag before load |
| Ticket type problem + problem_id | Problem linked to incidents | Needs Pro plan or above |
| Status new, open | Open (API value 2) | Direct |
| Status pending, hold | Pending (3) or a custom status | Set SLA timer per status |
| Status solved, closed | Resolved (4), Closed (5) | Direct |
| Priority urgent, high, normal, low | Urgent (4), High (3), Medium (2), Low (1) | Check priority matrix |
| Public comment / internal note | Reply / private note | Map visibility |
| End users / organizations | Requesters / departments | Choose a default department rule |
| Groups, tags, custom fields | Agent groups, tags, custom fields | Create fields first |
Values from the Zendesk Tickets API docs and Freshservice API docs, as of 5 Oct 2026.
Export from Zendesk
Zendesk has four export routes, and only the API reaches every plan.
| Method | Availability | What it holds | Limits |
|---|---|---|---|
| Incremental export API | All plans | Tickets, ticket events (comments via comment_events), users, organizations | Up to 1,000 items per page; 10 requests/min, 30 with High Volume |
| JSON export | Suite Growth and above, Support Professional and Enterprise; off by default | Tickets with comments, users, organizations, attachment links | Comments omitted for tickets over 1 MB; 31-day increments above 1 million tickets |
| CSV export | Same plans | Ticket fields | No comments, descriptions or deleted tickets |
| XML export | Same plans | Tickets, users, organizations | 500 MB, about 200,000 tickets; unavailable above 200,000 |
Source: Zendesk data export article, incremental exports docs and rate limits docs, as of 5 Oct 2026.
Archived tickets are the first trap. Zendesk archives tickets 120 days after they close, and incremental and full exports still include them, but List Tickets and Show Ticket do not (Zendesk archiving article and Tickets API docs, as of 5 Oct 2026). Deleted tickets also appear in the incremental stream unless you set exclude_deleted.
For SLA history, copy ticket metrics into custom fields per ticket, because the ticket metrics list endpoint skips archived tickets. Keep Zendesk live until reconciliation is signed off: after cancellation you can request reactivation within 90 days, then deletion begins (Zendesk help center, as of 5 Oct 2026).
Import into Freshservice: the Freshservice migration path
Freshservice has no documented self-service ticket import. Its Data Migration help folder holds two articles, both for data migration partners (Freshservice support site, as of 5 Oct 2026). The only public guidance for customers is a Freshservice Community Manager post from 19 Nov 2021: support "would have to perform a CSV migration from our end", or customers could script the API (Freshworks Community, as of 5 Oct 2026).
The public API allows 100, 200, 400 and 500 calls per minute on Starter, Growth, Pro and Enterprise for accounts created on or after 1 Sep 2020 (Freshservice API docs, as of 5 Oct 2026). Partners can request a migration token that raises this to 700 per minute for a set window (Freshservice partner migration article, as of 5 Oct 2026). The partner Bulk API takes 50 tickets or notes per request at 10 requests per minute per bulk endpoint, marked "[To be confirmed post load testing]"; failed records are not retried automatically, and attachments must be public URLs (Freshservice Bulk API article, as of 5 Oct 2026).
Freshworks lists notification suppression for migrated tickets as planned, not live. The API describes created_at only as "Ticket creation timestamp", so store the original Zendesk ID and created date in custom fields.
What drives the effort and cost of a Zendesk to Freshservice migration
License prices are the visible part. The real effort sits in five drivers, and ticket count alone is not one of them.
| Driver | Why it changes the effort | Source (as of 5 Oct 2026) |
|---|---|---|
| Plan tier | Problem tickets with linked incidents need problem management, which starts on Pro at $99, not Growth at $49 | Freshworks pricing page |
| Comment volume | Zendesk stores the first comment as the description; each later comment becomes its own Freshservice note, and Create Ticket has its own sub-limit of 50, 80, 140 or 160 calls per minute by plan | Zendesk Tickets API docs; Freshservice API docs |
| Import route | No documented self-service import, so you script the public API or use a partner with Bulk API and token access | Freshservice Data Migration folder |
| Attachments | Files up to 50 MB in Zendesk meet a 40 MB per-ticket total, and short-lived private URLs need staging storage | Zendesk attachment articles; Freshservice API docs |
| Overlap period | Zendesk stays licensed through reconciliation, because reactivation is possible only within 90 days of cancellation | Zendesk canceled-account article |
Comment volume is the driver teams most often miss. A queue of short password resets and a queue of long change discussions can hold the same number of tickets but need very different numbers of write calls. Count comments and attachments per ticket during discovery.
The import route also decides who owns the risk. A scripted import keeps control in-house, but your team owns retries, rate-limit handling and reconciliation. The Bulk API writes more per call, yet its limits are unconfirmed and failed records must be resubmitted.
What changes for agents and requesters
- Reports split by record type. One Zendesk ticket report becomes separate incident and service request reports, so baselines will not line up on day one.
- Priority behaves differently. Requesters cannot pick a priority on a service request, and the matrix recalculates incidents.
- Search lags during the load. Freshworks warns that search and analytics "will not update in real time during the migration" (Freshservice Bulk API article, as of 5 Oct 2026). Tell agents before cutover weekend.
Knowledge base: Zendesk Guide to Freshservice solutions
Zendesk Guide organizes content as categories, sections and articles, with user segments for visibility and per-article translations. There is "no CSV export button for Knowledge content", so export runs through the Help Center API. Zendesk's backup tutorial leaves images out of scope, and article attachments can reach 20 MB each (Zendesk developer docs, as of 5 Oct 2026).
Freshservice uses categories, folders and articles, and a folder can be visible to all users, all agents or chosen departments. Freshworks maps sections to folders. Set up secondary languages before loading translations, re-host inline images, then rewrite links to old Guide articles.
The migration plan in phases
Run the move as a controlled change, with a go/no-go after each phase.
- Discover. Count tickets by type, status, group and year, archived included, plus comments and attachments per ticket. Decide how much history is in scope.
- Map. Fix record type, status and priority rules and the rebuild list. Create Freshservice fields, groups, departments and locations.
- Test migration. Load a sample with the largest tickets, private attachments and translated articles. Check note visibility as a requester.
- Cutover with delta sync. Load history before the freeze window, then sync tickets changed since the last run, with workflows and notifications off.
- Reconcile. Compare counts by record type, status and group, then sample comments, attachments and links.
- Hypercare. Keep Zendesk read-only, watch SLA breaches and routing, and fix rebuilt workflows.
Pair-specific failure points
- Everything lands as an incident. The incident-only ticket API makes this the easy path, and request reporting breaks with it.
- Private attachments expire. On Zendesk accounts created on or after 5 Dec 2024, or using messaging, private attachment URLs are short-lived (Zendesk help center, as of 5 Oct 2026). The Bulk API needs public URLs, so stage files in between.
- Oversized files fail quietly. Attachments beyond the 40 MB per-entity total fail as a partial failure while the ticket or note is still created (Freshservice Bulk API article, as of 5 Oct 2026).
- Archived history goes missing. List All Ticket Audits excludes archived tickets, so use per-ticket calls.
- Requesters get flooded with email. With notification suppression still planned, switch notifications off before loading.
Zendesk to Freshservice migration checklist
- Confirm the Freshservice plan covers problem, change and SLA.
- Ask Zendesk to enable data exports, if your plan has them.
- Inventory tickets by type, status, group and year, archived included.
- Count comments and attachments per ticket to size the API budget.
- Write record type rules for questions, tasks, catalog requests and problems.
- Agree status, priority and SLA timer mapping.
- Create Freshservice locations, departments, groups and custom fields.
- Import requesters and agents by CSV.
- Add fields for the Zendesk ID, original created date and SLA metrics.
- Stage private attachments before their URLs expire.
- Export Guide articles, images and translations.
- Turn off workflows and notifications for the load window.
- Run a test migration, then reconcile counts and visibility.
- Cut over with delta sync, and keep Zendesk active until sign-off.
- Rebuild triggers, automations, macros, views and SLA policies.
FAQ
Methodology
We read Zendesk and Freshworks product documentation, API references, pricing pages, newsroom posts and one dated Freshservice Community Manager post, all checked on 5 Oct 2026. We read the top-ranking pages for this query to find gaps but did not cite or name migration-tool vendors. The effort drivers are reasoned from published limits, not measured. We did not run hands-on tests. Disclosure: MigrateX, the publisher of this article, runs ITSM data migrations, including between platforms named here. No vendor reviewed or paid for this article.