MarkdownKit

Searchable Markdown reference

Markdown Cheat Sheet

Search 30 working examples, choose where you write, and see what CommonMark, GitHub, Obsidian, Discord, Slack, or Notion supports before you copy.

Interactive reference

Find the syntax that works where you write

Search a task, choose the destination, then copy an example. Partial, unsupported, and unverified entries stay visible so you can see the documented limit or a portable alternative.

Download markdown-cheat-sheet.md →

Showing all 30 entries

Compatibility checked 2026-07-21

basics

Paragraphs

Supported

Separate paragraphs with a blank line. A single wrapped line usually stays in the same paragraph.

Markdown
First paragraph.

Second paragraph.
Output

First paragraph.

Second paragraph.

basics

Headings

Supported

Add one to six hash marks, followed by a space. Chat apps and block editors may support fewer levels.

Markdown
# Page title

## Section title
Output
Page titleSection title

text

Bold and italic

Supported

Use three asterisks when text needs both kinds of emphasis. Some message editors require toolbar formatting instead.

Markdown
***Critical detail***
Output
Critical detail

text

Strikethrough

Not verified

Two tildes are common in GitHub-style Markdown. Slack and Notion use their own single-tilde shortcuts.

Markdown
~~Old wording~~
Output
Old wording

structure

Block quotes

Supported

Start each quoted paragraph with a greater-than sign. Keep a space after the marker for readability.

Markdown
> A useful constraint beats a vague promise.
Output
A useful constraint beats a vague promise.

structure

Unordered lists

Supported

Start each item with a hyphen, asterisk, or plus followed by a space. Hyphens are the easiest to scan in source.

Markdown
- Draft
- Review
- Publish
Output
  • Draft
  • Review
  • Publish

structure

Ordered lists

Supported

Use a number and period for each step. Many renderers calculate the displayed sequence for you.

Markdown
1. Draft
2. Review
3. Publish
Output
  1. Draft
  2. Review
  3. Publish

structure

Nested lists

Supported

Indent child items under their parent. Exact indentation rules vary, so preview deeply nested lists in the target app.

Markdown
- Release
  - Write notes
  - Tag version
Output
  • Release
    • Write notes
    • Tag version

structure

Task lists

Not verified

GitHub-style task items add square brackets after a list marker. They are not part of CommonMark.

Markdown
- [x] Draft
- [ ] Publish
Output
  • ☑ Draft
  • ☐ Publish

code

Inline code

Supported

Wrap a short command, filename, or identifier in backticks. Use double backticks when the content contains one backtick.

Markdown
Run `npm test` before release.
Output

Run npm test before release.

code

Fenced code blocks

Supported

Put three backticks before and after multi-line code. Keep the fences on their own lines.

Markdown
```
const ready = true;
```
Output
const ready = true;

links

Reference links

Supported

Move repeated destinations to definitions at the end of a document. This keeps long source files easier to edit.

Markdown
Read the [release notes][notes].

[notes]: https://example.com/releases
Output

Read the release notes.

links

Images

Supported

Add an exclamation mark before link syntax. Write useful alt text and use a destination that remains reachable.

Markdown
![Diagram of the release flow](release-flow.png)
Output
▧ Diagram of the release flow

structure

Horizontal rules

Supported

Put three hyphens on a line by themselves to separate sections. Leave blank lines around the rule.

Markdown
Before

---

After
Output
Before
After

basics

Hard line breaks

Supported

End a line with two spaces before the newline. A backslash works in CommonMark too, but not every editor preserves it.

Markdown
First line··
Second line
Output

First line
Second line

basics

Escaping Markdown

Supported

Put a backslash before punctuation when you need the marker to appear literally instead of formatting text.

Markdown
\*Not italic\*
Output

*Not italic*

code

Raw HTML

Supported

CommonMark permits raw HTML, but many hosted platforms sanitize or remove it. Do not use HTML for portable documents.

Markdown
<kbd>Ctrl</kbd> + <kbd>K</kbd>
Output
Ctrl + K

text

Emoji shortcodes

Not verified

Colon-wrapped emoji names are a platform extension, not standard Markdown. Available names also vary by workspace.

Markdown
:rocket: Ship it
Output

🚀 Ship it

platform extension

Footnotes

Not verified

GitHub and Obsidian accept bracketed footnote references. Footnotes are not part of CommonMark.

Markdown
A checked claim.[^1]

[^1]: The supporting note.
Output

A checked claim.1

1. The supporting note.

platform extension

GitHub alerts

Partial

GitHub alerts extend block quotes with a typed marker. Keep them rare and provide readable quote content as a fallback.

Markdown
> [!WARNING]
> Back up the file before migration.
Output

The content remains a block quote, but the alert label has no special meaning.

platform extension

