MDConverter
Universal In-Browser Converter
100% Client-Side Private

What Is Markdown? A Plain-English Explanation

By the MDConverter team · Updated · 6 min read

Quick answer

Markdown is a lightweight markup language: you format plain text with simple symbols — # for a heading, ** for bold, - for a bullet point — and an app turns those symbols into formatted text. John Gruber created it in 2004 so that text written for the web would stay readable even before it is formatted. Today it is the native format of GitHub, Obsidian, Reddit, Discord, documentation sites and AI assistants such as ChatGPT and Claude, and Markdown files end in .md.

How Markdown works

You write plain text. A Markdown renderer — built into GitHub, your notes app, a chat app or a converter — reads the symbols and displays the formatted version. The symbols were chosen to look like the way people already decorated plain-text email: asterisks around a word for emphasis, a dash at the start of a line for a list item, a > for quoted text.

Because the source is just text, it opens in any editor on any device, it is small, and it never depends on one company's file format. The trade-off is that you see the symbols while you write, unless your editor hides them.

The same note as source and as rendered output
Markdown
# Weekly update

The launch is **on track**. Two items are *still open*:

- Finish the pricing page
- Review the [release notes](https://example.com/notes)

> Ship it on Thursday.
Result

Weekly update

The launch is on track. Two items are still open:

Ship it on Thursday.

Everything on the left is ordinary text you can type anywhere. The right side is what a Markdown app shows.

A short history: from Markdown.pl to CommonMark

  • 2004 — the original. John Gruber published Markdown on his site Daring Fireball, with feedback from Aaron Swartz. It shipped as a syntax description plus a Perl script, Markdown.pl, that converted text to HTML.
  • 2004–2014 — many dialects. The original description left edge cases open (how far to indent a nested list, what a blank line inside a list means), so each implementation filled the gaps differently. Sites added their own extras: tables, fenced code blocks, footnotes.
  • 2014 — CommonMark. A group led by John MacFarlane (the author of Pandoc) published CommonMark, a precise specification with hundreds of test cases, so the same text renders the same way everywhere.
  • 2016 — an official file type. RFC 7763 registered text/markdown as the media type for Markdown files.
  • 2017 — GitHub Flavored Markdown (GFM). GitHub published its dialect as a strict superset of CommonMark that adds tables, task lists, strikethrough and automatic links. GFM is what most people mean by "Markdown" today, and it is what every example on this site follows.

The differences between dialects are covered in CommonMark vs GFM.

Where Markdown is used

  • Software and documentation: every GitHub and GitLab README, issue and pull request; documentation generators such as MkDocs, Docusaurus and Read the Docs; static site generators such as Hugo, Jekyll and Astro.
  • Notes and writing apps: Obsidian, Logseq, Joplin, Bear, iA Writer and Typora store notes as .md files. Notion and Google Docs accept Markdown shortcuts as you type and can import and export it.
  • Chat and forums: Discord, Reddit, Stack Overflow and Microsoft Teams format messages with Markdown. Slack and WhatsApp use their own Markdown-like syntax with different rules (see Markdown to Slack).
  • Data science: text cells in Jupyter notebooks are Markdown.
  • Books and e-readers: many authors write in Markdown and publish an EPUB with Markdown to EPUB.
  • AI assistants: ChatGPT, Claude, Gemini and most other chatbots write their answers in Markdown, which the chat window renders as headings, lists and tables.

Why ChatGPT and other AI assistants answer in Markdown

Language models are trained on huge amounts of text from the web, and much of the best-structured text — documentation, READMEs, Q&A sites — is written in Markdown. It gives a model a compact way to express structure (a heading, a numbered step, a table) using ordinary characters, and chat interfaces render it instantly.

The catch appears when you copy the raw text out of the chat, for example with a copy button or from an API response. You get the source, not the formatting: **bold** arrives as literal asterisks and ## as hash signs, and tables arrive as rows of pipes. That is why pasting into Word or an email often looks broken. Converting the Markdown fixes it:

What is an .md file?

An .md file (sometimes .markdown) is a plain-text file written in Markdown. Nothing about it is proprietary: rename it to .txt and it opens in Notepad or TextEdit with the symbols visible.

Markdown vs Word and other rich-text formats

Markdown Word / Google Docs
What you edit Plain text with symbols Formatted text (what you see is what you get)
File size and speed Tiny, opens instantly Larger, needs the right app
Works in Git, diffs and code review Yes, line by line No (binary or zipped XML)
Layout control (columns, page margins, fonts) Minimal Full
Comments and tracked changes No Yes
Readable in 20 years without special software Yes Usually, with converters

Many people use both: draft and store content in Markdown, then convert to Word or PDF when someone needs a formatted document. For how Markdown relates to the web's own markup language, see Markdown vs HTML.

How to start writing Markdown

  1. Open any text editor and type a heading line that starts with # .
  2. Add a paragraph, a list with - items and a word wrapped in **.
  3. Preview it, or paste it into a converter such as Markdown to HTML to see exactly how it was interpreted.

The Learn Markdown tutorial walks through every element with live examples, and the Markdown cheat sheet keeps the syntax on one page.

Which apps support Markdown?

Support ranges from full GitHub Flavored Markdown to a handful of shortcuts. Checked in October 2026.

AppSupportedNotes
GitHub / GitLabYesFull GFM in files, issues, pull requests and comments.
Obsidian, Typora, iA WriterYesNotes are stored as .md files.
RedditYesMarkdown mode in the post editor, including tables.
DiscordPartlyBold, italic, headings, lists, quotes, code and masked links. No tables or inline images.
Microsoft TeamsPartlyCommon shortcuts such as **bold** and lists convert as you type.
NotionPartlyShortcuts convert as you type; Markdown import and export.
Google DocsPartlyOptional "Automatically detect Markdown", Paste from Markdown, Markdown download, and native .md editing (rolling out from October 2026).
SlackPartlyIts own "mrkdwn": *bold* with single asterisks, no headings or tables.
WhatsAppPartlyIts own syntax: *bold*, _italic_, ~strike~, plus lists and quotes.
Microsoft Word (desktop)NoNo native Markdown; convert to .docx instead.

Tools for this

Frequently Asked Questions

Frequently Asked Questions About What is Markdown?

Comprehensive answers to common technical, formatting, security, and compatibility questions.

No. Markdown is a markup language: it describes how text should be formatted, but it has no logic, variables or loops. It is closer to a set of typing conventions than to code, which is why non-programmers pick it up in minutes.

Sources

← All Markdown lessons · Markdown cheat sheet