ChatGPT renders LaTeX math beautifully on the page. Then you try to save the conversation and the math turns into raw $$ \int_0^\infty e^{-x^2} dx $$ source. Or worse — Unicode soup that prints sideways.
Why this happens, and how to fix it for every export format.
Why LaTeX breaks during export
ChatGPT’s web client renders LaTeX with KaTeX — the math is a <span> containing typeset SVG/HTML. The actual LaTeX source is preserved as a data- attribute on the same span.
When you copy the rendered page (or “Print to PDF” in Chrome), the browser captures the visible result — but only what fits in the layout. Long display equations get clipped. Inline \Sigma characters print as random Unicode if your font lacks the glyph. The data attributes — the actual LaTeX — are dropped.
So copy-paste loses the math. Print to PDF mangles it. The fix is to extract the LaTeX source before rendering, then render it explicitly in the export.
Per-format playbook
Use ChatExport AI’s PDF export. It extracts every LaTeX block as raw source, renders it via bundled KaTeX into proper SVG, then composes the PDF. Inline math, display math, matrices, big-O notation, integrals — everything typeset.
Avoid Chrome’s built-in Print to PDF for any conversation containing math. The output is unusable for anything serious.
Word (.docx)
The .docx format has a native equation type (Office Math). ChatExport AI’s Word export emits LaTeX as monospace fenced text by default — Word can convert this to typeset math via the Insert → Equation → LaTeX flow. (Office Math direct emission is on the roadmap.)
If you absolutely need typeset math in the doc immediately, export PDF and embed the PDF page as an image inside the .docx.
Markdown
Easy — just preserve the delimiters. $inline$ and $$display$$ are the standard CommonMark math conventions. ChatExport AI’s Markdown export keeps them byte-for-byte.
The exported .md works in:
- Obsidian — native math support since v0.10.
- MkDocs Material — with the
pymdownx.arithmatexextension. - VitePress — via the
markdown-it-mathjax3plugin. - Quartz — built-in.
- GitHub gists — yes, GitHub renders
$..$math in gists since 2022.
HTML (offline)
This is the format that survives. ChatExport AI’s HTML export bundles KaTeX inside the file, so the math renders even with no internet connection. The result is a single self-contained .html you can email, drop on a USB stick, or archive for a decade.
JSON
For pipelines: ChatExport AI’s JSON export keeps the LaTeX source as a separate field per turn (content_latex) alongside the rendered fallback. RAG systems and fine-tune datasets get clean LaTeX strings to work with.
Common pitfalls
Pitfall 1: “It looks fine in the chat but breaks when I export.” — That’s the kicker. The chat shows you the rendered output; the export captures the source. If the export tool doesn’t re-render, you get raw $$.
Pitfall 2: “I copied the math from the chat to Word and it’s all wrong.” — Word doesn’t render LaTeX. Export to a tool that does.
Pitfall 3: “Why are my Greek letters showing as boxes?” — Your viewer’s font lacks the glyph. KaTeX in HTML / PDF avoids this by rendering math as proper paths, not characters.
When the math is too long to even render
Some matrices and proofs run wider than a printed page. ChatExport AI’s PDF export auto-shrinks display math to fit page width. If a matrix is genuinely wider than that, it switches to landscape page orientation for that block.
For Markdown, you’ll have to break the matrix manually — there’s no portable way to express “scroll wider than page” in a static document.
Try it
Install ChatExport AI free and the next ChatGPT conversation full of math you save will be typeset properly. Free tier covers 5 exports per day.
Related
- ChatGPT to PDF guide
- How to export ChatGPT to Markdown
- For students — math-heavy study notes.
- For researchers — LaTeX-heavy research archives.