PDF Bookmarks for Faster Document Navigation
How to add, export or remove bookmarks in a PDF
List, replace or remove the bookmarks used to navigate a PDF. Export the existing outline as JSON to inspect it, or supply bookmark data to update the document. Check bookmark labels, nesting and page destinations in a PDF reader after processing. Bookmarks help navigation; they do not change the visible headings printed on the pages.
Cost: Free to use. File size and usage limits apply.
How to edit PDF bookmarks
Add one PDF
Click Choose PDF or drop a PDF of up to 200 MB on the preview. You can also pick a file from Uploads, including results from other PDF tools.
Choose the action
Action starts on Export bookmarks. Switch to Import bookmarks to write a new outline, or to Remove bookmarks to delete it.
Paste the outline (Import only)
Paste your bookmark list into Bookmarks JSON. If the PDF already has bookmarks, tick Replace existing bookmarks. The format is explained below.
Run and download
Click Apply bookmarks action, then Download result. Export gives you a
.jsonfile. Import and Remove give you a new PDF, which appears in the preview. Every result is also saved in the shared file manager.Check the outline in a PDF reader
Bookmarks appear in the reader's bookmarks or outline sidebar, not on the pages. Open the downloaded PDF there and click through a few entries to confirm titles, nesting and target pages.
Settings
Bookmarks JSON and Replace existing bookmarks appear only when Import bookmarks is selected.
- Action: Export bookmarks
- Saves the current outline as a JSON file with every title, target page and level. The PDF itself is not changed. Use it as a backup or as the starting point for edits.
- Action: Import bookmarks
- Writes the outline from Bookmarks JSON into a copy of the PDF. Pages, text and images stay as they are.
- Action: Remove bookmarks
- Deletes the whole outline in one step. To drop only some entries, export, delete them from the JSON and import the rest with Replace existing bookmarks ticked.
- Bookmarks JSON
- Starts empty. Paste the full JSON object, including its
bookmarkskey. The syntax is checked before the job starts, so a missing comma, bracket or quote is reported right away. Page numbers and nesting are checked when the job runs. - Replace existing bookmarks
- Off by default. Leave it off to add an outline to a PDF that has none. Tick it when the PDF already has bookmarks; the imported outline then replaces the old one completely. Save an export first if you want to keep a copy of the previous outline.
The bookmarks JSON format
The easiest start is a file made with Export bookmarks: it already has the right structure and can be imported unchanged. A minimal outline with one chapter and one sub-entry looks like this: {"bookmarks": [{"title": "1 Introduction", "page": 1, "kids": [{"title": "1.1 Scope", "page": 2}]}]}
- bookmarks
- Required. The top-level object holds the list of entries under this key, and each entry becomes one line in the sidebar. The list needs at least one entry; to delete every bookmark, use Remove bookmarks.
- title
- Give every entry a non-empty title: this is the text shown in the sidebar. Accented letters and other Unicode characters work.
- page
- The target page as a whole number without quotes, counted from the first page of the file (
1), whatever number is printed on it. If a report has four pages of front matter before printed page 1, that page is5here. The value must be between 1 and the page count. - kids
- Optional list of sub-entries with the same fields. Put another
kidslist inside a child entry to create further levels. A sub-entry cannot point to an earlier page than its parent. - Order of entries
- Entries on the same level must be listed in page order. Two entries may point to the same page, for example a chapter and its first section.
- bold and italic
- Optional
trueorfalsefor the title style. Not every reader displays styles. - color
- Optional title colour as red, green and blue values from 0 to 1, for example
{"R": 0.8, "G": 0, "B": 0}for dark red. Use this scale rather than 0–255 values or hex codes. - header
- Exported files start with a
headerblock that lists the source file, title, author and producer. It is for reference only and is ignored on import, so editing it does not change the document properties. Use PDF Properties for that.
Typical bookmark jobs
Add an outline to a PDF without one
For a scanned report or another PDF with no outline, write one entry per chapter, keep Replace existing bookmarks off, and import. The bookmarks help you move between chapters without adding anything to the pages.
Reuse an outline in a new edition
Export from the old version and import into the new one. If pages were added or removed, shift the page values first: entries point to page numbers, not to headings.
Strip the outline before sharing
Remove bookmarks deletes entry titles that may reveal working names or a draft structure. The pages themselves stay the same.
Formats and limits
- Input format
- Output format
- Export bookmarks: one JSON file. Import bookmarks and Remove bookmarks: one PDF with the same pages.
- Maximum file size
- 200 MB
- Files per job
- 1 PDF
- Existing bookmarks
- Export bookmarks and Remove bookmarks work on PDFs that already contain bookmarks. PDF Info shows
Outlines: Yesfor such files. - Password-protected PDFs
- PDFs that open without a password but restrict editing are processed, and the result keeps that protection. PDFs that ask for a password when opened need Unlock PDF first.
- What stays the same
- Pages, text, images, title and author. The PDF is rewritten, so its file size can change.
- Processing
- On our servers with the pdfcpu PDF library. No AI service is involved. A job can run for up to 15 minutes.
- Watermark
- None
- Storage
- Uploads and results are deleted automatically after 48 hours for guests and after 30 days for free accounts. Paid plans can keep files longer.
Frequently asked questions
I imported bookmarks. Why don't I see them?
They sit in your PDF reader's bookmarks or outline sidebar, not on the pages. The tool does not change which panel the reader shows on opening, so you may need to open that sidebar yourself.
Why does the job end with an error instead of a file?
Check these causes in order: the PDF has no bookmarks to export or remove; the PDF already has bookmarks and Replace existing bookmarks is unticked; a page value is 0, above the page count or written in quotes; entries on one level are not in page order; or the bookmarks list is empty.
Can I keep my existing bookmarks and add a few?
Yes. Export, insert the new entries at the right position in the bookmarks list, keeping page order on each level, then import with Replace existing bookmarks ticked. The new outline contains the old and the new entries.
How do I get an edited file back into the tool?
Open the exported file in a plain text or code editor, copy everything and paste it into Bookmarks JSON. Avoid word processors: they often turn straight quotes into curly ones, which is no longer valid JSON.
Is a clickable table of contents the same as bookmarks?
No. A table of contents on a page is text with links placed over it, while bookmarks live in the sidebar. A PDF can have one without the other. This tool reads and writes the sidebar outline. To change the wording or layout of a contents page, edit the document itself.