Does ChatGPT Export Preserve Images, Tables, Code & LaTeX?

April 18, 2026·6 min read

See exactly which formats preserve which elements - choose the right export for your content.

Add to Chrome, Free
It depends on the format. PDF and HTML preserve the most - images, tables, code blocks with syntax highlighting, and math equations. Markdown preserves tables and code structure. TXT and CSV strip visual formatting entirely. The right format depends on what your conversation contains and where the export needs to work.

Full format comparison table

The table below shows how each of ChatCache's eight export formats handles every major content element. Yes = fully preserved with structure/rendering intact. Partial = content present but formatting reduced. No = element is absent or unreadable.

ElementPDFDOCXMarkdownHTMLTXTJSONCSVPNG
Images (DALL·E / uploaded)YesYesPartialYesNoPartialNoYes
TablesYesYesYesYesPartialPartialPartialYes
Code blocks (fenced + language)YesYesYesYesPartialPartialPartialYes
LaTeX math (rendered)YesPartialPartialPartialNoNoNoYes
Nested listsYesYesYesYesPartialPartialNoYes
Links (clickable)YesYesYesYesURL text onlyURL text onlyURL text onlyNo

Notes on "Partial" cells: Markdown images are exported as image references (![alt](url)) - the link is present but the image only renders if the URL is accessible. JSON contains image URLs as string values - the data is there for programmatic use but not displayed. TXT tables are plain text with spacing that may not align. DOCX and Markdown math preserve LaTeX source, which renders in compatible editors (Obsidian, Typora) but shows as raw text elsewhere.

Format-by-format: images

FormatDALL·E imagesUploaded images
PDF✓ inline✓ inline
HTML✓ embedded✓ embedded
PNG✓ rendered in image✓ rendered in image
MarkdownReference onlyReference only
TXT
JSONURL/referenceURL/reference
CSV

Format-by-format: tables

FormatTable output
PDFRendered table with rows and columns
HTMLProper HTML table elements
MarkdownPipe table syntax (GFM)
PNGVisual rendering of the table
TXTPlain text - spacing may not align
JSONRaw text content, no table structure
CSVRaw text content, no table structure

Format-by-format: code blocks

For a focused guide on getting code blocks out cleanly in Markdown, see exporting ChatGPT code blocks to Markdown.

FormatCode block output
PDFFormatted block with syntax highlighting
HTMLStyled block with language label
MarkdownFenced block with language identifier
PNGVisual rendering with highlighting
TXTPlain text - code present, no formatting
JSONRaw string - code present, no fencing
CSVRaw string - code present, no fencing

Format-by-format: LaTeX math

For a step-by-step guide to preserving math formulas in a clean PDF, see saving ChatGPT math formulas to PDF.

FormatMath output
PDFTypeset notation (rendered equations)
HTMLRendered (browser-dependent)
PNGVisual rendering - typeset in image
MarkdownLaTeX source preserved (renders in Obsidian, Typora)
TXTRaw LaTeX source only
JSONRaw LaTeX source only
CSVRaw LaTeX source only

Choose the right format for your content. PDF for images and math, Markdown for code and developer tools.

Add to Chrome, Free

Why TXT loses all formatting

Plain text is a byte stream of characters. There is no markup layer, no bold, no tables, no code fences, no math rendering - by definition. A TXT export from ChatCache contains all the words from the conversation, but everything structural is flattened:

TXT is the right choice when you need the raw content and nothing else - for piping into a script, feeding into another tool, or searching with grep. It is the smallest and simplest output format. For anything that needs to be read by a human with formatting intact, use a different format.

Why JSON is lossless for structure

JSON export preserves the conversation's complete underlying data structure. Each message is serialized as an object with at minimum a role field ("user" or "assistant") and a content field containing the full message text. Nothing is discarded:

JSON is not human-readable in the way a PDF or Markdown file is, but it is the only format where no information is lost. This makes it the best choice for programmatic use: feeding into an analysis script, importing into a database, or building a searchable archive of conversations where you may want to extract specific fields later.

Quick format recommendations by content type

If your goal is saving a conversation without any formatting loss, see the dedicated guide on saving ChatGPT conversations without losing formatting.

Frequently asked questions

Does exporting ChatGPT to PDF preserve images?

Yes. PDF export includes DALL·E generated images and images you uploaded to the conversation. They appear inline in the PDF document.

Does Markdown export preserve tables?

Yes. ChatCache exports tables as standard Markdown pipe table syntax, which renders correctly in GitHub, Obsidian, Typora, and other Markdown editors that support GFM tables.

Which format best preserves LaTeX math?

PDF is the best choice for typeset math - it renders equations as visual notation, not raw source. Markdown preserves the LaTeX source code for use in editors that support math rendering like Obsidian.

Does HTML export preserve DALL·E images?

Yes. HTML export embeds images inline in the file. The resulting .html file is self-contained - images are included, not linked externally.

What does TXT export do with code blocks?

TXT export preserves the raw text of code but loses fenced block formatting and syntax highlighting. The code content is present but rendered as plain text without language markers.

Why does TXT export lose all formatting?

Plain text by definition has no formatting layer. TXT is a byte stream of characters with no structure markup - no bold, no tables, no code fences, no math rendering. Bullet points may appear as hyphens and bold text as plain text. Use TXT only when you need raw content without any formatting overhead.

Why is JSON the most lossless export format for structure?

JSON export preserves the conversation's underlying data structure - each message as an object with role (user or assistant), content, and metadata. No information is discarded. Code blocks are present as strings, LaTeX as LaTeX source, table content as text. JSON is not human-readable in the way PDF is, but it is lossless for programmatic processing or archiving.

Export ChatGPT with the right format for your content

Install ChatCache free and export your ChatGPT conversations in any of 7 formats - with full formatting fidelity for the right use case.