Markdown Syntax: The Complete Guide for Beginners

Published on February 1, 2026 · 10 min read

Master every Markdown formatting element — from basic headers and emphasis to advanced tables, task lists, and footnotes. Includes side-by-side source and rendered examples.

Markdown is a lightweight markup language created by John Gruber in 2004. It lets you add formatting to plain text using simple, intuitive syntax — no HTML required. Today Markdown powers GitHub README files, documentation sites, blogging platforms, note-taking apps, and countless developer tools. If you write anything on the web, learning Markdown will save you hours.

This guide covers every standard Markdown element plus popular GitHub Flavored Markdown (GFM) extensions. Each section shows the raw Markdown source alongside the rendered result so you can see exactly what to type.

1. Headings

Create headings by prefixing a line with # symbols. The number of hashes determines the heading level (1–6).

Markdown
# Heading 1 ## Heading 2 ### Heading 3
Result

Heading 1

Heading 2

Heading 3

Tip: Always put a space after the # characters. Most parsers require it, and it improves readability.

2. Bold, Italic & Strikethrough

Wrap text with asterisks or underscores for emphasis. Double asterisks for bold, single for italic, triple for both. Strikethrough uses double tildes.

Markdown
**bold text** *italic text* ***bold and italic*** ~~strikethrough~~
Result
bold text
italic text
bold and italic
strikethrough

3. Lists

Markdown supports both ordered (numbered) and unordered (bulleted) lists. You can nest lists by indenting with two or four spaces.

Unordered Lists

Markdown
- First item - Second item - Nested item - Another nested - Third item
Result
  • First item
  • Second item
    • Nested item
    • Another nested
  • Third item

Ordered Lists

Markdown
1. Step one 2. Step two 3. Step three
Result
  1. Step one
  2. Step two
  3. Step three

Create hyperlinks with square brackets for the text and parentheses for the URL. You can also add an optional title that appears on hover.

Markdown
[Visit Google](https://google.com) [Hover me](https://example.com "Example Site")
Result

5. Images

Images use the same syntax as links, but with an exclamation mark ! in front. The text inside brackets becomes the alt text for accessibility.

Markdown
![Alt text](image-url.jpg "Title")
Result
(Renders an image with the given alt text and optional title)

6. Code

Inline code uses single backticks. Code blocks use triple backticks (or indent by four spaces). Add a language identifier after the opening backticks for syntax highlighting — essential when documenting APIs or sharing snippets through tools like our JSON Formatter.

Inline Code

Markdown
Use `console.log()` to debug.
Result
Use console.log() to debug.

Fenced Code Blocks

Markdown
```javascript function greet(name) { return `Hello, ${name}!`; } ```
Result
function greet(name) {
  return `Hello, ${name}!`;
}
Pro tip: When sharing JSON in Markdown, format it first with our JSON Formatter for clean, readable output. Need to embed binary data? Use our Base64 Encoder/Decoder.

7. Blockquotes

Prefix lines with > to create blockquotes. You can nest them and combine with other Markdown elements.

Markdown
> "Any fool can write code that a > computer can understand." > > — Martin Fowler
Result
"Any fool can write code that a computer can understand."

— Martin Fowler

8. Tables

Create tables using pipes | and hyphens -. Colons control column alignment. Tables are a GFM extension, supported on GitHub, GitLab, and most modern Markdown renderers.

Markdown
| Tool | Purpose | |------------|-------------------| | JSON | Data formatting | | Base64 | Encoding/decoding | | UUID | ID generation | | Regex | Pattern matching |
Result
ToolPurpose
JSONData formatting
Base64Encoding/decoding
UUIDID generation
RegexPattern matching

9. Horizontal Rules

Create a horizontal line with three or more hyphens, asterisks, or underscores on their own line.

Markdown
Above the line --- Below the line
Result
Above the line
Below the line

10. Task Lists (GFM)

Task lists — also called checklists or to-do lists — are a GitHub Flavored Markdown extension. Use - [ ] for unchecked and - [x] for checked items.

Markdown
- [x] Write the introduction - [x] Add code examples - [ ] Proofread the article - [ ] Publish to blog
Result
  • ☑ Write the introduction
  • ☑ Add code examples
  • ☐ Proofread the article
  • ☐ Publish to blog

11. Footnotes

Footnotes let you add references without cluttering the text. Define them anywhere in the document — they render at the bottom automatically.

Markdown
Markdown was created by John Gruber[^1] in 2004. [^1]: With contributions from Aaron Swartz.
Result
Markdown was created by John Gruber1 in 2004.

1 With contributions from Aaron Swartz.

12. More GFM Extensions

GitHub Flavored Markdown adds several useful features beyond standard Markdown:

Autolinked URLs

GFM automatically turns URLs into clickable links — just type https://example.com and it becomes a hyperlink. No brackets needed.

Emoji Shortcodes

Markdown
:rocket: :heart: :white_check_mark:
Result
🚀 ❤️ ✅

Syntax-Highlighted Code Blocks

GFM supports language-specific syntax highlighting for over 200 programming languages. Add the language name after the opening triple backticks: ```python, ```json, ```bash, and so on.

Best Practices for Writing Markdown

Quick Reference Cheat Sheet

ElementSyntax
Heading# H1###### H6
Bold**text**
Italic*text*
Link[text](url)
Image![alt](url)
Code (inline)`code`
Code block```lang … ```
Blockquote> text
Unordered list- item
Ordered list1. item
Horizontal rule---
Table| col | col |
Task list- [x] done
Footnote[^1]
Strikethrough~~text~~

Start Writing Markdown Today

Markdown's power lies in its simplicity. You don't need a rich text editor — any plain text file will do. Start with headings, bold, and lists. Once those feel natural, layer in code blocks, tables, and task lists. Within a few days, Markdown will become second nature.

Practice by writing a README for your next project, drafting documentation, or formatting notes. Combine Markdown skills with our free developer tools to be even more productive:

🔧 JSON Formatter 🔐 Base64 Encoder 🆔 UUID Generator 🔍 Regex Tester