Slack Export: What It Contains on Each Plan
A Slack export finishes faster than anyone expects. Four years of workspace, eleven people, and the ZIP that lands in your downloads folder is smaller than the single screen recording somebody dropped into #general last spring.
That is not clever compression. It is the export doing precisely what Slack documents it to do. Slack's page on reading data exports says it without any hedging: "Slack export files in JSON format do not contain any files from the workspace. They include a series of file links." You have the conversation. You have a list of addresses where the attachments used to live.
Which means the question people actually arrive with — can we keep our history before we cancel — is really three separate questions with three different answers, and all three change by plan tier: which conversations you are permitted to export at all, whether the attachments travel with them, and how far back the history reaches before your own retention setting already removed it.
Tier by tier, in Slack's words rather than the pricing page's
Slack splits this across two help pages that need to be read together. The export page lists what each plan can do; the import and export guide describes which tool does it. The distinction matters, because "Business+ can export DMs" is true only after an application that Slack may not approve.
| Plan | Who runs it | What the standard export reaches | Files |
|---|---|---|---|
| Free | Workspace Owners and Admins | Public channels, and Slack adds that "Data more than a year old will not be included" | Links only, and Free workspaces "can only export links to files from the last 90 days" |
| Pro | Workspace Owners and Admins | Public channels | Links only |
| Business+ | Owners and Admins for public channels; Workspace Owners apply for the rest | Public channels; public channels, private channels and DMs once approved for the self-serve export tool | Links only |
| Enterprise | Org Owners, after requesting access | By conversation type, by member, or for a specific workspace, including every conversation a single user is part of | Links only, with two documented exceptions: a single user's export in TXT format contains the files, and the Discovery API returns direct download links |
Read the first two rows again. On Free and Pro there is no expanded export sitting behind a checkbox. Slack's import and export guide says Workspace Owners and Admins can "export data from public channels" and that "Data exports will include links to files, but not the files themselves." Beyond that an owner has to contact Slack and apply, and Slack states the terms without softening them: "We will reject applications unless Workspace Owners show in each instance (a) valid legal process, or (b) consent of members, or (c) a requirement or right under applicable laws in order to export data."
Consent of members is the row most small teams overlook. It is a real route, not a formality, and it is the one that involves asking eleven colleagues to agree in writing that their DMs are going into a ZIP file you will keep. Whatever you think of that as a conversation, it is not a fifteen minute task on the afternoon before renewal.
Pro carries a sentence Free does not, and it matters to anyone who upgraded specifically to escape the 90-day window. Slack says the data in a Pro expanded export "is contingent on the date the workspace was upgraded from the Free version of Slack and will not include data older than one year that was deleted prior to upgrading." Upgrading gets back what was hidden. It does not get back what the one-year rule had already deleted.
On Business+, Slack describes the expanded capability as one Workspace Owners "can also apply to access" — a self-serve data export tool covering "all channels and conversations, including private channels and direct messages, as needed and permitted by law." Approval also unlocks exports scheduled weekly or monthly, and a CSV channel audit report. Enterprise moves the same power up to Org Owners with finer targeting, including every conversation a single named user is part of.
One caveat runs through the Pro, Business+ and Enterprise sections alike, and it catches anyone using Slack Connect: links to files in private shared channels or DMs between organisation members "will only be included if they were shared by a member of your workspace." The external side of a shared channel belongs to the other company's export, not yours. Slack applies the same split to retention, saying your settings govern only the messages and files your own members sent, with the other organisation's settings deciding the rest.
Two mechanics of actually running the thing, from that same export page. The route is Admin in the sidebar, then Workspace settings, then Security, then Import & export data, and the result arrives by email rather than in your browser — "We'll send you an email once your export file is ready" — with a Ready for download button waiting on the workspace's export page. There is also an Export date range drop-down, which deserves more attention than it gets, because the range you pick is the range you get; Business+ owners can additionally schedule recurring exports weekly or monthly (Slack help centre, checked 18 August 2026).
Inside the ZIP, and why it does not look like Slack
Open the archive and there is no interface, no threads, no avatars. Slack describes the layout plainly: "each channel or direct message will have its own folder. Each folder will contain messages from the conversation, organized by date in separate JSON files." Alongside those folders sit the reference files — channels.json for public channels, groups.json for private channels, dms.json for direct messages — which Slack says "contain the user and channel IDs." A full export adds mpims.json for group DMs, both export types carry users.json and integration_logs.json, and on an Enterprise org Slack notes that users.json is titled org_users.json instead.
Those reference files are the whole point, and they are the part people delete when tidying up the
folder. Inside a message object, the sender is a user field holding an ID like U02AB3CD4EF.
Not a name. Not an email. Slack's own worked instructions for finding a conversation begin by
opening users.json and noting the IDs. Throw that file away and you have four years of talk in
which nobody is identifiable, and the only lookup table you were handed is sitting in a workspace
you are about to close.
Three more things to check while the archive is fresh:
File links live in a files: section, not in attachments. Slack says the link appears "in the
message details where it was shared, in the files: section," and instructs you to "copy the file
links from the JSON file and paste them into your browser." Some messages also carry an
attachments value, which Slack describes as a list of objects attached to the message — related,
and not the field you should be grepping for.
Threads may not survive as threads. The export documentation names no field that rebuilds them, and under its TXT section Slack says flatly that the export "will not differentiate between messages in a thread and messages sent to a channel. All messages in a thread will appear in the flow of the conversation." Assume a busy channel arrives as one chronological stream with several unrelated exchanges interleaved, and test whatever you read the export with against a channel you remember before trusting it on one you do not.
Canvases come out as a list of URLs. Slack's export contents table includes "A URL for every
canvas (canvases.json)" in both export types, with the footnote that a public-channels-only export
holds only canvases shared in public channels. You open canvases.json, find the
url_private_download value and paste it into a browser to download the canvas as HTML. Comments on
a canvas arrive in their own folders keyed by canvas ID, and version history downloads only if the
workspace is approved for data exports for all conversations — otherwise the retention page says
only the most recent version is included.
Then there is the sentence that decides how much any of this is worth in six months, from the same page: "If you delete a file, or the channel or workspace it was shared in, the file will no longer be accessible via the file link in your export." That is not an inference about what might happen after cancellation. It is Slack stating that the links hold only while the thing they point at still exists. Same failure mode as the attachment problem in the 30-day switch runbook: the export verifies fine while the subscription is live, then hollows out the moment the workspace closes.
So the practical test is unglamorous. Pull ten file links out of the JSON — the oldest, the largest, one from a channel nobody has opened in two years — and fetch each one to local storage before you touch billing. If ten resolve, write a script for the rest. If they do not, you have learned that now rather than in March.
Discovery API is a different product wearing the same word
On Enterprise plans there is a second mechanism, and confusing it with the export button leads teams to buy a tier expecting something the tier alone does not give them.
Slack's guide to the Discovery APIs states that "On Enterprise plans, Org Owners can export data using Slack's Discovery API," enabled at the request of the Primary Org Owner or an Org Owner. Slack describes the coverage as messages, files, canvases, lists, emoji reactions and conversations with Slackbot, amounting to "a full history of communications in Slack (including edits and deletions)." And the sentence that separates it from everything above, from the import and export guide: "Exports through the Discovery APIs will include files, which are accessible through direct download links."
Files. Not links to files with a shrug attached.
Slack qualifies the reach in the same passage, and the qualification is easy to read past. The API "can collect data that Slack has stored from the beginning of your organization's history, as well as content that has been edited and deleted (if preserved by retention policies or legal holds)." The parenthesis carries the sentence. Discovery reads what retention left behind, not what it removed.
There are two structural conditions, though. The API is consumed by approved third-party applications rather than by you directly, which means the real deliverable is a contract with an eDiscovery or DLP vendor and the archive format that vendor produces. And Slack draws a line between the two categories: eDiscovery apps have read-only access and archive content externally, while DLP apps hold read and write access inside Slack and can quarantine or remove messages and files. That difference deserves a moment of attention if you are enabling one during a cancellation, because a tool authorised to remove content is not what you want pointed at an archive you are trying to preserve.
Discovery is also organisation-level. It does not exist on Free, Pro or Business+, and no amount of applying will produce it there.
Your retention policy already decided the ceiling
Everything above concerns what the export mechanism can reach. Almost none of it reaches a message that is no longer in the workspace, and the setting that removes messages is one somebody on your team configured years ago and has not thought about since.
Slack's retention documentation says that on paid plans "data is kept for the lifetime of your workspace by default" and that settings can be adjusted "to automatically delete data after a set amount of time," with a blunt warning attached: "Data deleted according to your retention setting is permanent. Adjust these settings with care." On the free plan, Slack says you can choose to retain data for 90 days or one year.
"Almost none" rather than none, because there is one documented seam and it is plan-gated. Slack notes that "On the Business+ plan, you can choose to delete messages from channels, but keep them accessible in exports if your workspace has been approved to export data from all conversations." It is the same approval as the expanded export tool, and an equivalent note sits under the org-level policy for Enterprise. Without that approval the seam does not exist for you, and deleted means deleted.
One further line on that page closes off a workaround people reach for: "Retention does not apply to messages in deleted channels. If you delete a channel, messages and revisions will be permanently deleted, regardless of your workspace retention settings." Archiving a channel and deleting one are not neighbouring actions, however similar the menu makes them look.
The Free plan has a second, separate clock. Slack's page on free version limitations states you are "limited to the most recent 90 days of message and file history" and that "all data in your workspace that's more than one year old will be deleted," a rolling policy Slack dates from 26 August 2024. Between those two lines, older content is hidden rather than destroyed — Slack says that on upgrading, "your messages and files beyond the 90-day limit will be revealed."
Sit with that for a second, because it is the one genuinely useful lever on this page. A Free workspace holding fourteen months of history has content it cannot see and cannot export. One month of a paid tier makes the window between 90 days and one year visible and exportable. Anything past the one-year line is a different matter, and the Pro sentence quoted earlier says so directly: an expanded export will not include data older than one year that was deleted before the upgrade.
Slack also points at the number rather than leaving you to estimate it. Its guidance is to "review your workspace analytics before you downgrade for an overview of how many messages and files will be hidden by the 90-day limit, and how much data will be permanently deleted after a year on the free version of Slack." If a downgrade is your plan instead of a clean cancellation, that screen is the only place the loss is quantified before it happens.
Check the retention setting first, before scheduling anything. If it has been quietly deleting messages at 90 days, the export you are planning is an export of one quarter, and no plan upgrade recovers what a retention policy already removed.
While you are on that screen, read past the workspace default, because it is not the only setting in play. Slack puts the controls under Admin, then Workspace settings, then Expand beside Data retention, and documents two routes around the default: a "Let workspace members override these settings" checkbox, which allows members on paid plans to set their own retention on private channels and their own DMs, and admin overrides on Business+ and Enterprise for channels with channel management tools (Slack help centre, checked 18 August 2026). So "what is our retention policy" can have several true answers at once, and the conversation you most want out of the workspace is exactly the sort somebody may have put a shorter clock on.
Two questions Slack's pages do not answer
Everything above traces back to a sentence on one of Slack's own pages. These two do not, because I could not find them stated anywhere in the six pages linked at the foot of this article:
How long the export download stays available. Slack's export page describes an email arriving when the file is ready and a "Ready for download" button on the workspace export page, but names no number of days. Third-party guides quote seven and ten, which is exactly the kind of disagreement that means nobody is reading the source. Treat the download as perishable and move it to storage you control the day it lands.
Whether lists and huddle transcripts appear in a standard export. Canvases do — they sit in Slack's export contents table as canvases.json, and the section above covers how to open them. Lists are a different case: Slack names them in the Discovery API scope and gives them their own retention setting, yet they are absent from the export contents table. Huddles are not mentioned on any of the export pages at all. Run a small export and look, rather than assuming either way.
What to do first, and what cannot be left until last
Compress all of it into a sequence, since the sequence is the only part that is time-sensitive:
- Read the retention setting. It sets the ceiling on everything below and takes two minutes. If a downgrade is in the plan rather than a cancellation, read the workspace analytics screen alongside it.
- Identify your tier and what it reaches from the table above, not from what somebody remembers being able to do at a previous employer.
- If private channels or DMs are in scope, apply now. Application is the longest pole. On Business+ and Enterprise it is a request Slack reviews; on Free and Pro it means legal process or member consent, and consent means a conversation with every member.
- Run the export and open the ZIP, not the app. Confirm the reference files are present, pick your ten file links, fetch them to your own storage.
- Only then touch billing, and in the order set out in the 30-day switch runbook — recurring billing off before cancellation, cancellation well after cutover, admin access removed last.
The step people skip is four, and it is skipped because the ZIP downloading successfully feels like completion. It is not. It is a receipt for a set of pointers, and Slack has written down in plain language what becomes of those pointers when the workspace they point at is gone.
When you do open the ZIP, count folders before you count messages. Slack states that "a folder will only be included in the export file if there are messages present for the date range you've exported", so a channel you went looking for can be absent without anything having gone wrong — the export simply had nothing to write for it inside that window (Slack help centre, checked 18 August 2026). A missing folder and a truncated export look identical from a file listing, and only one of the two is cured by widening the date range.
Verified against Slack documentation on 17 August 2026, with the export, retention and read-the-export pages re-read on 18 August 2026. Every sentence in quotation marks above came off one of six pages, and it is worth knowing which, because the tier a claim was written for travels with it: Export your workspace data for the options-by-plan table and the Free 90-day file link note; Guide to Slack import and export tools for the application terms, the Pro upgrade contingency and the Discovery file sentence; How to read Slack data exports for the ZIP layout, the file links and the canvases; A guide to Slack's Discovery APIs for its scope and the eDiscovery/DLP split; Customize message and file retention policies for the defaults, the deleted-channel rule and the Business+ export seam; and Feature limitations on the free version of Slack for the two clocks and the downgrade analytics.
Open the row that applies to your workspace rather than trusting the summary here — Slack revises these pages without a changelog, so this one will be wrong on some date I cannot predict, which is what the date above is for. Corrections go through the contact page; a corrected claim gets re-checked against the source and the verification date moves with it.
Frequently asked questions
Does a Slack export include the files people shared?
Not in JSON. Slack's page on reading data exports states that export files in JSON format do not contain any files from the workspace, only a series of file links, and that you open a file by copying the link out of the JSON and pasting it into a browser. Slack documents two exceptions, both on Enterprise plans: exports through the Discovery APIs will include files accessible through direct download links, and an export of a single user's conversations will contain files if it is run in TXT format. On Free, Pro and Business+ the export is a message archive with pointers attached.
Can I export private channels and DMs on the Pro plan?
Not with the standard export tool. Slack's import and export guide says Workspace Owners and Admins can export data from public channels, and that a Pro owner who needs private channels or DMs has to contact Slack and apply. Slack states it will reject applications unless the owner shows valid legal process, or consent of members, or a requirement or right under applicable laws. That is a queue with a human at the end of it rather than a toggle in admin settings, so it belongs at the start of a cancellation timeline instead of the end.
How far back does a Free plan export go?
Slack's page on free version limitations says you are limited to the most recent 90 days of message and file history, and that all data in a workspace more than one year old will be deleted, a rolling policy Slack dates from 26 August 2024. The export page adds that Free workspaces can only export links to files from the last 90 days, and the import and export guide says data more than a year old will not be included at all. Content between the 90-day and one-year lines is hidden rather than deleted, and Slack says upgrading reveals it.
Will my retention policy affect what the export can contain?
Yes, and it decides the answer before the export runs. Slack's retention documentation says data deleted according to your retention setting is permanent, and that paid plans keep data for the lifetime of the workspace by default unless a custom timeline is set. There is one plan-gated exception worth knowing: on Business+, Slack says you can choose to delete messages from channels but keep them accessible in exports, if your workspace has been approved to export data from all conversations. Without that approval, what retention removed is missing from the export too.