What you can export from Freshservice and what stays behind
If you are facing a renewal, a price change, a residency requirement or an exit decision, the first question is what Freshservice's documented export paths actually deliver. Account administrators can export the entire service desk as XML from Admin, Account, Export. The file is sent to the registered agent email address, and on trial accounts administrators must wait 2 days between exports. That XML package is the most complete record the platform offers in one file, but it is a point-in-time archive, not a live feed you can query.
For working data, ticket list exports are available as CSV or Excel, limited to 10,000 tickets per export. Each export is also emailed to the agent who runs it, and Freshservice allows up to 5 scheduled exports per module. If your ticket volume exceeds 10,000, you will need to split exports by date or filter, and you should confirm with Freshservice how it handles that in your account. Conversation history is not included by default. Ticket exports carry conversations only when the Agent interaction and Customer interaction fields are selected, so check those boxes before every export you plan to rely on.
Treat anything beyond these documented paths as an open question. Confirm with Freshservice whether attachments, automation rules, custom workflows, SLA definitions, service catalog entries and knowledge base articles are included in the XML package, and ask how long the file remains available to download. Run a test export on a copy of a representative queue, open the result, and verify that ticket threads, requester fields and asset links appear as you expect before you plan any migration around it.
Which Freshservice data types have a documented export path
This table lists each Freshservice data type with a documented export path, the method, the output format and the limits that apply. Read it before planning a migration so you know which records you can take out in bulk and which need a separate extraction plan. Anything not listed here is not covered by the documented exports and should be confirmed with Freshservice support.
| Data type | Export method and format | Limits and conditions | What to check before you rely on it |
|---|---|---|---|
| Full service desk | XML from Admin, Account, Export, sent to the registered agent email address | Trial accounts must wait 2 days between exports | Confirm the registered agent address receives the file and that it is large enough to hold it |
| Ticket list | CSV or Excel export from the ticket list view | Capped at 10,000 tickets per export | Split larger ticket sets into multiple exports and check totals against your ticket count |
| Ticket conversations | Included in ticket list exports only when selected | Requires the Agent interaction and Customer interaction fields to be selected | Without these fields, the ticket history is not in the file |
| Scheduled exports | Recurring ticket list exports by module | Up to 5 scheduled exports per module | Plan schedules so the set of exports covers every period you need to keep |
| Assets, contracts, changes and other modules | Not listed as a separate documented export path in the sources reviewed | Not applicable | Ask Freshservice support whether each module is in the full XML export and how it is represented |
What the documented exports do not give you and how to work around it
Freshservice's documented exports move ticket and account data out, but they do not carry every part of how your service desk works. The cards below cover the gaps that most often surprise teams during a move, with a workaround for each and the points to confirm with Freshservice before you rely on an export.
Ticket volumes above the export cap
The CSV and Excel ticket list exports are limited to 10,000 tickets per export. If your history is larger, you will need to split the work by date range or by filter, run one export per slice, and merge the files in a staging database before importing. Keep a record of which ranges you exported so no slice is missed or counted twice. Confirm with Freshservice whether the full XML account export covers your complete ticket history, since it is the more complete source for a migration.
Conversations missing from ticket exports
Ticket list exports include conversations only when the Agent interaction and Customer interaction fields are selected. If those fields are left out, you receive ticket metadata without the replies, notes and customer messages that carry most of the history. Select both fields in every export you run for migration, then check one known ticket in the output to confirm its replies appear. Ask Freshservice how attachments are handled in each export type, since a ticket row does not guarantee the files behind it.
XML export arrives by email
The full service desk export is sent to the registered agent email address rather than downloaded from the admin console. Your mail server may reject or truncate a large attachment, and the file may be held by a retention or scanning policy. Before the export runs, confirm the registered address is a monitored mailbox and ask your mail administrator for the maximum attachment size. Save the file to controlled storage immediately, and verify its size and checksum against what Freshservice reports before you start parsing it.
Trial accounts wait between exports
On trial accounts, administrators must wait 2 days between full service desk exports. A failed or incomplete first attempt can therefore delay your migration test by days, which matters if a cutover date is already fixed. Run a test export on a trial or early in the project, check the XML structure against your mapping, and schedule the production export with buffer time. Confirm with Freshservice whether this wait applies to your plan and whether a support request can shorten it.
Workflows, SLAs and automations are not exported
A data export carries records such as tickets, assets and articles, not the logic around them. Automations, SLA policies, approval flows and the service catalog must be documented from the admin console and rebuilt in your target tool. Export a screenshot or written inventory of each rule before you change anything, and list which ones your reports depend on. Ask Freshservice which configuration objects, if any, its export includes, because the answer decides how much manual rebuild the project carries.
Scheduled export limits for repeat runs
Freshservice allows up to 5 scheduled exports per module. Teams that keep a parallel system running during cutover, or that re-sync changed tickets over several weeks, can use those slots quickly. Plan delta runs with a fixed cadence and record each export's date range, so the final cutover run captures everything since the last sync. Confirm with Freshservice whether scheduled exports can be changed or cancelled, and how long they are kept.
Run a complete Freshservice export in the right order
This sequence takes a full Freshservice export first, then adds period-based ticket files with conversation history, so you end up with a complete, checked copy of your service desk data that you can read without Freshservice.
Confirm the admin role and registered agent email
Sign in as an account administrator and confirm that your account has the admin role needed for the export. Check that the agent email address registered on your profile is one you can still access, because the full XML export is sent there and not to the browser. Record the address and the date of the request in your export log. This step is done when you can open that mailbox and confirm it receives messages from Freshservice. If you are on a trial account, confirm with Freshservice how the export wait period applies before you start, since the researched facts note a two-day wait between exports on trials.
Request the full XML service desk export
From Admin, Account, Export, request the full service desk export. Freshservice sends the XML file to the registered agent email address. Download the file as soon as it arrives and keep the original attachment unchanged. Treat this file as the baseline for the migration, because it covers the whole service desk rather than a filtered view. The step is complete when the file opens and you can see the expected top-level records, such as tickets and related data, without errors.
Export ticket lists by period with conversations
Freshservice ticket list exports are available as CSV or Excel and are limited to 10,000 tickets per export. Split your history into date ranges so that each export stays under that limit. In the export options, select the Agent interaction and Customer interaction fields, because conversations are included only when those fields are chosen. Run one export per period and keep the period label in the file name. Verification: open the Freshservice ticket list view with the same filters, compare the ticket count for each period against the number of rows in the file, and record any difference before you move on.
Check conversation content in the ticket files
Open a sample of the CSV or Excel files and confirm that agent replies and customer messages appear in the conversation columns for tickets known to have a back-and-forth history. Compare a few tickets against the same records in Freshservice. If conversation columns are empty, rerun that period with both interaction fields selected. This check matters because exports made without those fields do not carry the ticket history you will need later.
Schedule recurring exports within the module limit
Freshservice allows up to 5 scheduled exports per module. Use those slots for the exports you will need to repeat, such as a ticket export that runs until cutover. Name each schedule for its module and purpose, and write down the recipient, fields and filters so the schedules can be reproduced. Confirm the schedule list in Freshservice matches your record. This step is done when every scheduled export appears with the expected settings and you have kept at least one slot free for a final export.
Store every file with a checksum and manifest
Move every XML, CSV and Excel file into one dated archive folder on storage you control. Calculate a SHA-256 checksum for each file and record it in a manifest with the file name, export type, period, row count, fields selected and the date received. Store the manifest alongside the files and keep a second copy in a separate location. The step is complete when re-running the checksum command on a copy returns the same values as the manifest, which proves the files were not altered in transit.
Reconcile totals before closing the export
Before you treat the export as final, add up the row counts across all period files and compare that total with the ticket total shown in Freshservice for the full range. Note any gaps, then rerun the affected periods or confirm the difference with Freshservice support. Sign off the manifest with the name of the person who ran the export and the date. This closing check gives you a documented baseline that any later migration, such as to GLPI, can be measured against.
How to verify that the copy is complete before you rely on it
Verification is the step teams most often skip, and it is the only way to know the export is usable before the Freshservice trial, renewal or account change makes the source hard to reach. Start by reconciling counts. Compare the number of tickets in the export against the live count in Freshservice for the same filter and date range, and record any difference with its cause. For the full XML export, the file arrives at the registered agent email address, so confirm that the address and mailbox you check are the ones the account administrator used. For ticket list exports, remember the limit of 10,000 tickets per CSV or Excel file, so a larger account needs several filtered exports whose totals add up to the live count.
Next, spot-check the records that are most likely to be incomplete. Pick tickets with long conversation threads, several reassignments and attachments, and open each one beside the live ticket. Confirm that every reply appears in order, that internal notes are present where your process needs them, and that attachments are referenced. If a ticket list export is missing conversations, check whether the Agent interaction and Customer interaction fields were selected, since conversations are excluded otherwise. In the XML, search for the asset and requester records you rely on, such as asset tags, owners, departments and contact details, and compare a few against the live console. Ask Freshservice support to confirm which objects the full export covers before you assume a gap is a fault.
Finally, keep a dated record of each export: the date and time, the export type, the filters, the file names and checksums, the record counts, and the names of the people who checked it. On trial accounts, note the two-day wait between exports so that a failed attempt does not leave you without a copy. If any check fails, do not edit the file by hand to make the numbers match, because a hand-edited copy cannot be proven to match the source. Instead, document the failure and run the export again with corrected settings or filters, then repeat the checks. Keep the verified copy and its record together in your own storage, since that record is what a later migration team will rely on.
What to plan before the Freshservice contract ends
A Freshservice exit is mostly a scheduling problem. The export itself is quick to start, but the XML file, the ticket CSVs and the decisions around them need time to run, verify and store. Work through these items before the renewal notice date passes, so the data is in hand while you still have a working account.
Notice and renewal dates
Find the notice period, renewal date and cancellation terms in your Freshservice order form and contract. Ask your account manager in writing what happens to the account, its data and its integrations on the day the subscription ends, and whether any data is deleted automatically after that date. Your export schedule should work backward from the earliest date you could be locked out, not the date you plan to cancel.
Export and verification timeline
Plan at least one full XML export and a set of ticket CSV or Excel exports, then check record counts against the live account. Remember that each ticket list export is capped at 10,000 tickets, so large queues need several filtered exports. Ask Freshservice in writing for any export limits that apply to your plan or to a trial account.
Read-only window before cancellation
Keep the account running until your exports are verified, and avoid making changes during the final week so the last export matches what you migrate. Confirm with Freshservice in writing whether the account stays accessible after the subscription ends, and for how long. If it does not, export before the access change, not after.
Retention rules for personal data
Tickets, requester details and conversations usually contain names, email addresses and sometimes sensitive support content. Decide where the exported files will be stored, who can open them, and how long they are kept. Confirm that your retention schedule and legal basis cover copies held after the contract ends, and delete working copies once the new system is verified.
Target platform decision
Choose the destination before the final export, because the format you need depends on it. A self-hosted GLPI instance needs the ticket and asset data mapped to its own models, so decide which records move and which are rebuilt by hand. Confirm the hosting, database and backup responsibilities for the new platform in writing with your implementation partner.
Test import into the new system
Import a sample of tickets, assets and knowledge base articles into a test instance before you rely on the migration. Compare counts, ticket history, attachments and requester links against the export. Keep a written record of which fields are missing or changed, because those gaps decide what must be rebuilt manually.
Questions buyers ask before exporting their Freshservice data
Is exporting my data from Freshservice free?
The export itself is a built-in admin action, so Freshservice does not bill you for running it, but the cost of turning that export into something you can use is where the money goes. The full XML export arrives by email at the registered agent address, and the ticket CSV and Excel exports are limited to 10,000 tickets per export. Your costs come from the admin hours to run and verify the files, the engineering time to map fields into a new tool, and any partner fees for migration work. Ask any partner for a written scope that names each deliverable before work begins, and confirm with Freshservice what your current plan includes.
How long does a Freshservice export take to arrive?
The export is not delivered on screen. Freshservice emails the file to the registered agent address, so the time to receive it depends on the export type and the size of your account. Trial accounts must wait 2 days between exports, which matters if your first attempt is incomplete and you need a second run. Plan for that wait when you schedule a cutover, and confirm the current waiting rules for paid accounts in the Freshservice support article before you set your timeline.
How do I export more than 10,000 tickets from Freshservice?
The CSV and Excel ticket list exports are limited to 10,000 tickets per export, so a larger history needs to be split into several exports, such as by date range or by filter. Freshservice allows up to 5 scheduled exports per module, which can help when you repeat the same ranges. The full XML service desk export from Admin, Account, Export is a different route and does not use this ticket cap, so many teams use it as the complete record and the CSV files for working lists. Confirm the filters and totals with a sample before you rely on them.
Do attachments and ticket conversations come out in the export?
Conversations come out only if you select the right fields. For ticket list exports, Freshservice includes conversations only when the Agent interaction and Customer interaction fields are selected, so an export made without them will hold ticket rows but not the reply history. Attachments are a separate question that you should test. Export one ticket with a file attached, open the result, and confirm where the file lives before you trust the full history. Write the expected output into your scope so that a gap is caught early.
Can an internal admin run the export alone?
Yes, an account administrator can start both the full XML export and the ticket list exports, and the files come to the agent email address. What an internal admin cannot easily do alone is confirm that the data is complete, map custom fields, rebuild workflows and SLAs in the new platform, and check for lost conversation history. Many teams let an admin run the export and hand the files to a technical owner who validates them against a sample. Decide who signs off on completeness before the export starts.
What does an implementation partner add beyond the export?
A partner adds the work between the export file and a working service desk. That includes converting the export into GLPI's import structure, validating records against your sample, rebuilding ticket categories, approval paths, knowledge articles and asset records, hardening the self-hosted server, setting up backups and running a test cutover. Those tasks are where most of the effort sits. The export file alone does not contain the rules and configuration that made your Freshservice desk work, so ask the partner to document what is rebuilt and what is retired.
What should I ask for in a written scope for this work?
Ask for a written scope that lists each export type, the fields selected (including the Agent interaction and Customer interaction fields), the time window covered, the attachment handling, the target GLPI version and the acceptance tests. Ask how the partner will verify record counts against the source, what is excluded and why, and who owns the admin credentials and files during the project. Ask for the cutover plan, the rollback steps and the backup procedure, along with the post-cutover support terms. A fixed scope with named deliverables makes the quote comparable across suppliers.
How DeployOpen scopes and delivers a Freshservice data exit
DeployOpen plans and delivers the export, validation and handover of Freshservice data into a self-hosted environment inside your own infrastructure. Engagements are fixed-scope, with scope, deliverables and timelines agreed in writing before work starts.
How we scope
- Confirm which Freshservice modules, the full XML export and ticket CSV or Excel exports, are in the exit, and who holds the admin and agent accounts used.
- Record whether conversation history is in scope, since ticket exports include conversations only when the Agent and Customer interaction fields are selected.
- Agree the written scope, deliverables and timeline, and ask for a quote that separates export work from the target platform work.
How we build
- Run the full XML export from Admin, Account, Export, and check the file arrives at the registered agent address before relying on it.
- Split ticket lists into batches under the 10,000-ticket limit per export and reconcile counts against the source system.
- Document any gaps in the export, such as attachments or fields that do not map cleanly, and test the import path in a non-production environment.
How we hand over
- Deliver a documented record of what was exported, when, by whom, and how each file was checked for completeness.
- Provide the target environment's configuration, backup procedure and access model so your team can operate the data without us.
- Walk your administrators through the mapping decisions, open issues and the steps to repeat an export if needed.
How we support
- Offer ongoing support, upgrades and continuous testing for the self-hosted platform as a retainer, if your team wants it.
- Keep the source export archived under your own retention policy so the record stays available after the Freshservice subscription ends.
- Confirm with your own legal and compliance teams what retention and deletion obligations apply to the exported personal data.

