Import and Export Conversations
Bring your chat history into LibreChat from ChatGPT, Claude, ChatbotUI v1, or another LibreChat instance, and export a conversation as Markdown, text, JSON, CSV, or an image.
You can import conversations exported from ChatGPT, Claude, and ChatbotUI v1, as well as a conversation exported from LibreChat as JSON. Imported chats show up in your history like any other. Export works one conversation at a time.
Get the export file
Request an export from ChatGPT (OpenAI's instructions). You get an email with a link to a zip file. Unzip it and use the conversations.json inside.
Request an export from Claude (Anthropic's instructions). You get an email with a link to the archive. Unzip it and use the conversations.json inside. Claude's thinking blocks are imported along with the text.
Export your conversations from ChatbotUI v1 and use the JSON file it produces as is.
Export the conversation as json (see Export a conversation below). This is how you move a conversation from one LibreChat instance to another.
Import the file
Go to Settings > Data & Privacy, select Import next to "Import conversations from a JSON file", and choose the file. The picker only accepts .json, so unzip ChatGPT and Claude archives first. The button shows "Importing" while it works, and "Conversations imported successfully" appears when it's done.

LibreChat works out the format from the file's contents, not its name. If it doesn't recognize the file, you get "Unsupported import type".
A LibreChat import doesn't bring over the conversation's saved code approval mode (including Full access) or its unread state. The imported chat uses your own current approval preference and the deployment's policy.
Limits
- The file can be up to 250 MiB unless your admin set a different limit. Larger files are rejected before upload.
- A single conversation or message can't be bigger than about 16 MB, which is a database limit.
- Imports are rate-limited per user and per IP, so importing many files in a row can be refused for a while.
Export a conversation
Open the conversation, open the Chat options menu (the ... button in the header, or the header menu on small screens), and select Export. Choose a file name and a type, then select Export.
| Type | What you get |
|---|---|
markdown (.md) | A readable transcript. This is the default. |
text (.txt) | A plain-text transcript. |
json (.json) | The full message data. This is the format LibreChat can import again. |
csv (.csv) | One row per message. |
screenshot (.png) | An image of the conversation as it appears on screen. |
Export all message branches works for json and csv; the other types export only the branch you're viewing. Include endpoint options adds the model and its settings, and isn't available for csv or screenshot. For json you can also choose Recursive (messages nested under their parent) or sequential.
There's no export of all your conversations at once, and a new chat or a search result has nothing to export, so the menu doesn't appear there.
Setup
Import and export work for every user without setup. Admins can change the import size limit with CONVERSATION_IMPORT_MAX_FILE_SIZE_BYTES and the rate limits with the IMPORT_* variables; see the .env reference.
How is this guide?