A table of contents is a list of links, usually near the top of a long page, that takes the reader straight to each section of that page. Each link points to an anchor on a heading, so clicking it scrolls to that part rather than loading a new page. The links are often called jump links or anchor links.
How a table of contents works
Each section heading carries an ID, such as id="costs" on an H2 that reads “How much does a loft conversion cost?”. The table of contents links to that ID by adding a hash to the URL: href="#costs". When someone clicks, the browser moves down to the heading. The same link can be shared, so www.example.co.uk/loft-guide/#costs opens the page at that section.
Search engines read these links too. Google sometimes shows “jump to” links beneath a result, or sends a searcher directly to the relevant section of a long page. Well-structured heading tags and a clear table of contents make it easier for Google to see which part of the page answers which question, alongside its ability to rank individual passages within a page.
Why it matters
Most people do not read long pages from top to bottom. Someone researching a kitchen refit wants the section on costs or timescales, not the history of fitted kitchens. A table of contents shows them at a glance that the page covers their question and gets them there in one tap, which matters most on mobile, where scrolling through 2,500 words is tedious.
It also disciplines the writing. If the list of sections reads like a muddle, the page probably is one. Building a table of contents is a quick check on whether a long-form guide has a logical structure with one clear purpose per section.
For pages built to answer many related questions, such as a guide to letting a property in England or a buyer’s guide to heat pumps, a table of contents also shows whether a section deserves its own page. If one entry grows far longer than the rest and attracts its own searches, splitting it out often serves readers better.
Common mistakes
- Using one on short pages. A 500-word service page does not need a list of links that pushes the useful content below the fold.
- Vague headings. Entries such as “Overview”, “More info” and “Final thoughts” tell the reader nothing.
- Collapsed by default. Some plugins hide the links behind a toggle that relies on JavaScript; visitors miss it and Google may not see the links.
- Random or changing IDs. IDs such as “#h-a7f3k” or ones that change when you edit a heading break shared links.
- Sticky boxes that cover text. A floating contents panel can hide content on smaller screens.
How to act on it
Add a table of contents to guides, resource pages and long blog posts with four or more substantial sections. Put it after an introductory paragraph that answers the main question. Use your real H2 headings, written so each tells the reader what that section answers, and give each a short, readable ID that will not change.
Mark the list up as ordinary HTML links inside a nav element with a clear label, so screen reader users can find it, in line with WCAG guidance. Test every link on mobile. Reviewing structure like this, from headings to internal links, is part of the on-page SEO work I do on existing pages.
