How to Highlight Text in Markdown
Highlight text by wrapping it in double equals signs: ==highlighted text==. This is extended syntax, not part of CommonMark or GFM — it works in Obsidian and a handful of other processors, where it renders as a <mark> element with a colored background.
Platform Support
The ==highlight== syntax comes from extended Markdown dialects and was popularized by editors like Obsidian, Typora, and iA Writer. Parser libraries can usually opt in too: markdown-it has a mark plugin, remark has equivalents, and Pandoc enables ==text== through its mark extension. Wherever it is supported, the output is the HTML <mark> element, which browsers render with a yellow background by default. Like other emphasis markers, the equals signs must touch the text on both sides — == spaced out == stays literal even in processors that support the syntax. If you are unsure whether your renderer supports it, the failure mode is at least obvious: unsupported ==text== shows the equals signs in the output rather than silently mangling anything.
Where the double-equals syntax is unsupported but raw HTML passes through — many static site generators, documentation tools, and HTML-exporting pipelines — you can write the <mark> tag directly: <mark>highlighted phrase</mark>. This is also semantically the right element: <mark> means "relevant in the current context", the way a search tool highlights matched terms or a study guide marks passages, which is a different signal than the importance conveyed by <strong>. Because it is a real HTML element, you can restyle the highlight color with CSS wherever you control the stylesheet.
GitHub is the platform people ask about most, and the answer is simply no: GFM has no highlight extension, so ==text== renders with the equals signs visible. The conventional substitutes are **bold** when a few inline words need to stand out, `inline code` when the standout text is a token or value, and the alert callouts (> [!NOTE], > [!IMPORTANT], > [!WARNING]) when a whole block needs attention — alerts render as colored boxes with icons and are the closest visual relative of a highlighter pen on GitHub. Pick by scope: bold for a phrase, code for a value, an alert for a paragraph.
Because highlighting is non-standard, think about where your document will end up. Notes written in Obsidian with ==highlights== degrade to visible equals signs the moment they are pushed to a GitHub repo or run through a default-configuration site generator. If an Obsidian vault feeds a publishing pipeline, either enable a mark plugin in that pipeline or convert ==...== to <mark>...</mark> before publishing. Within Obsidian itself, highlights have a genuinely distinct role worth preserving: writers use bold for structural emphasis and highlights for reader-style annotation — "this is the passage that matters" — and collapsing the two into bold loses that distinction.
Examples
==highlighted text====highlighted text==
Highlight text using double equals signs. Note: Not standard Markdown.
This sentence has a <mark>highlighted phrase</mark> in it.This sentence has a highlighted phrase in it.
Works where raw HTML is allowed, even when the ==syntax== is unsupported.
> [!IMPORTANT]
> Review the migration steps before upgrading.IMPORTANT
Review the migration steps before upgrading.
On GitHub, alert callouts are the closest thing to a block-level highlight.
Common Mistakes
==highlight== in a GitHub README**bold**, `code`, or a > [!IMPORTANT] callout on GitHubGitHub does not support the highlight extension — the equals signs render literally around your text.
== highlighted text ====highlighted text==Like bold and italic markers, the equals signs must touch the text on both sides, even in processors that support the syntax.
=single equals===double equals==The extension requires two equals signs on each side. Single equals signs are plain text in every Markdown dialect.
Platform Notes
Obsidian
Native support in both editing and reading views — highlights render with the theme's accent color and can be restyled with CSS snippets.
GitHub
Not supported; ==text== renders literally. Use bold for inline emphasis or [!NOTE]/[!IMPORTANT] alert callouts for block-level attention.
Discord
Not supported — the equals signs appear as typed. Bold and bold-italic are the available standout styles in messages.
Notion
The == syntax is not parsed. Notion has its own text and background color highlights, applied through the toolbar or by typing /color commands.
Frequently Asked Questions
How do I highlight text in Markdown?
Wrap it in double equals signs (==text==) on platforms that support the extension, like Obsidian. Where raw HTML is allowed instead, use the <mark>text</mark> tag directly.
Why does ==highlight== not work on GitHub?
GFM has no highlight extension, so the equals signs render literally. Use **bold** for inline standout or > [!IMPORTANT] alert callouts for block-level attention.
What HTML does ==text== produce?
The <mark> element, which browsers render with a yellow background by default. It carries the meaning "relevant in this context", distinct from the importance of <strong>.
Is highlighting part of standard Markdown?
No. It is extended syntax supported by Obsidian, Typora, iA Writer, and parser plugins (like markdown-it-mark), but absent from CommonMark and GFM.
How do I change the highlight color?
Style the <mark> element with CSS wherever you control the stylesheet. In Obsidian, themes and CSS snippets can restyle highlights; plain Markdown has no color syntax.
Related Syntax
Bold
Learn how to make text bold in Markdown using double asterisks or underscores.
Strikethrough
Learn how to strike through text in Markdown using double tildes (~~text~~).
Blockquotes
Learn how to create blockquotes in Markdown with the > character, including multi-paragraph quotes, nested quotes, callouts/admonitions, and lazy continuation rules.
Related Tools
Obsidian Markdown Cheat Sheet
Obsidian-specific Markdown syntax including wikilinks and callouts
Markdown Cheat Sheet
Complete Markdown syntax reference with interactive examples
Online Markdown Editor
Write Markdown with a formatting toolbar, local autosave, callouts, math, diagrams, file open, and live preview