MeshWorld India LogoMeshWorld.

Footnotes in Markdown

(Updated: Jul 15, 2026)
Listen to ArticleAI Speech
~5 min read narration
100%
Footnotes in Markdown

Citing a source or adding a side note without derailing a sentence is a common need in technical writing and long-form articles. Footnotes solve this by moving the extra detail to the bottom of the document while leaving a small reference marker in the text. This guide explains the footnote syntax, how numbering works, and which tooling you need since footnotes are not part of core CommonMark.


How Do I Add a Basic Footnote?

Write a caret followed by a label in square brackets ([^label]) at the point in the text where the reference should appear. Then define the footnote’s content anywhere else in the document using the same label followed by a colon.

MARKDOWN
Markdown was created by John Gruber in 2004.[^1]

[^1]: See the original syntax documentation at daringfireball.net/projects/markdown.

On a renderer with footnote support enabled, this compiles to a small superscript reference linking down to the definition:

HTML
Markdown was created by John Gruber in 2004.<sup><a href="#fn-1">1</a></sup>

<!-- ...later in the document -->
<ol>
  <li id="fn-1">See the original syntax documentation at daringfireball.net/projects/markdown.</li>
</ol>

How Is Footnote Numbering Determined?

You can use any label you like (words, abbreviations, or numbers), but the number shown to the reader is always based on the order the references appear in the running text, not the order the definitions are written in.

MARKDOWN
First point.[^b] Second point.[^a]

[^a]: This becomes footnote 2, since [^a] appears second in the text.
[^b]: This becomes footnote 1, since [^b] appears first in the text.

Can a Footnote Span Multiple Paragraphs?

Yes. Indent any continuation lines by four spaces (matching the indentation rule used for content inside list items) to keep them part of the same footnote definition.

MARKDOWN
Here's a claim that needs more context.[^detail]

[^detail]: This is the first paragraph of the footnote.

    This is a second paragraph, indented to stay part of the same footnote.

Do All Markdown Renderers Support Footnotes?

No. Footnotes are not part of core CommonMark or the base GFM specification, and remark-gfm itself does not include footnote parsing. Support depends entirely on your tooling: static-site generators like Astro need a dedicated plugin such as remark-footnotes added separately, while platforms like GitHub render them natively in Markdown files and issues through their own proprietary handling.


Summary Checklist

  • Write [^label] at the point in the text where the reference marker should appear.
  • Define the footnote anywhere else with [^label]: content.
  • Numbering follows reference order in the text, not definition order.
  • Indent continuation lines by four spaces for multi-paragraph footnotes.
  • Confirm your renderer supports footnotes before depending on them, since they require a plugin or extension.

Frequently Asked Questions

Can I reuse the same footnote reference twice?

Yes. Referencing the same label ([^label]) more than once in the text typically links both markers to the same definition, though the exact rendering (duplicate numbers vs. back-references) varies by implementation.

Where should footnote definitions be placed in the file?

Anywhere technically works, since the parser resolves references regardless of position, but placing them all at the bottom of the document keeps the source readable and matches how most style guides recommend organizing them.

What happens if I reference a footnote label that has no definition?

Behavior depends on the renderer. Most either leave the raw [^label] text visible or silently drop the reference, since there’s no CommonMark-standard error handling for unresolved footnotes.


Reader Quality Feedback

Did this technical guide help solve your problem?

Suggest Errata ($0)
Vishnu
Primary Author

Vishnu

Founder & Principal Architect at MeshWorld. Senior engineer and instructor specializing in AI agent systems, scalable web architecture, and modern development workflows.

Explore Author Archive
Compute Fuel & Open Testbed
100% Independent & Verified

Fuel High-Density, Zero-Fluff Engineering Deep-Dives

Every guide on MeshWorld is validated on physical Linux nodes and reproducible testbeds. If this article saved you hours of debugging or unblocked production, consider funding our next cluster run.

Weekly Dispatch

Join MeshWorld Dispatch

Get practical tutorials, system blueprints, and curated AI engineering notes straight to your inbox. No fluff, zero spam.

Zero spam. 1-click unsubscribe anytime.Prefer RSS?
Curated Continuations

Up Next in This Domain.

Browse Full Archive