10 min read
PDF table of contents generator โ create bookmarks automatically (2026)
By ScoutMyTool Editorial Team ยท Last updated: 2026-05-19
Introduction
A friend of mine spent three weeks writing a 240-page handbook, exported it as a PDF, and emailed it to her team. The first response was "thanks โ is there a clickable table of contents anywhere? It is hard to navigate." She had a printed TOC on page two but no PDF bookmarks. The two are not the same thing, and most people who generate PDFs never realise they are missing the second one. This article is the full guide: what PDF bookmarks actually are (and how they differ from a printed TOC), why screen readers and quick navigation depend on them, and four free ways to add them to an existing PDF โ auto-detect-from-headings, pattern-based, CSV-driven, or manual.
Printed TOC vs PDF bookmarks โ they are not the same thing
The single most common confusion in this area is treating "table of contents" and "bookmarks" as synonyms. They are independent structures with different storage, visibility, and uses.
| Feature | Printed TOC (page content) | PDF bookmarks (outline) |
|---|---|---|
| Where it appears | On a page near the front (page 2 or 3) | In the PDF viewer sidebar (Adobe, Preview, Chrome, etc.) |
| Visible when printed | Yes | No โ sidebar only |
| Clickable navigation | Only if hyperlinked; otherwise visual only | Always โ one click jumps to the destination |
| Used by screen readers | Only as ordinary text | Yes โ exposed as the document outline for accessibility |
| Where it is stored in the PDF | In the page content stream (it is just text on a page) | In the document outline dictionary (ISO 32000-1 ยง12.3.3) |
| Survives PDF compression | Yes (it is page content) | Yes โ the outline is preserved separately from page content |
In the ISO 32000-1 PDF specification, the outline is defined separately from page content in ยง12.3.3 (Document outline).1 It is a tree of outline items, each pointing to a destination โ typically a specific page and a target location within that page. The viewer renders the tree in the sidebar and handles the click-to-jump behaviour. None of that has anything to do with what is visible on any given page.
Why PDF bookmarks matter, even for short documents
- Navigation. Anything longer than ten pages is hard to navigate without bookmarks. The viewer sidebar gives the reader the document's structure at a glance and lets them jump to any section with one click โ a dramatically better reading experience than scrolling through the printed TOC, memorising a page number, and pressing Page Down repeatedly.
- Accessibility. Screen readers expose the outline as the primary navigation structure for users who cannot scan the page visually. A 100-page PDF with no outline is essentially unreadable for a blind user โ they can only step through it one page (or one line) at a time. PDF/UA-1 (ISO 14289-1) and WCAG 2.1 both treat document outline as a foundational accessibility requirement.2
- Search-engine indexing. Google and Bing both extract and use the PDF outline as a document-structure signal when indexing PDF content for search. A well-structured PDF is more likely to be ranked accurately for the section a query maps to, and the outline can show up directly in search results as a jump-to-section table.
- Programmatic processing. Tools that operate on PDF structure (legal e-discovery platforms, archival systems, document-management software) use the outline as a primary unit of segmentation. A bookmarked PDF can be split by section, re-indexed, or summarised in ways a flat PDF cannot.
Four ways to add bookmarks to an existing PDF
| Method | Works on | Speed | Best for | Tool |
|---|---|---|---|---|
| Auto-detect from heading styles | PDFs exported from Word, Google Docs, LibreOffice, InDesign, or any source where Heading 1/2/3 styles were applied | Seconds | PDFs originated in a word processor with proper heading styles | open tool |
| Pattern-based (regex) | PDFs with consistent chapter / section text patterns like "Chapter N" or "1.2.3" | Seconds | Manuals, legal codes, scientific papers without heading style metadata | open tool |
| CSV-driven (page,title) | Any PDF; you supply a CSV listing each bookmark title and its page | A few minutes (you build the CSV) | Scanned books, PDFs without text layer, or any situation where the structure is in your head, not the PDF | open tool |
| Manual entry | Any PDF | Slowest โ one entry at a time | Short documents with only a handful of bookmarks | open tool |
Method 1 โ Auto-detect from headings
By far the fastest method, and the right default for any PDF exported from a word processor. The tool reads the PDF and looks for runs of text styled like headings โ larger font size, bold or semi-bold weight, consistent spacing above and below. It builds an outline tree by inferring Heading 1 / Heading 2 / Heading 3 from the relative font sizes. Use ScoutMyTool's auto-detect tool on any Word-or-Google-Docs-style PDF and you usually get the right outline in one shot.
Method 2 โ Pattern-based
For documents where headings follow a strict text pattern but no font-size cue โ legal codes ("ยง 12-3"), product manuals ("Chapter 4"), academic appendices ("Appendix B.2") โ pattern-based detection lets you specify a regex or a simple wildcard and the tool finds every match across the document, creating a bookmark for each. This works on PDFs without proper heading styles as long as the text pattern is consistent.
Method 3 โ CSV-driven
For PDFs whose structure you know but the document does not โ typically scanned books, photographed materials, or documents whose headings are inconsistently styled โ list the bookmarks in a CSV file: one row per bookmark, columns for level, title, and target page. Feed the CSV to Add Bookmarks from CSV, and the tool builds the outline from your spreadsheet. This is the right method when no heuristic can detect the structure but you can list it out yourself.
Method 4 โ Manual entry
For short documents with only a handful of bookmarks (a 10-page proposal with three sections, for example), it is faster to click Add bookmark at each target page than to set up any of the above. Use Add Bookmarks (manual) for these. Beyond ten bookmarks, switch to one of the automated methods.
A worked example โ auto-detect on a 100-page handbook
- Open ScoutMyTool's Table of Contents generator or the auto-detect-from-headings variant in your browser. The tool runs entirely in your browser tab.
- Drop the PDF into the drop zone. The tool reads the file using the open-source pdf-lib library and the underlying ISO 32000-1 content-stream parser.
- The tool produces a preview of the detected outline. Review the levels โ top-level headings should be "Chapter 1, Chapter 2โฆ" or "Part I, Part IIโฆ", and second-level should be the sub-sections within each. Edit titles inline if the heuristic over- or under-classified anything.
- Click Save bookmarks. The tool writes the outline into the PDF outline dictionary and the page-content streams are not touched. Download the updated PDF.
- Open the saved PDF in Adobe Reader, Apple Preview, Chrome, or Edge. Open the sidebar โ the bookmark tree should match the preview. Click any bookmark to verify the jump-to-page behaviour.
Two related flows worth knowing
Splitting a long PDF by bookmark
Once a PDF has a proper outline, the cleanest way to break it into per-chapter files is Split by Bookmarks โ the tool produces one output PDF per top-level bookmark, named after the bookmark title. This is dramatically better than splitting by page range when you do not know the exact page breaks ahead of time.
Extracting an existing bookmark structure
Extract Bookmarks reads a bookmarked PDF and outputs the outline as a CSV or JSON file. Useful for inspecting a counterparty's PDF, for migrating structure from an old PDF to a regenerated version, or for piping the bookmark titles into a search index.
Related ScoutMyTool tools and articles
- PDF Table of Contents generator โ the primary tool referenced.
- Auto TOC from headings โ automated method 1.
- Bookmarks from pattern โ method 2.
- Bookmarks from CSV โ method 3.
- Manual bookmark editor โ method 4.
- Split by bookmarks โ the natural follow-on for chapter-export workflows.
- Extract bookmarks โ outline โ CSV / JSON.
- Add page numbers, headers and footers โ sister article on PDF overlays.
Frequently asked questions
- What is the difference between a PDF table of contents and PDF bookmarks?
- A printed table of contents is a page near the front of the document that lists section titles and page numbers as ordinary text. PDF bookmarks (formally "outlines" in the ISO 32000-1 specification) are a separate structure stored in the document outline dictionary that PDF viewers display as a clickable tree in the sidebar. The two are independent โ a PDF can have one, the other, both, or neither. Most professionally produced PDFs have both: the printed TOC is for print readers, and the bookmark outline is for on-screen readers and accessibility tools.
- Will my PDF automatically have bookmarks if I "Save as PDF" from Word?
- Only if you used heading styles in the source document. Word's built-in PDF exporter (and Google Docs', LibreOffice's, and InDesign's) reads the heading metadata โ Heading 1, Heading 2, Heading 3 โ and converts it into a PDF outline tree. If your document is plain text with bold lines instead of proper heading styles, no outline is generated. The fastest fix on an already-exported PDF is to use an auto-detect-from-headings tool that infers the structure from font size and weight on the page.
- Is a PDF outline required for accessibility compliance?
- For most accessibility standards, yes. PDF/UA-1 (ISO 14289-1) and WCAG 2.1 both require a logical document structure exposed to assistive technologies. A document outline is the primary navigational structure a screen reader uses to let blind and low-vision users jump between sections; without one, the only way to navigate a long PDF is page-by-page, which is impractical. Section 508 of the US Rehabilitation Act, which mandates accessibility for federal agencies and most federal contractors, similarly requires document structure including the outline.
- How do I add bookmarks to a scanned PDF that has no text layer?
- Two options. The faster option: use a CSV-driven tool where you list each bookmark title and its target page in a spreadsheet, save as CSV, and feed it to the bookmark tool. The slower-but-cleaner option: run OCR on the scan first (so you have a text layer), then use auto-detect-from-headings or pattern-based detection. CSV-driven works for documents where you already know the structure; OCR-then-auto works when you have a long scan you have not read carefully.
- Will adding bookmarks change the visible content of the PDF?
- No. The outline is stored in a separate dictionary in the PDF file structure and is rendered by the viewer in the sidebar โ the visible page content is untouched. If you want a visible printed table of contents on a page as well, that has to be added separately, either by editing the source document and re-exporting or by inserting a TOC page with a tool like Merge PDF.
- Can I split a long PDF into one file per bookmark?
- Yes. ScoutMyTool's Split by Bookmarks tool takes a bookmarked PDF and produces one output file per top-level bookmark, named after the bookmark title. This is useful for academic papers within an edited volume, chapters of a book, or sections of a manual that need to be distributed separately.
- How deep can the bookmark tree go?
- The PDF specification places no hard limit on outline nesting depth, but most viewers render up to six or seven levels comfortably. Beyond that, the sidebar becomes hard to navigate. As a practical rule, mirror the heading hierarchy of your source document โ for most documents that is three levels (Heading 1 / Heading 2 / Heading 3), and for technical manuals occasionally four. Deeper nesting suggests the document needs restructuring rather than more bookmarks.
Generate a PDF table of contents, free
Auto-detect, pattern-based, CSV-driven, or manual โ pick the method that fits your PDF. Browser-only, no upload.