Markdown, verbatim
Markdown cells pass through as written: headings as # lines, lists as dashes. Legible instantly, even before any conversion to richer formats.
IPYNB to TXT
Drop in an .ipynb file and download a clean .txt file: markdown as written, code marked and indented with In[] prompts, outputs and errors as plain text — opens anywhere, in any editor.
Converted in your browser — the notebook is never uploaded. You can also drop it anywhere on this page.
That file could not be opened
notebook.ipynb
Text preview (first 200 lines)
The file is assembled in this tab from the notebook you chose. Nothing is uploaded, and the download is yours alone — the same file every time for the same notebook.
Convert to HTML instead100% readable anywhere
No renderer, no app, no formatting required.
0 bytes uploaded
Parsing and serialization happen on your device.
In[] prompts kept
The notebook execution order travels with the code.
6 notebook sources
Jupyter, JupyterLab, Colab, VS Code, Kaggle, Deepnote.
What the file keeps
The converter reads the notebook format directly and writes out what it stores — no markup to render, nothing to install to read it.
Markdown cells pass through as written: headings as # lines, lists as dashes. Legible instantly, even before any conversion to richer formats.
Every code cell opens with an In[n] prompt line naming the kernel language, and the code follows indented so its boundaries are never ambiguous.
Stream text, results and errors appear under their cell with an Out[n] label, so reading the file walks the same path the notebook ran.
Tracebacks are preserved with the error name, stripped of ANSI colours — a failed cell remains visible in a plain-text log.
Images and interactive widgets have no text form, so they become a one-line note naming their type instead of vanishing silently.
Paste the .txt into a bug report, attach it to an email, or grep it in CI: plain text is the format every tool already handles.
Compatibility
Notebooks from Jupyter Notebook, JupyterLab, Google Colab, Kaggle, Deepnote and VS Code all convert, including the older nbformat 3 files.
Notebook formats
Cell types
Output types
Known limits
How it works
Drop in an .ipynb file and download a clean .txt file: markdown as written, code marked and indented with In[] prompts, outputs and errors as plain text — opens anywhere, in any editor.
Drop the notebook in
Choose an .ipynb file or drag it onto the page; it is parsed on your device and the text file is assembled immediately.
Check the document
The preview shows the first lines of the .txt — markdown, indented code with prompts, and outputs in order.
Download the .txt file
Save notebook.txt anywhere: paste it into a ticket, attach it to an email, or grep it in a pipeline — every tool reads plain text.
From the browser converter above to the tooling built into Jupyter and the command line — pick the route that fits where you already are.
nbconvert's closest routes are --to script (code only, as Python comments format) and --to markdown (a .md plus an image folder). Neither keeps the whole session as one text file; this page does, in the browser, with no install.
Classic Jupyter Notebook and JupyterLab offer HTML, Markdown and script downloads, but no plain-text session export — which is why this converter exists.
Push an .ipynb and GitHub shows the last saved session — but you cannot grep, diff or attach that view. A committed .txt transcript travels everywhere plain text travels.
Plain text is the only format every tool reads: cat in a terminal, grep in a pipeline, a ticket in a tracker. The TXT export is built for those destinations, not for rendering.
In a hurry? Use the converter at the top.
The browser converter above reads the same notebooks as every route on this page and produces the same clean .txt file — with nothing installed and nothing uploaded.
FAQ
Short answers about converting a Jupyter notebook to plain text — what happens to outputs and images, how nbconvert compares, and why TXT beats printing to PDF for some jobs.
Use the converter at the top of this page: choose or drop in your .ipynb file and the browser writes a plain-text document — markdown as written, code under In[] prompts, outputs attached. Then download the .txt file. No upload, no install, no terminal.
Run jupyter nbconvert --to script notebook.ipynb for code-only output, or --to markdown for a .md file. There is no direct --to txt route in nbconvert; this page fills that gap in the browser, keeping markdown and outputs in one readable file.
PY is for running: only code survives, markdown becomes comments, and the file stays a valid Python script. TXT is for reading: markdown stays markdown, outputs and errors are included, and the file is not meant to be executed — it is a transcript of the session.
Images have no text form, so each one becomes a single placeholder line naming its type — for example "[image output: PNG]". The notebook keeps the original; the text export keeps a marker where each figure sat, so reading never skips a beat.
Yes when the include-outputs behaviour is on, which it is by default: stream text, results, JSON and even flattened HTML tables appear under their cell with an Out[] label, so the file reads top to bottom like the executed session.
Three common reasons: pasting a session into a bug report or ticket where rich formats get mangled, keeping a log of what ran when plain text is all that survives the archive, and reading a notebook on a terminal or over SSH where nothing renders.
Not faithfully — TXT is a read-only transcript, not the structured format the converters here write. If you need round-tripping, use IPYNB to PY (code only, reversible with Jupytext) or IPYNB to Markdown (headings and fences, re-read by many tools).
Printing produces a page-oriented document you cannot grep, diff or index; TXT produces one plain file that every editor, terminal and pipeline understands. For reading the code and outputs, text wins; for sharing something well-formatted, the PDF converter wins.
Yes. The file is read with the browser File API and written inside the tab, so after the page loads you can disconnect the network and the conversion still works — which is also the practical proof nothing was uploaded.
No. The file is read with the browser's File API, parsed as JSON and serialized inside the tab. No server is involved at any step — close the tab and nothing is left behind.
Usually smaller: text outputs carry their characters only, images collapse to one-line placeholders, and notebook metadata is left out. A notebook heavy on figures exports to a few kilobytes of text.
Yes, with no account, no file-size gate and no watermark. The conversion runs on your own device, so there is no per-file cost — same as the site IPYNB to PDF, IPYNB to PY, IPYNB to HTML and IPYNB to Markdown converters.
Drop it in, download the .txt, and send it to anyone — a text editor is the one app every machine already has.
Convert a notebook to TXT