Clear Jupyter Notebook Output Online (.ipynb Cleaner)
Strip saved outputs and execution counts from a Jupyter .ipynb — clean notebooks for git and smaller files, in your browser.
Why use this tool?
Use the Output Cleaner to strip saved outputs and execution counts from a notebook before you commit it. You get a clean .ipynb with readable git diffs and a much smaller file — no Python, no nbstripout install, nothing uploaded.
{
"cells": [
{
"cell_type": "code",
"execution_count": 7,
"metadata": { "execution": { "iopub.status.busy": "2026-08-10T10:00:00Z" } },
"outputs": [
{ "name": "stdout", "output_type": "stream", "text": ["rows: 1000\n"] },
{ "output_type": "display_data", "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAA... (48 KB of base64) ..." }, "metadata": {} }
],
"source": ["import pandas as pd\n", "df = pd.read_csv('data.csv')\n", "print('rows:', len(df))\n", "df.plot.bar()"]
}
],
"metadata": { "kernelspec": { "name": "python3" }, "language_info": { "name": "python" } },
"nbformat": 4,
"nbformat_minor": 5
}About Jupyter Notebook Output Cleaner
The Notebook Output Cleaner removes the saved outputs and execution counts from a Jupyter .ipynb file, giving you a clean version that's ideal for version control. Outputs — printed text, tables, and especially embedded images and charts — are stored inside the notebook JSON as large base64 blobs, so committing a notebook with its outputs produces enormous, noisy git diffs and bloats your repository. Clearing them first keeps history readable and files small.
It does the same job as the command-line nbstripout tool, but in your browser with nothing to install. Paste or drop your .ipynb, and it sets every code cell's outputs to empty and its execution_count to null, then hands back a cleaned notebook you can copy or download. Optionally it also removes run-state metadata (cell timing, collapsed/scrolled flags) and interactive widget state, which are the other common sources of noisy diffs.
Crucially, the cleaner never touches your code: markdown cells and the source of every code cell are preserved exactly. It only removes the generated results, which you regenerate simply by re-running the notebook. The output is a valid .ipynb that opens normally in Jupyter, JupyterLab, VS Code, or Colab.
Everything runs locally in your browser — the notebook is parsed and cleaned client-side and never uploaded, so even proprietary or sensitive notebooks stay on your machine. If you want to read a notebook rather than clean it, use the companion Notebook Viewer; to extract the code as a .py script, use the Jupyter-to-Script converter.
Frequently Asked Questions
Explore Other Tools
Python 2 to 3 Converter
Automatically migrate legacy version 2 code to modern version 3 syntax.
Python AST Viewer
Visualize and explore the Abstract Syntax Tree of your scripts.
Python to EXE Online
Turn a Python script into a standalone .exe online — a GitHub Actions workflow builds Windows, macOS & Linux executables on real runners. Free.
cURL to Python Converter
Paste any curl command and instantly get clean Python code for requests, httpx, or aiohttp.