Obsidian callouts

Partial

Obsidian turns a typed block quote into a callout and can make it foldable. Other renderers usually show a plain quote.

Markdown
> [!TIP]- Optional detail
> Keep the portable version nearby.
Output

The source remains a readable block quote.

platform extension

Obsidian highlights

Not verified

Two equals signs highlight text in Obsidian. This syntax is not portable Markdown.

Markdown
Review the ==breaking change== first.
Output

Review the breaking change first.

platform extension

Discord spoilers

Not verified

Double vertical bars hide text until a Discord reader reveals it. In portable Markdown, write a clearly labeled details section instead.

Markdown
The result is ||hidden until clicked||.
Output

The result is hidden until clicked.

How to use this Markdown cheat sheet

Start with the destination, not the syntax. A table that works in a GitHub README may turn into plain pipes in a chat message. A pair of double brackets can connect notes in Obsidian but means nothing to a CommonMark renderer. Select the app where the text will be read, then search for the job you need to do.

The compatibility badge answers one narrow question: whether the selected platform documents this exact syntax. Supported means the official source confirms it. Partial means the platform accepts a related form, limits the feature, or turns it into a native block. Not supported is reserved for a documented mismatch. Not verified means the official material does not give enough evidence either way.

Use the Copy button when the source fits your target. If it does not, read the alternative directly below the example. The downloadable Markdown file keeps the source, compatibility summary, and official references together for offline use.

Portable Markdown starts with a small baseline

CommonMark covers the structures most documents need: paragraphs, headings, emphasis, lists, block quotes, code, links, images, thematic breaks, and line breaks. Those features are the safest starting point when the same file must move between repositories, static-site generators, note apps, and document converters.

Extensions solve useful problems, but they narrow portability. Pipe tables and task lists are common in GitHub-style Markdown. Footnotes are available in several writing tools. Alerts, wikilinks, callouts, highlights, and spoilers belong to particular renderers. None of those features is bad; the important part is knowing when the destination owns the behavior.

When you cannot control the renderer, prefer structure over decoration. A short heading travels better than a custom callout. A labeled list travels better than a table in chat. A standard link is safer than a vault-specific wikilink. The source remains readable even when the special rendering disappears.

Common Markdown mistakes and quick fixes

A marker has no space after it

Write # Heading, not #Heading, and - Item, not -Item. Several parsers require the space, and the source is easier to scan with it.

A list continuation is indented at the wrong level

Nested paragraphs, code blocks, and child lists belong under the content of their parent item. If a complex list renders unpredictably, simplify it or preview it in the exact target platform before publishing.

A line break is mistaken for a new paragraph

A blank line creates a paragraph. Two trailing spaces create a hard line break in portable Markdown. Chat editors may use Shift + Enter instead, so copying line-break syntax into a composer can produce a different result.

Raw HTML is treated as portable Markdown

CommonMark permits raw HTML, but hosted platforms often filter tags and attributes. Use HTML only when you control the renderer and sanitization policy. For ordinary documents, prefer Markdown structure.

A platform shortcut is saved as if it were source syntax

Notion and Slack can convert typed markers into native formatting. After conversion, the editor may no longer store the original Markdown characters. That is useful for composing a message, but it is different from rendering a portable .md file.

Move from syntax to a finished result

A cheat sheet is fastest when you already know the outcome you want. For a first document and a more deliberate learning path, open the Markdown Guide. To prepare formatted content for Word, Docs, or a CMS, use the Markdown to Rich Text converter. For source markup, use Markdown to HTML.

Tables have their own editing problems: escaping pipes, keeping column counts consistent, and checking alignment. The Markdown Table Generator handles that work visually, then returns clean source you can test against the selected platform here.

If the destination is a Word document, the Markdown in Word guide compares formatted copy with Pandoc. If your application renders Markdown in Python, the Markdown for Python guide covers parsers, extensions, and sanitization.

Common questions

Frequently asked questions

Is Markdown syntax the same in every app?

No. CommonMark defines a portable baseline, while GitHub, Obsidian, Discord, Slack, and Notion add features or interpret familiar markers differently. Choose your target platform before copying an example.

Why does an entry say Not verified?

It means the platform’s current official documentation does not confirm that exact behavior. MarkdownKit does not turn missing documentation into a claim that the syntax is unsupported.

Can I download the Markdown cheat sheet?

Yes. The direct .md download contains the same 30 syntax entries, compatibility summaries, official sources, and verification date. No email address is required.

Why are unsupported entries still visible?

Seeing the unsupported syntax and its alternative is more useful than having it disappear. Turn on Supported only when you want a shorter list for one platform.

Evidence

Sources and verification

Compatibility and workflow details were last checked on 2026-07-21. Anything we could not confirm is marked “Not verified.”