The complete Markdown syntax reference for Obsidian — standard formatting, Obsidian-specific extensions, callouts, code blocks, Mermaid diagrams and LaTeX equations.
# H1 — Page title (use once per note) ## H2 — Major section ### H3 — Subsection #### H4 — Minor section ##### H5 ###### H6
Obsidian uses H1 for the note title in the outline panel. Recommended practice:
# once per note (matching the filename) — or skip H1 and let the filename serve as the title.**bold text** *italic text* ***bold and italic*** ~~strikethrough~~ ==highlight== `inline code` > blockquote --- (horizontal rule) \*escaped asterisk\*
Bold: **text** or __text__
Italic: *text* or _text_
Highlight: ==text== renders with a yellow background — Obsidian-specific, not standard Markdown.
Strikethrough: ~~text~~ — GFM extension.
Subscript: H~2~O (requires the Markdown Formatting Assistant plugin or Pandoc export).
Superscript: E=mc^2^ (same caveat).
- Bullet item
- Another item
- Nested item (indent 2 spaces)
- Deeper nesting
1. Ordered item
2. Second item
1. Nested ordered
- [ ] Unchecked task
- [x] Completed task
- [/] In progress (Obsidian)
- [-] Cancelled (Obsidian)
- [>] Forwarded (Obsidian)Obsidian supports extended checkbox states beyond standard [ ] and [x]:
[ ]To do[x]Done[/]In progress[-]Cancelled[>]Forwarded[?]Question[!]Important[*]StarThese extended states are styled by your theme and the Tasks plugin can filter by them.
# Internal wikilinks [[Note Title]] [[Note Title|Display Text]] [[Note Title#Heading]] [[Note Title^block-id]] # External links [Link text](https://example.com) [Link with title](https://example.com "Tooltip") # Embed notes ![[Note Title]] ![[Note Title#Section]] ![[image.png]] ![[image.png|300]] (resize) ![[document.pdf#page=3]]
[[ and start typing — Obsidian autocompletes from your vault.^my-block at the end of any paragraph, then link to it with [[Note^my-block]].! — a note, heading section, block, image or PDF page renders inline.[[New Note]] files are created.Callouts are Obsidian's styled alert boxes — more powerful than plain blockquotes. They render with icons and colours based on their type.
> [!note] > This is a note callout. > [!warning] Custom Title > Warning with a custom title. > [!tip]+ Collapsible (open by default) > Content here. > [!danger]- Collapsible (closed by default) > Hidden until clicked.
All callout types:
[!note]
[!abstract]
[!info]
[!tip]
[!success]
[!question]
[!warning]
[!failure]
[!danger]
[!bug]
[!example]
[!quote]
> [!type] — the type determines icon and colour.> [!note] My Title+ (open) or - (closed) after the type.> prefix.```python
def greet(name):
return f"Hello, {name}!"
print(greet("Obsidian"))
```
```dataview
TABLE rating, status
FROM #book
WHERE status = "reading"
SORT rating DESC
```
```mermaid
graph LR
A[Idea] --> B[Note]
B --> C[Linked Note]
```Obsidian uses Prism.js for highlighting. Common supported languages:
python
javascript
typescript
php
bash
sql
css
html
json
yaml
rust
go
java
c
cpp
ruby
swift
kotlin
dataview
mermaid
dataview code blocks are processed by the Dataview plugin as live queries.mermaid blocks render as diagrams natively in Obsidian.| Column A | Column B | Column C | |-----------|:---------:|----------:| | Left | Centre | Right | | aligned | aligned | aligned | | row 3 | data | data |
|---| — left aligned (default)|:--:| — centre aligned|---:| — right aligned💡 The Advanced Tables community plugin adds an Excel-like tab key navigation and automatic column alignment — highly recommended for anyone who uses tables frequently.
Obsidian renders Mermaid diagrams natively — no plugin needed. Place Mermaid code inside a fenced code block with the mermaid language tag.
```mermaid
flowchart TD
A[Start] --> B{Decision}
B -->|Yes| C[Do this]
B -->|No| D[Do that]
C --> E[End]
D --> E
``````mermaid sequenceDiagram Alice->>Bob: Hello Bob-->>Alice: Hi! Alice->>Bob: How are you? ```
flowchartProcess flows and decision treessequenceDiagramSystem interaction sequencesclassDiagramObject-oriented class relationshipsganttProject timelinespiePie / donut chartsgitGraphGit branch visualisationmindmapMind maps (Mermaid 9+)timelineHistorical timelines# Inline equation
Einstein's formula: = mc^2$
# Block equation
$$
\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}
$$
# Matrix
$$
\begin{pmatrix}
a & b \\
c & d
\end{pmatrix}
$$$ — renders within a paragraph.$$ — renders centred on its own line.mk to wrap text in $ $ automatically.--- title: My Note date: 2026-04-01 status: active tags: - project - design rating: 4 author: Jane Doe url: https://example.com aliases: - My Note Alias --- Note content starts here.
true/false to control which notes Obsidian Publish includes.All custom fields are queryable with Dataview: TABLE rating WHERE status = "active"
Add metadata anywhere in a note body with rating:: 4 — Dataview reads these as field values without requiring frontmatter YAML.
Text with footnote[^1] then later [^1]: The footnote text. Obsidian renders them as clickable superscripts.
%% This is a comment %% — Obsidian shows it in editing mode but hides it in Reading view and Publish.
Term\n: Definition — supported by some Obsidian themes; may require the Definition List plugin.
![[Note#Section]] embeds only a specific heading section, and ![[Note^block-ref]] embeds a single block.
Prefix each line with >. Add an empty > line to create paragraph breaks within the same blockquote.