Confluence Cloud does not number headings. People have been asking since 2004; the ticket, CONFCLOUD-1732, sits at 600+ votes as of August 2026, and Atlassian's last comment on it (January 2022) said the feature is not on the roadmap. Vote on it if you want that to change.
Until then, you have three ways to get numbers on a page.
| Numbers show up | Renumber automatically | Cost | |
|---|---|---|---|
| 1. TOC macro with section numbers | in the TOC only | yes | none |
| 2. Type them into the heading | everywhere: page, export, search | no | your time |
| 3. App | on the page and in the export | yes | admin install |
Type /table of contents in the editor, insert the macro, then open its settings and switch on Include section numbers.
The TOC now shows 1, 1.1, 1.2, 2 for the heading levels you include (macro docs). This works in pages, live docs and blog posts, and if you leave Exclude in PDF export switched off, the numbered TOC appears in the exported PDF too.
The catch is that the headings themselves stay unnumbered. The numbers live only in the TOC, so "see 3.2" works from the TOC and nowhere else on the page. Nested numbered lists won't rescue you either; they give you 1 / a / i, not 1 / 1.1.
Still, if your readers navigate from the TOC and nobody prints or cites sections, this costs nothing and never goes stale.
Write 3.2 Acceptance criteria as the heading text. The number is now part of the heading, so it shows up on the page, in the TOC, in search, and in PDF and Word export.
If your site has Rovo, Atlassian's AI assistant, you can ask it to add the numbers across a page for you; read through what it changed before you trust it.
Insert a section and everything below it is wrong. That is the whole problem with this option. You renumber by hand, and the page is quietly incorrect until you do. For a policy document that changes twice a year I would just do this. For a spec that changes every week, no.
Disclosure before anything else: I'm the developer of Numbered Headings (Janez Tech), so read this section knowing that.
The app writes the numbers into the heading text and renumbers everything when the structure changes. You control it per page from a small dialog: pick decimal (1 / 1.1 / 1.1.1), Roman, letters, or a pattern like A.4-1, skip levels, start at any value. That covers the ISO 2145 style that controlled documents ask for, and the dialog previews each format before you commit.
Switch it on and the numbers are written into the headings. Switch it off and the original headings come back. Because the numbers end up as ordinary heading text, they survive PDF export, Word export, search and copy-paste.
After that first write, the app only touches the page when the structure actually changed, so a normal text edit creates no new page version and notifies nobody. It works one page at a time, and it is built on Forge, so nothing leaves your Atlassian site.
The trade-off is the usual one for any app: an admin has to install it, and it is one more line on your apps page. What you get back is never renumbering by hand again.
Renumbering a forty-heading spec for the third time is the exact chore that made me build this. Here is a link to the app.
Appfire's Numbered Headings is the longest-standing option, with the most installs. It works the other way around: the numbers are rendered when the page is viewed rather than written into the heading text.
Kolekti's Mosaic bundles heading numbering into a suite of content-formatting macros. If your team already wants the suite, one purchase covers this problem too. Their 2023 article Numbered Headings in Confluence: 3 kinds of solutions is still a good overview of the problem.
The real difference between all of these is the mechanism, and it is worth deciding on that rather than on install counts.
Numbers written into the heading text, which is what my app does, are ordinary text from then on: they show up in PDF and Word export, in search, and in copy-paste, with no vendor in the loop.
Numbers rendered at view time depend on the renderer being there, so export and search become questions for the vendor. If export is the reason you are reading this, written-in text is the mechanism to insist on.
Does the numbering survive PDF and Word export? If the number is part of the heading text, typed by you or written in by an app, yes, always, because it is just text. TOC section numbers appear only inside the TOC, and only while Exclude in PDF export is off. Numbers that are rendered at view time instead of written into the text depend on the vendor, so ask them first.
I imported a Word document and the numbering vanished. Why? Word's automatic numbering is a list format, not text, and Confluence's importer drops it. You can convert the numbering to plain text in Word before importing, type the numbers back in afterwards, or run a numbering app over each imported page once.
Can Confluence do legal or ISO 2145 numbering, 1 / 1.1 / 1.1.1? In the TOC, yes, that is exactly what Include section numbers produces. On the page itself it is type-it-yourself or an app.
Do these work in live docs? The TOC macro does; insert it in a live doc and Include section numbers behaves the same, numbers in the TOC only. Typed numbers are plain heading text, so they work anywhere headings do. For an app, check its listing; live-doc support varies by vendor.
Most of the odd formats in my app exist because someone answered one question for me: what numbering convention does your team use, and where does Confluence make it hard? I'd like to hear yours.
Janez Čadež _Janez Tech_
0 comments