Markdown Checkboxes: How to Create and Format Task Lists
Frequently Asked Questions
How do I make a checkbox in Markdown?
Type a list marker (hyphen, asterisk, or plus), a space, then [ ] for unchecked or [x] for checked, followed by a space and your task text. Example: - [ ] My task. This syntax is part of GitHub Flavored Markdown and works on GitHub, GitLab, VS Code, Obsidian, and most modern Markdown renderers.
Are Markdown checkboxes part of the official specification?
No. Checkboxes (task lists) are a GFM extension, not part of the CommonMark specification. GitHub formalized the syntax in their GFM spec as a strict superset of CommonMark. Most modern tools support them, but strict CommonMark parsers and some platforms like Reddit do not render them.
Can I make Markdown checkboxes clickable?
Only on platforms that support interactive checkboxes. GitHub issues and pull request descriptions allow clicking to toggle checkboxes, which edits the underlying Markdown source. Obsidian and Typora also support click-to-toggle. In static renderers like VS Code preview and Pandoc output, checkboxes display but require manual text editing.
Do Markdown checkboxes work in README files?
Yes. GitHub renders checkboxes in README.md files displayed on repository pages. They appear as styled checkboxes but are not clickable in README views — only in issues and PR descriptions. GitLab README files also render checkboxes with the same visual treatment.
What is the difference between a Markdown checkbox and a task list?
They are the same feature. Task list, checklist, and checkbox all refer to the GFM syntax - [ ] / - [x]. GitHub's documentation uses task list officially, while most developers say checkbox or checklist informally. The HTML output is identical: an input type=checkbox element inside a list item.
Continue reading with AI
Content licensed under CC BY 4.0. Cite with attribution to MacMD Viewer.