How to Export Discord Tickets, and When You Have To
Export Discord tickets as a spreadsheet or a ZIP of every conversation. What each file holds, what it cannot, and the three moments to export first.
Dani, Founder, AI Ticket Bot
9 min read
Most advice about switching ticket bots, or tidying up a server, says "export first" and stops there. It is the right instinct and a thin instruction, because it skips the two things that decide whether an export does its job: what the file actually holds, and when not having one starts to cost you.
The second is the useful half. Everything a ticket bot keeps for you is kept on somebody's clock. A conversation lasts as long as your plan says, the server's data lasts 48 hours past the bot's removal, and an uploaded screenshot lasts on Discord's terms rather than anyone's. An export is the only copy that runs on yours. It is a fair question to ask of any Discord ticket bot: where does the record live, and who decides when it goes?
What can you export from your ticket history?
Short answer: two things, both from the Tickets page of the dashboard. A list of the tickets themselves, one row each, or the same list with every conversation attached. The first is small, fast and reaches your whole history. The second is heavier, capped lower, and reaches only as far back as your transcripts do.
| Just the details | With the conversations | |
|---|---|---|
| What you get | One row per ticket | A ZIP: a file per ticket plus a summary |
| Tickets per export | Up to 1,000 | Up to 100 |
| Formats | Spreadsheet, data file or plain text | Data file or plain text |
| How far back | Every ticket the server has had | Only conversations still inside your window |
There is no spreadsheet option for conversations, and that is deliberate. A conversation is nested and runs over many lines, and flattening one into a cell produces a file nobody can read, so the choice is not offered rather than offered and quietly mangled.
Exporting is free on every plan and needs Manage Server, because the dashboard does. Staff whose role can read transcripts can still download them one at a time from the transcript page, which is covered further down. Every export is written to your audit log, with how many tickets went out and whether their conversations went with them, so you can see who took a copy and how much of one.
When do you need to export?
Before a clock you do not control runs out. There are three, plus one switch that works like a fourth.
| What happens | What it does to conversations | Export before |
|---|---|---|
| A conversation reaches your window | Its readable copy is deleted: 90 days on Free, 730 on paid plans | The window ends |
| A paid plan ends and the server returns to Free | Every stored conversation older than 90 days expires at the next nightly cleanup | The plan ends |
| The bot is removed from the server | Everything tied to the server is deleted after 48 hours | You remove it |
| Transcripts are switched off | Tickets closed from then on have no conversation at all | You flip the switch |
The second row is the one nobody expects. A transcript's lifespan is not stamped on it when the ticket closes and then left alone. It follows the plan the server is on today, so a shorter window reaches back into what you already have. A server that spent a year on a paid plan and then lets it lapse keeps its last 90 days of conversations, and loses the nine months before that at the next nightly cleanup.
The reverse is not symmetrical, and that is the part worth remembering. Moving up to a paid plan extends every conversation that still exists to the longer window. It cannot bring back one that was already deleted, and neither can a message to support. If a plan is ending, the export goes first. How ticket transcripts work covers who can read them and how to switch them off.
The third row has a trap of its own. The dashboard exports through the bot, so once the bot has left the server there is nothing to export through. If you removed it and wanted the history, add it back within 48 hours: the server's data is kept until then precisely so an accidental removal can be undone. Export, then remove it again. If you are leaving for good, how to switch ticket bots covers the order to do the rest in.
How do you export tickets from the dashboard?
Open your ticket list
In the dashboard, pick your server and open Tickets. If you only want some, narrow it first with the filters for status, priority, panel or category
Press Export
Tick the rows you want, or a whole page at once. The selection holds as you move between pages, up to 1,000 tickets
Choose what goes in
Just the details, or With the conversations. The second is greyed out when more than 100 are selected, and says why
Pick a format and download
The file goes straight to your device. Nothing is emailed and nothing waits in a queue
The selection stays on screen after the download, and it is worth using. Take the details of everything first, since that is cheap, then untick down to the tickets whose conversations you actually need and export again with them included.
Two limits you might meet on a busy server: ten exports a minute, and a cap on the total size of the conversations in one archive, which only a long run of very long tickets reaches. Both answer with a plain message saying what to do next, never with a file that stops halfway.
What is inside the file?
The details export is one row per ticket, holding what you would otherwise look up one ticket at a time: the number, status and priority, whether it came from Discord, your website chat or another bot you connected, who opened it, the panel, category and channel name, when it opened and when its first and last messages arrived, who claimed and closed it and when, the close reason, how many replies the AI wrote and whether it handed over to staff, and whether a transcript still exists, with its link.
The conversations export is a ZIP holding three kinds of file.
What the ZIP holds
- A summary
- The same rows as the details export, one per ticket
- One file per ticket
- Its row, the form answers given when it opened, and every message with its author and time
- A short note
- Which tickets arrived without their conversation, and why
The bot's own posts are written out as readable text. In Discord they are boxed messages rather than plain text, and a file that printed only plain text would make a ticket nobody answered look empty.
The note exists because a missing conversation should never look like a bug. There are exactly three reasons one can be missing, and the note names the reason for each ticket:
- Still open. A transcript is written when a ticket closes, so an open ticket exports as a row only.
- Transcripts were off when it closed, so none was ever made.
- Past its window. The text was deleted when retention ran out. The row survives, which is why the details export still reaches it.
How do you open the spreadsheet without breaking the IDs?
Every person in the file is identified by their Discord ID, a number 17 to 19 digits long. Spreadsheet apps store numbers with about 15 digits of precision, so when one opens the file and meets a long number, it quietly changes the last few digits. The result is easy to mistake for a real ID. It is somebody else's, or nobody's.
Ticket numbers, counts and dates are unaffected. It is only the IDs, which happen to be the columns you would use to find a person in Discord afterwards.
Can a member keep their own copy?
Yes, and without asking you. When transcripts are on, the message a member gets as their ticket closes links to its transcript, and the transcript page has a Download button with three choices: a web page styled like the transcript that opens in any browser, a data file, or plain text. The same button is there for you, and for staff whose role can read transcripts.
Signing in with Discord is what unlocks it, not being in your server. A member who has since left can still open and download their own tickets for as long as the transcript exists, which ticket history for members covers. What they cannot do is outlast your window: once the conversation is deleted on our side, their link says so.
One thing looks similar and is not. The Export my data button on a member's account page is about the person, everything the site holds about them, rather than about your server's tickets.
What an export cannot give you
Read this part before you rely on an export as your archive.
- The files people uploaded. The archive holds each file's name, its size and the link Discord gave it. The file itself stays on Discord rather than with us, and that link carries an expiry stamp you can see in the address. If an image is evidence, save it while the ticket is open. Screenshots in tickets covers the rest.
- Ratings. Star ratings and notes are read on the feedback page or with
/ticket feedbacks, and have no download. How ticket feedback works explains what they hold. - What the AI has learned. That lives in the AI's memory, which you can browse in the dashboard, and it is not part of any ticket export.
- The audit log. It has its own spreadsheet download, of the events loaded on the page, and it keeps one year.
- Conversations from another bot's tickets. If you connected our AI to a different ticket bot, those tickets export as rows. Their conversations were never ours to store.
- A running copy. An export is a snapshot you take by pressing a button, and nothing exports on a schedule. If you want tickets to arrive somewhere on their own, outgoing webhooks post to an address you choose as tickets open, are claimed, move and close, on paid plans. They carry a ticket's details and, at close, its transcript link, never the conversation itself.
- Anything already deleted. Not by upgrading, and not by asking us.
None of this makes the export less worth taking. It makes it worth taking early: the details of every ticket are cheap and always there, and the conversations are the half with a deadline.
Sources and further reading
Keep reading
Frequently asked questions
Yes. On AI Ticket Bot the Tickets page of the dashboard has an Export button: pick up to 1,000 tickets and download one row each as a spreadsheet, a data file or plain text. It needs Manage Server and it is free on every plan. The spreadsheet holds the details of each ticket, not the conversation, which comes in a separate export.
Only if you choose With the conversations, which exports up to 100 tickets at a time as a ZIP with one file per ticket, as a data file or plain text. A conversation is included only when the ticket is closed, transcripts were on when it closed, and it is still inside your retention window. A note in the ZIP names every ticket that came without one, and why.
The server goes back to Free, and the Free window of 90 days applies to the transcripts you already have, not only to new ones. Anything older than 90 days is deleted at the next nightly cleanup, and upgrading again later does not bring it back. If a plan is ending, export the conversations you want to keep before it does.
Not while it is gone, because the dashboard exports through the bot. Everything tied to the server is deleted 48 hours after the bot is removed, and until then it is all still there. Add the bot back inside that window, export what you need, then remove it again.
Because the spreadsheet app changed them. A Discord ID is 17 to 19 digits long and spreadsheet apps keep about 15 digits of a number, so opening the file directly rounds the last few digits into a different ID that still looks real. Import the file instead and set the ID columns to text before it loads, or use the data file version, which writes every ID as text.
Yes. The transcript page that the close message links to has a Download button offering a web page, a data file or plain text. The member signs in with Discord to use it, and it keeps working after they leave your server, for as long as the transcript exists under your retention window.
It’s not just an AI, it’s your AI.
See it on your own server.
Add the bot free, teach it a few of your most common answers, and watch it clear the repeat tickets on its own.
Free plan, no card. Your first panel starts 14 days of Premium.
Keep reading.
All articlesDiscord Ticket Bot Downtime: What Happens to Open Tickets
An outage costs you the minutes, not the tickets. What keeps working while a Discord ticket bot is offline, what catches up when it returns, what is gone.
9 min read
How to Turn the AI Off in a Discord Ticket Bot: Three Switches
The AI's state belongs to the ticket and is fixed the moment it opens. Where each switch lives, which one wins, and what turning it back on does not restore.
9 min read
Discord Ticket Bots on Mobile: What Changes on a Phone
A Discord ticket bot needs no mobile app, because every control it uses is a Discord message. What changes on a phone is distance and notifications.
9 min read