Export Gmail with Google Takeout and convert the .mbox into one PDF per email, with Gmail labels as folders, attachments and an index.csv. Private: runs in your browser.
Gmail can print one conversation at a time, but there is no built-in way to save many emails as PDFs. The bulk route is Google Takeout, which gives you an .mbox file, and then a converter. Your labels come along in an X-Gmail-Labels header that Mailtrail turns into folders.
How to do it
Go to takeout.google.com, click Deselect all, then tick Mail.
Optionally click All Mail data included to pick specific labels; a smaller export arrives faster.
Choose Send download link via email, file type .zip, and a size of 50 GB to keep it in one piece. Create the export; Google emails you when it is ready (minutes to days).
Download and unzip it. Inside is Takeout/Mail/All mail Including Spam and Trash.mbox.
Open the converter in Chrome, Edge, Firefox or Safari. Nothing is installed and nothing is uploaded. Drop the .mbox (you can also drop the Takeout .zip; unzipping first is faster for big exports).
Use the folder filter to pick labels (e.g. only Inbox or a client label), set a date range, then export.
Labels vs. folders
In Gmail one email can have several labels. In the export each email appears once, filed under its most specific user label (or Inbox / Sent / Archive), and index.csv lists each email once. Chats and spam/trash are listed in their own folders so you can exclude them.
Good to know
Takeout .tgz exports must be extracted first; use .zip when you create the export.
Big mailboxes: the Takeout mbox can be 20 GB+. It is streamed, but use Chrome or Edge with “Save straight to disk” so the output ZIP isn't held in memory.
Images that were linked from the web (newsletters) are not downloaded; images embedded in the email are included.
What you get
One PDF per email with a header block (subject, from, to, cc, date, folder, attachment list) and the body, including embedded images. Searchable text, not screenshots.
Your folder structure mirrored in the ZIP, and file names that sort by date: Inbox/2024-03-05_0912 Jane Doe - Invoice March.pdf.
Attachments as original files under attachments/.
index.csv (date, from, to, cc, subject, folder, file names, attachment count, Message-ID, pages) and errors.csv for anything that couldn't be converted.
Optional: one merged PDF, .eml per email, .mbox per folder. Pro adds Bates numbering, page numbers, SHA-256 hashes and bookmarks.
Private by design
The conversion runs inside your browser tab with Web Workers. Your archive is never uploaded, and there is no server that could see it. You can even disconnect from the internet after the page loads. The only network call is the optional license-key check, which sends the key and a random device ID.
Questions
Can I convert just one Gmail label?
Yes. Either choose that label in Takeout, or load the full export and pick the label in the folder filter.
What does it cost?
Free for up to 25 emails per export. Standard ($29 one-time) removes the limit; Pro ($69 one-time) adds Bates numbering, page numbers, hashes and bookmarked merged PDFs. See pricing.