Obsidian markdown cheat sheet
Updated
Obsidian reads standard markdown (CommonMark plus GFM tables, task lists, footnotes, math and mermaid) and adds its own layer: [[wikilinks]], ![[embeds]], thirteen callout types that can fold, ==highlight==, %%comments%%, #tags and typed YAML properties. Everything below is taken from Obsidian Help; the last table lists what will not survive a trip to GitHub.
Basics that match GFM
Emphasis, code, strikethrough
**bold** *italic* ***both*** ~~struck~~ `inline code`bold italic both struck inline code
Underscores work too. Obsidian shows the markers in Live Preview until the cursor leaves the line; Reading view hides them.
Task list with custom states
- [ ] Incomplete
- [x] Complete
- [?] Any character is allowed inside the brackets- Incomplete
- Complete
- Any character is allowed inside the brackets (theme-dependent)
Obsidian accepts any character in the box; themes decide how [?], [!] or [-] look. Other apps render them as plain text.
Highlight and comments
==Highlight==
This is ==highlighted== and ==๐ด colour-coded== text.Two equals signs on each side, rendered as <mark>. Not GFM: GitHub shows the = signs. Obsidian suggests an emoji right after the opening == to colour-code highlights.
%%Comments%%
Visible text %%hidden inline comment%% more visible text.
%%
A block comment: everything until the next %% is hidden in Reading view.
%%Obsidian-only. For a comment that other markdown apps also hide, use <!-- HTML comment --> instead.
[[Wikilinks]]
Obsidian links by note name, not by path. Type [[ to get autocomplete; the link stays valid when you rename the note because Obsidian updates every reference.
Note, alias, heading, block
[[Three laws of motion]]
[[Three laws of motion|Newton]]
[[About Obsidian#Links are first-class citizens]]
[[2023-01-01#^37066d]]Characters that break a link target: # | ^ : %% [[ ]]. A link in a table cell must escape its pipe: [[Note\|alias]].
Portable alternative: markdown link
[Newton](Three%20laws%20of%20motion.md)Newton
Turn off "Use [[Wikilinks]]" in Settings โ Files and links and Obsidian writes this form, which GitHub, VS Code and static site generators understand.
![[Embeds]]
Embed a note, a section, an image with size, a PDF page
![[Internal links]]
![[Internal links#^b15695]]
![[Engelbart.jpg|100x145]]
![[Document.pdf#page=3&height=400]]Same syntax as a wikilink with ! in front. Width-only (|100) scales proportionally; a canvas embed shows shapes but not card text.
Callouts
A blockquote whose first line is [!type] becomes a coloured callout. The identifier is case-insensitive; text after it on the same line is the title.
Callout with custom title
> [!tip] Callouts can have custom titles
> Like this one.Tip: Callouts can have custom titles Like this one.
Without a title the type name is used. Outside Obsidian (and GitHub, which only knows NOTE/TIP/IMPORTANT/WARNING/CAUTION) the [!tip] shows as text.
Foldable: - collapsed, + expanded
> [!faq]- Are callouts foldable?
> Yes! In a foldable callout, the contents are hidden when the callout is collapsed.
> [!info]+ Open by default
> A plus sign expands the callout by default.FAQ: Are callouts foldable? โธ (collapsed)
Info: Open by default โพ A plus sign expands the callout by default.
The fold marker goes directly after the closing bracket, before the title. GitHub alerts have no equivalent โ use <details> there.
Nested callouts
> [!question] Can callouts be nested?
>
> > [!todo] Yes!, they can.
>
> > > [!example] You can even use multiple layers of nesting.Question: Can callouts be nested?
Todo: Yes!, they can.
Example: You can even use multiple layers of nesting.
Each level is one more > prefix, exactly like nested blockquotes.
Properties (front matter)
YAML block at the top of the note
---
title: Three laws of motion
tags:
- physics
- classical/mechanics
aliases:
- Newton's laws
date: 2020-08-21
reviewed: 2020-08-21T10:30:00
published: true
source: "[[Principia]]"
---Types: text, list, number, checkbox (true/false), date, date & time, plus the special tags type. A wikilink in a property must be quoted. Markdown is not rendered in properties, and nested YAML is not supported.
Math and diagrams
MathJax
Inline $e^{2i\pi} = 1$ and a block:
$$
\begin{vmatrix}a & b\\ c & d \end{vmatrix}=ad-bc
$$Same $ and $$ delimiters as GitHub; Obsidian renders them with MathJax in Live Preview and Reading view.
Mermaid with links into the vault
```mermaid
graph TD
Biology --> Chemistry
class Biology,Chemistry internal-link;
```The internal-link class turns nodes into links to notes of the same name; quote names that contain special characters. Those links do not appear in Graph view.
Footnotes
Referenced and inline
A claim.[^1] Another with an inline note.^[Inline footnotes render in Reading view only.]
[^1]: The referenced footnote.
Continuation lines start with two spaces.The ^[inline] form is Obsidian (and Pandoc) only; GitHub shows it as text.
Dataview and other plugin syntax
Dataview query block (community plugin)
```dataview
TABLE date, status
FROM #meeting
SORT date DESC
```Not Obsidian markdown โ it only works with the Dataview community plugin installed, and exports as a literal code block everywhere else. Same for ```tasks, ```query and inline `= this.file.name` fields.
All callout types and aliases
Write > [!type], optionally followed by - or + to fold, then a title. Aliases render identically to their base type.
| Type | Aliases | Typical use |
|---|---|---|
> [!note] | โ | Default; any unknown type falls back to it |
> [!abstract] | summary, tldr | Short summary at the top of a note |
> [!info] | โ | Background information |
> [!todo] | โ | Open work |
> [!tip] | hint, important | Advice |
> [!success] | check, done | Completed / positive outcome |
> [!question] | help, faq | Open question |
> [!warning] | caution, attention | Something to watch out for |
> [!failure] | fail, missing | Something that did not work |
> [!danger] | error | Risk of damage or data loss |
> [!bug] | โ | Known defect |
> [!example] | โ | Worked example |
> [!quote] | cite | Quotation with a source |
Link syntax reference
| You want | Type this | Notes |
|---|---|---|
| Link to a note | [[Three laws of motion]] | Vault-wide name; add a folder path from the vault root if two notes share a name |
| Link with display text | [[Three laws of motion|Newton]] | Text after | is shown instead of the note name |
| Link to a heading | [[Note#Heading]] | Same note: [[#Heading]]; nested: [[Note#Heading#Subheading]] |
| Link to a block | [[Note#^37066d]] | The block needs a ^id at the end of its line (or on its own line after lists/tables) |
| Markdown-style link | [Newton](Three%20laws%20of%20motion.md) | Spaces must be %20-encoded; works in other markdown apps too |
| Link to a non-markdown file | [[Figure 1.png]] | Extension required for anything that is not a note |
| External link | [Obsidian Help](https://help.obsidian.md) | Spaces in the URL: %20 or wrap the URL in < > |
| Human-readable block id | Some paragraph. ^quote-of-the-day | Only Latin letters, numbers and dashes |
Embed syntax reference
| Embed | Type this |
|---|---|
| Whole note | ![[Internal links]] |
| One heading section | ![[Note#Heading]] |
| One block | ![[Internal links#^b15695]] |
| Image | ![[Engelbart.jpg]] |
| Image, width ร height | ![[Engelbart.jpg|100x145]] |
| Image, width only | ![[Engelbart.jpg|100]] |
| External image with width |  |
| Audio | ![[Excerpt.ogg]] |
| PDF at page 3, 400 px tall | ![[Document.pdf#page=3&height=400]] |
| Canvas | ![[My canvas.canvas]] |
| A list (give it a block id first) | ![[My note#^my-list-id]] |
Obsidian vs GitHub Flavored Markdown
| Feature | Obsidian | GFM / github.com |
|---|---|---|
| Links between documents | [[Note]] wikilinks (also [text](Note.md)) | [text](path.md) only |
| Embedding another file | ![[Note]], ![[file.pdf#page=3]] | Images only:  |
| Image size | ![[img.png|100x145]] or  | Not in markdown; <img width=โฆ> |
| Highlight | ==text== | None (use <mark>) |
| Comments | %%hidden%% and <!-- --> | <!-- --> only |
| Callouts | > [!tip]- Title (13 types, foldable) | > [!NOTE] (5 types, not foldable, github.com only) |
| Tags | #tag, #parent/child | None; # at line start is a heading |
| Front matter | YAML properties with typed values | Rendered as a table on github.com, otherwise raw |
| Task list | - [ ] / - [x] / any char: - [?] | - [ ] / - [x] only |
| Inline footnote | ^[inline note] and [^1] | [^1] only (github.com) |
| Math | $inline$ and $$block$$ (MathJax) | $inline$, $$block$$, ```math (github.com) |
| Mermaid | ```mermaid, with internal-link class | ```mermaid (github.com) |
| Strikethrough | ~~text~~ | ~~text~~ or ~text~ |
| Table cell pipe inside a wikilink | [[Note\|alias]] | \| escapes the pipe |
Is Obsidian markdown the same as GitHub markdown?
Mostly. Obsidian reads CommonMark plus the GFM tables, task lists, strikethrough and footnotes, and renders math and mermaid like GitHub. It adds [[wikilinks]], ![[embeds]], ==highlight==, %%comments%%, 13 callout types with fold markers, #tags and typed YAML properties, none of which GitHub understands. A note that uses only the shared subset renders identically in both.
How do I make a callout in Obsidian?
Write a blockquote whose first line is [!type], for example > [!warning] Title, then the body on the following > lines. Append - after the bracket for a callout that starts collapsed or + for one that starts expanded. The type is case-insensitive; unknown types render as note.
What is the difference between [[wikilink]] and [markdown](link) in Obsidian?
Both resolve to the same note. Wikilinks use the note name, get autocomplete, and are rewritten automatically on rename. Markdown links need the path with %20 for spaces but survive outside Obsidian (GitHub, Hugo, VS Code). Settings โ Files and links โ "Use [[Wikilinks]]" controls which form Obsidian writes for you.
How do I highlight text in Obsidian?
Wrap it in double equals signs: ==like this==. It renders as a <mark> element. Add an emoji right after the opening == to colour-code highlights visually. Other markdown apps that do not support ==highlight== show the equals signs.
How do I embed a note or image in another note?
Prefix a wikilink with an exclamation mark: ![[Note]] embeds the whole note, ![[Note#Heading]] one section, ![[Note#^blockid]] one block, ![[image.png|300]] an image at 300 px wide, and ![[file.pdf#page=3]] a PDF opened at page 3.
What goes in Obsidian properties (front matter)?
A YAML block between --- lines at the very top of the file. Property names must be unique in a note; values are typed (text, list, number, checkbox, date, date & time) and a name keeps the same type across the whole vault. tags, aliases and cssclasses are the built-in list properties. Markdown is not rendered inside properties and nested YAML is unsupported.
Will my Obsidian notes render correctly on GitHub or a website?
Only the shared subset will. Wikilinks, embeds, highlights, %% comments, tags and foldable callouts show up as literal text elsewhere. For portable notes, switch Obsidian to markdown links, use <!-- --> comments, prefer > [!NOTE] / [!TIP] / [!IMPORTANT] / [!WARNING] / [!CAUTION] which GitHub also renders, and keep plugin blocks like dataview out of pages you publish.
Related tools and sheets
Generate a properties block with the front matter generator, build tables with the table generator, convert a note to PDF or Word, or share a note as a link (the shared subset renders; wikilinks do not). See also the Notion sheet and the flavor comparison.