By PDFKits Team — Published July 2, 2026
A Jupyter Notebook (.ipynb) mixes code, output, and Markdown, so to convert ipynb to pdf you want a method that preserves all three. Below are four ways, from the official nbconvert command to a zero-install browser fallback for the exported result.
pip install nbconvert (plus a LaTeX engine for PDF).jupyter nbconvert --to pdf notebook.ipynb.--to webpdf instead, which renders via a headless browser.Open the notebook in Colab, then choose File → Print → Save as PDF. This needs no local install and is the fastest way to convert .ipynb to pdf when you're already in the cloud.
With the Jupyter extension, open the .ipynb, click the … menu, and select Export → PDF. VS Code handles the conversion using nbconvert under the hood.
If you only need the rendered notebook as a document, export it to HTML first (--to html), print that page to a PDF, then tidy or shrink it with the PDFKits compress PDF tool and combine chapters using merge PDF — all in your browser.
| Method | Install | Keeps code + output | Best for |
|---|---|---|---|
| nbconvert --to pdf | pip + LaTeX | Yes | Publication-quality PDFs |
| Google Colab print | None | Yes | Cloud notebooks, quick export |
| VS Code export | Jupyter ext. | Yes | Local dev workflow |
| HTML + PDFKits | None | Yes (rendered) | No-LaTeX machines |
The --to pdf path depends on LaTeX, which is the most common failure point; --to webpdf or Colab avoids it. Very wide code cells or large plots can overflow the page — adjust cell width or figure size before exporting rather than expecting the converter to reflow them.
Use nbconvert --to webpdf, or print from Google Colab/VS Code, then refine with the compress PDF tool.
Re-run all cells so outputs are stored in the notebook before converting.
Yes — the free merge PDF tool joins them in your browser.
Use nbconvert or Colab to render, then finish privately with the compress and merge tools — no uploads, no account.