Markdown Todo List: 5 Copy-Paste Templates (2026)
Copy-paste markdown todo list templates for daily lists, GTD, kanban, and meetings, plus the checkbox syntax rules that keep your tasks rendering correctly.
A markdown todo list is a plain-text task list built from checkbox syntax: - [ ] for open tasks and - [x] for finished ones. It renders as clickable checkboxes in most modern editors, opens in any text editor ever shipped, and survives every app switch you will make over the next decade. Copy the block below, then steal one of the five templates.
- [ ] Open task
- [x] Finished task
- [ ] Subtask (indent two spaces)
- [ ] Task with a date, due 2026-08-20
- [ ] Task with a #tag and a @project
That is the entire format. Hyphen, space, brackets, space, text. Dates and tags are just words at the end of the line, which is exactly why the format stays portable: there is nothing proprietary to lose. The deeper case for running a whole task system this way lives in our guide to markdown task management. This page is the practical half, templates you can paste and the syntax rules that keep them rendering.

5 markdown todo list templates you can copy today
Each template below is a complete file. Paste one into any editor that renders GitHub Flavored Markdown: Obsidian, VS Code, Typora, Bear, or GitHub itself. The filenames are suggestions; the syntax works anywhere.
1. The daily todo list
# 2026-08-17, Monday
## Top three
- [ ] Ship the pricing page copy
- [ ] Call the accountant about Q3
- [ ] 45 minutes on the grant proposal draft
## If time allows
- [ ] Answer Sofia's feedback doc
- [ ] Update the onboarding checklist
## Log
- [x] Sent revised contract to legal
The top-three cap is the point of this template. A todo list in markdown grows without friction, so the cap is what keeps the file a plan instead of a guilt archive. One file per day, named by date, sorts chronologically in any file browser and gives you a searchable work log for free.
2. GTD inbox and projects
# Inbox
- [ ] Idea: partner webinar with the design tools newsletter
- [ ] Receipt from the hardware store, expense it
- [ ] Ask Maya about the API rate limits
# Project: Q3 launch
- [ ] Draft landing page outline
- [ ] Collect three customer quotes
- [ ] Book the demo video slot
# Project: Home
- [ ] Replace the hallway light fixture
This is David Allen's Getting Things Done flattened into two files: an inbox you dump into without thinking, and a projects file you process the inbox into once a day. The rule that makes it work is the same as in any GTD app: every task under a project heading needs a concrete next action, not a topic.
3. The weekly review checklist
# Weekly review, 2026-W34
## Clear
- [ ] Empty the inbox file to zero
- [ ] Review calendar, past week and next two
- [ ] File loose downloads and desktop screenshots
## Review
- [ ] Every open project has a next action
- [ ] Stalled projects: keep, delegate, or drop
- [ ] Waiting-for items followed up
## Plan
- [ ] Pick the top three outcomes for next week
A checklist in markdown earns its keep on recurring routines. Duplicate last week's file, flip every x back to a space, and start over. Ten seconds of setup, and last week's checkboxes double as a record of what you actually reviewed.
4. Kanban in markdown
# Side project board
## Backlog
- [ ] Dark mode for the settings page
- [ ] Export to CSV
## Doing
- [ ] Fix the sync retry bug
- [ ] Reproduce on a fresh account
## Done
- [x] Landing page headline test
- [x] Password reset flow
Three headings, and cards move between them by cut and paste. You lose drag and drop, but you gain a full Git history of every card move, which is more audit trail than most board tools give you. Keep WIP small by convention, because the format will not enforce it for you.
5. Meeting notes with action items
# Design sync, 2026-08-17
Attendees: Ege, Maya, Tom
## Notes
- New onboarding flow ships behind a flag
- Illustration style: keep the paper texture
## Action items
- [ ] Maya: send flag config to ops by Wednesday
- [ ] Tom: revise empty states, due 2026-08-21
- [ ] Ege: write the changelog entry
The owner prefix plus a due date in the task text keeps action items greppable. Search for - [ ] Ege: across every meeting file and you have your personal queue, no database required.
What syntax gotchas break a markdown todo list?
Three things break a markdown todo list: the renderer, the spacing, and the indentation. Plain CommonMark has no checkbox syntax at all, one missing space anywhere in the - [ ] prefix turns the line into literal text, and tabs can silently un-nest your subtasks. Everything else about the format is forgiving.
The markdown checkbox is not core markdown. John Gruber's original 2004 spec has no task list syntax, and neither does the CommonMark standard. GitHub added task lists as an extension in 2014, and that extension is now supported by GitHub itself, Obsidian, VS Code's preview, Typora, Bear, and most editors shipped since. If your editor shows the literal characters - [ ] instead of a checkbox, the fix is almost always enabling GFM in the settings, not rewriting your lists.
The spacing rules, in order of how often they bite:
- Hyphen, then exactly one space:
- [ ] task, never-[ ] task. - One space or one lowercase
xinside the brackets.[x ],[ X], and[]all fail to render. - One space between the closing bracket and the task text.
- Indent nested tasks with spaces, not tabs. Two spaces works in most renderers, four works everywhere.
- The checkbox must be a list item.
- [ ]inside a heading, a blockquote, or a code fence stays literal text.
How do I manage markdown todo files at scale?
Scale a markdown todo list with search and structure, not more tooling. Keep tasks in topical files (work.md, home.md, one file per active project), use find-in-files for - [ ] as your global open-tasks view, and let Git handle sync and history. Editors worth knowing: VS Code with the Markdown All in One extension for a checkbox toggle shortcut, Obsidian with the Tasks plugin for aggregating tasks across a whole vault, and Typora or iA Writer when you just want clean rendering.
The honest failure mode is not storage, it is capture. Typing - [ ] on a phone keyboard, or stopping mid-thought to find the right file, is where most markdown systems quietly die. The fix is not a bigger plugin stack. The fix is removing the typing from the capture step.
That is the gap quik.md fills. You speak the thought out loud, the AI organize step files it into the right project and writes the next step, and everything stays exportable as plain markdown, so your files and quik never fight over ownership of the data. It is a PWA, the free plan covers a daily AI-organize cap with browser speech recognition, and Pro is $14.99 monthly or $69.99 yearly with a 7-day trial, or $99.99 once for lifetime. If you enjoy maintaining the files by hand, keep doing that. If capture is where your system breaks, our page on voice to markdown walks through the workflow, and the pillar on AI task managers covers where quik sits in the category.
Pricing shown reflects plans at the time of writing. Check quik.md/pricing for current rates.
FAQ
Does markdown have checkboxes?
Core markdown does not, but GitHub Flavored Markdown adds task list checkboxes with the syntax - [ ] for open and - [x] for done. GitHub, Obsidian, VS Code, Typora, Bear, and most editors shipped after 2020 render them as real checkboxes. If your editor shows the literal characters, enable GFM in its settings.
Do markdown checkboxes render on GitHub?
Yes. GitHub renders - [ ] and - [x] lines as checkboxes in issues, pull requests, comments, and markdown file previews. In issues and pull requests the checkboxes are clickable and checking one edits the source text. In file previews they render as static checkboxes.
How do I nest tasks in markdown?
Indent the subtask line two or four spaces under its parent and keep the same checkbox syntax. Two spaces works in most renderers, four spaces works everywhere. Use spaces, never tabs, because tab width differs across editors and can silently break the nesting.
How do I mark a markdown task as complete?
Change the space inside the brackets to an x: - [ ] becomes - [x]. Most editors with GFM support also let you click the rendered checkbox and will flip the character in the source for you. The underlying file stays plain text either way.
Can I sync a markdown todo list across devices?
Yes. Git gives you sync plus full history, and iCloud, Dropbox, or Syncthing work if you want zero setup. If the typing itself is the bottleneck, a tool like quik.md captures tasks by voice, files them with AI, and still exports plain markdown.
What should you read next?
- Markdown task management: why plain text wins, the strategic companion to this template page.
- Voice to markdown, how to capture tasks by speaking and still end up with plain-text files.
- AI task manager, the pillar on where AI routing fits with markdown-first workflows.
References
- GitHub Flavored Markdown spec, GitHub.
- Markdown Guide: extended syntax, Matt Cone.
- CommonMark spec, CommonMark project.
- Obsidian Tasks plugin, Clare Macrae.
Keep reading
Workflows9 minPlain Text Task Management: Why It Outlives Every App
Why a folder of plain text files outlives every task app you will ever try: portability, search, version control, and zero lock-in, plus the honest tradeoffs (no reminders, no sync magic) and the minimal setup that actually sticks.
Workflows10 minMarkdown Kanban Board: Build One in a Single .md File
A markdown kanban board is one file where headings are columns and checkbox lines are cards: Backlog, Doing, Done, with a WIP limit noted under Doing. Cards move by cut and paste, Git history becomes your audit trail, and the board stays readable in any editor forever.
Workflows9 minMeeting Notes Template in Markdown: 3 Copy-Paste Kits
Copy-paste markdown meeting notes templates for a general meeting, a 1:1, a standup, and a client call. Each one ends in checkbox action items with an owner prefix and a due date, so follow-ups stay greppable weeks after the meeting.