How to strike through text in Markdown
Try it — edit the markdown and watch the preview
Result
Runs entirely in this tab. Open the full editor to work on a real document.
Two tildes on each side strike text through:
~~no longer accurate~~
A single tilde does nothing in GitHub Flavored Markdown. A few renderers treat
~x~ as subscript, so do not rely on one tilde meaning anything in particular.
It is a GFM extension
Strikethrough is not in original Markdown. It works on GitHub, GitLab, Slack, Discord, Obsidian, Notion exports and most static site generators, but a strict CommonMark parser with no extensions renders the tildes as literal characters.
Combining it
Markers nest in either order:
~~**struck and bold**~~
**~~also fine~~**
Keep each pair balanced. An unclosed pair shows the tildes as text.
Use it to show change, not to hide it
Strikethrough is for when the reader benefits from seeing that something was different: a superseded instruction, a price that dropped, a task you finished but want to keep on the page. If the old version is not useful, delete it — a document full of struck-out text is harder to read than one that has been edited.
Common questions
- How do I strike through text?
- Wrap it in two tildes — ~~like this~~. A single tilde is not strikethrough in GitHub Flavored Markdown, though a few renderers treat it as subscript.
- Is strikethrough part of standard Markdown?
- No. It comes from GitHub Flavored Markdown. Support is very wide — GitHub, GitLab, Slack, Discord, Obsidian and most static site generators — but a strict CommonMark parser renders the tildes literally.
- Can I combine strikethrough with bold or italic?
- Yes. Nest the markers — ~~**struck and bold**~~ — and either order works. Keep the pairs balanced or the markers show up as text.
- What is strikethrough good for?
- Showing that something changed rather than hiding that it existed: a superseded step, a completed item you want to keep visible, a price that has been reduced. If the reader does not need the old version, delete it instead.
- How do I show literal tildes?
- Escape them with backslashes, or put the text in a code span. Paths like ~/Documents are usually safe because a single tilde is not a marker.