Documents

Document table of contents

You write the section titles, the engine writes the page numbers. Numbering runs last, after every other layout pass, because moving one section changes every number after it.

Create a document with OneCraftThe contents block, how numbering resolves, and why titles must match exactly
A contents page listing fifteen sections with their page numbers
A real contents page. You write the section titles, the page numbers are filled in during layout.

Titles have to match the headings

A contents row is matched to its section by the title text. If the row says "Leave and time off" and the heading says "Leave and time off policy", the page number cannot be resolved. When a document is generated as one piece they match automatically. When you rename a heading by hand afterwards, rename the contents row with it.

Numbering runs last, on purpose

The layout engine moves content around: it pulls a block up to fill a short page, pushes a stranded heading down, and strips a divider that lands at the top of a page. Any of those changes a page number. So the contents and the figure captions are numbered after all of that has settled, which is why the numbers are right rather than approximately right.

Sub-sections indent

Each contents row carries a level, so a top level section sits flush and its sub-sections indent one or two steps. Use it where the document genuinely has a hierarchy, such as a numbered agreement or a manual, and keep it flat where it does not. A contents list that indents everything is harder to scan than one that does not indent at all.

Only on a document that needs it

A contents page belongs on something long enough to navigate, so it is added to a handbook, a manual, a white paper or an annual report and not to a four page proposal. On a short document it costs a page and earns nothing, because the reader can already see the whole thing by scrolling.

How it works, in three steps

  1. Step 1

    Add the contents block near the front

    It sits after the cover and before the first section, which is where a reader looks for it.

  2. Step 2

    Keep the titles in step with the headings

    If you rename a heading, rename its contents row, or the page number cannot resolve.

  3. Step 3

    Check it after a big edit

    Numbering is recalculated during layout, so open the contents after adding or deleting a whole section.

The full walkthrough with screenshots is in the guide Every document component and when to use it.

Limits worth knowing

See it on a finished piece

Questions people ask

Do the page numbers update when I edit the document?

Yes. Numbering happens at the end of layout, after everything else has moved, so it reflects the final pagination.

Why is one of my contents rows missing a page number?

Its title no longer matches the heading it points at. Make the two identical and it resolves.

Can I have sub-sections in the contents?

Yes, each row carries an indent level of up to two steps below the top level.

Make your own document

The button opens the generator with this use case already described. Change the wording to match yours, generate, then edit anything you like.

Create a document with OneCraft

Related pages

More finished work of this kind is on the document examples hub.