MDConverter
Universal In-Browser Converter
100% Client-Side Private

Markdown Flavors: CommonMark vs GitHub Flavored Markdown and More

By the MDConverter team · Updated · 3 min read

Quick answer

CommonMark is the precise, standardized core of Markdown; GitHub Flavored Markdown (GFM) is CommonMark plus five extensions — tables, task lists, strikethrough, autolinks and an HTML filter. Other "flavors" add their own extras (footnotes, math, callouts, wiki links) or, in chat apps like Slack and WhatsApp, use a different, simpler syntax. When text looks different between two apps, a flavor difference is almost always the reason.

Why there are different flavors

John Gruber's original 2004 description left many details open — how to nest lists, whether underscores inside words count, what a blank line in a list means. Each implementation chose its own answers and added features its users needed. CommonMark (2014) settled the core rules with a specification and test suite; most modern tools now build on it and add extensions on top.

Feature comparison

Feature Original CommonMark GFM (GitHub) Pandoc Obsidian
Headings, emphasis, lists, links, code Yes Yes Yes Yes Yes
Fenced code blocks No Yes Yes Yes Yes
Tables No No Yes Yes Yes
Task lists - [ ] No No Yes Yes Yes
Strikethrough ~~ No No Yes Yes Yes
Bare URL autolinks No No Yes With extension Yes
Footnotes [^1] No No Yes (GitHub.com) Yes Yes
Math $…$ No No Yes (GitHub.com) Yes Yes
Alerts / callouts No No Yes (> [!NOTE]) No Yes (> [!info])
Wiki links [[Note]] No No No No Yes
Highlight ==text== No No No With extension Yes

Footnotes, math and alerts are GitHub.com features layered on top of the published GFM spec, which is why some "GFM" libraries do not include them.

What GFM adds to CommonMark

The GFM specification defines exactly five extensions: tables, task list items, strikethrough, extended autolinks (bare https:// and www. URLs) and the disallowed raw HTML filter (removing tags such as <script>, <iframe> and <style>). Everything else is CommonMark.

Other flavors you will meet

  • MultiMarkdown — footnotes, tables, citations, metadata and cross-references; popular for long-form writing.
  • Markdown Extra (PHP) — tables, footnotes, definition lists, attribute lists {#id .class}.
  • Pandoc Markdown — the most extensive: citations, math, definition lists, divs, fenced attributes. Ideal for academic work and conversions to Word, PDF and LaTeX.
  • GitLab Flavored Markdown — GFM plus diagrams, front matter, and references to issues and merge requests.
  • R Markdown / Quarto — code chunks that run and insert their output.
  • Chat dialects — Discord follows Markdown closely (and adds spoilers and subtext); Slack "mrkdwn" and WhatsApp use single * for bold and no headings or tables; Teams supports a subset. Converters handle the differences: Markdown to Slack, Markdown to Discord, Markdown to Jira.

Which flavor should you write?

Write GFM. It is the de facto standard: GitHub, GitLab, VS Code, Obsidian, Notion imports, most documentation sites and AI assistants all read it. Avoid app-only syntax (wiki links, ==highlight==, callouts) in files that will be shared or converted, or check that the destination supports it. The Markdown cheat sheet sticks to GFM, and every converter on this site reads GFM.

Tools for this

Frequently Asked Questions

Frequently Asked Questions About CommonMark vs GFM (flavors)

Comprehensive answers to common technical, formatting, security, and compatibility questions.

GFM is a strict superset of CommonMark: every valid CommonMark document renders the same in GFM, and GFM adds tables, task lists, strikethrough, extended autolinks and an HTML filter on top.

Sources

← All Markdown lessons · Markdown cheat sheet