~~strikethrough~~ — to add a horizontal line through the text. This is the standard syntax supported by GitHub, Discord, Notion, and most modern markdown platforms.
Basic Syntax
~~this text has a line through it~~The double tildes on both sides of the text produce a strikethrough effect: a horizontal line drawn through the center of the words.
You can strikethrough a single word, a phrase, or an entire sentence:
~~single word~~~~an entire phrase~~~~A complete sentence that has been removed from the document.~~
Combining Strikethrough with Other Formatting
Strikethrough can be layered with bold and italic:
~~bold strikethrough~~— bold and struck out~~italic strikethrough~~— italic and struck out~~bold strikethrough alternative~~— same result, outer bold
Platform-by-Platform Breakdown
GitHub and GitLab
Full support for ~~double tildes~~. This is part of the GitHub Flavored Markdown (GFM) specification. Strikethrough renders in issues, pull requests, READMEs, and comments.
Obsidian
Obsidian supports ~~strikethrough~~. Note that Obsidian also uses ~single tilde~ for subscript — so don't mix them up. For strikethrough, always use double.
Notion
Notion supports strikethrough in its markdown import mode. In the Notion editor, you can also apply strikethrough via the text formatting menu. Exported Notion markdown uses ~~double tildes~~.
Discord
Discord fully supports ~~strikethrough~~. This is one of the most-used text formatting options in Discord, especially in casual conversation for humor and corrections.
Slack
Slack uses its own mrkdwn format. For strikethrough in Slack, you also use ~single tilde~ — not double tildes. This is the one place where single tilde means strikethrough (not subscript).
Quick reference:
- Standard markdown (GitHub, Obsidian, Discord):
~~double tildes~~ - Slack:
~single tilde~
Plain CommonMark
The original CommonMark specification does not include strikethrough. If you're using a minimal markdown renderer that only supports CommonMark, ~~text~~ will render as literal tilde characters instead of a strikethrough.
Common Mistakes
Single Instead of Double Tildes
~text~ — wrong for strikethrough (this is subscript in Obsidian/Pandoc, or does nothing in CommonMark)
~~text~~ — correct strikethrough
Spaces Inside the Tildes
~~ text ~~ — some parsers will not render strikethrough if there are spaces between the tildes and the text. Keep the tildes flush against the text.
Using in Plain CommonMark Contexts
If you're writing markdown that will be processed by a plain CommonMark renderer (some static site generators, older tools), strikethrough won't work. You'll need to use the HTML tag instead: .
text
HTML Alternative: The del Tag
For environments that don't support ~~tildes~~, use the HTML element:
deleted content
The tag is semantically correct for deleted text — it's what screen readers will announce as deleted content. The visual rendering is the same horizontal strikethrough line.
For edits showing both what was removed and what was added, pair with :
Price:
$199 $99
Real-World Use Cases
Showing Corrections in Technical Docs
Strikethrough is perfect for changelog entries and errata: "~~The API returns a 200 status on failure.~~ The API returns a 422 status on validation failure." This preserves the old (incorrect) text so readers understand what changed.
Completed Items in Task Lists
While you can use - [x] for checked checkboxes, some people prefer strikethrough for visual crossed-off tasks in prose notes:
"Today's plan: ~~Write the spec~~ ~~Review PRs~~ Deploy to staging"
Price Comparisons in Marketing Content
Strikethrough is the standard way to show original vs discounted prices: "~~$199/month~~ $99/month — launch pricing". This is used everywhere from sales pages to product release notes.
AI-Generated Changelogs
When asking an AI to generate a changelog or revision history, it often uses strikethrough to indicate removed features or deprecated behavior. MarkdownTools renders strikethrough correctly in all three export themes.
Strikethrough vs Other "Deletion" Elements
| Method | Use when |
| --- | --- |
| ~~tildes~~ | Quick strikethrough in GFM environments |
| | Maximum compatibility, semantic correctness |
| text- [x] task | Task list checkboxes (separate from strikethrough) |
| Remove entirely | When you don't want to preserve the old content at all |
Full details at the Markdown Strikethrough reference.
Ready to put this into practice? Paste your markdown into the free MarkdownTools PDF exporter or HTML converter — no signup required.