A free Markdown checker and validator. Paste your Markdown for instant, line-by-line feedback and a live preview — everything runs in your browser.
**, __, ~~, or backticks that never close on a line.``` fences left open across the document.Most Markdown that renders wrong comes down to a handful of small syntax slips. Here are the ones checker.md catches, with the correct Markdown syntax for each.
A Markdown link is [text](url). It breaks when the target is empty, the closing parenthesis is missing, or the protocol is mistyped — [docs](), [docs](htp://example.com.
[docs](https://example.com) — no space before the (, and a full https://.
An image is a link with a leading !: . Dropping the !, leaving the path empty, or putting a space before the ( all stop it rendering.
 — and always write alt text for accessibility.
A table needs a header row, a | --- | --- | separator, then body rows — and every row must have the same number of columns as the header. A missing or extra | throws the whole table off.
count the pipes. If the header has three columns, every row needs three.
Fenced code blocks open and close with three backticks (```). An odd number of fences means one is unclosed, and everything after it renders as code.
make sure every opening ``` has a matching closing ```.
Inline formatting has to close on the same line. A stray **bold, _italic, or ~~strikethrough with no closing marker bleeds into the rest of the sentence.
pair every marker — **bold**, *italic*, ~~struck~~.
Headings should step down one level at a time. Jumping from # (H1) straight to ### (H3), or using several H1s, hurts document structure and accessibility.
one H1 per document, then increment headings by a single level.
A quick reference for the Markdown syntax checker.md understands — headings, links, images, tables, code, and the GitHub-Flavored Markdown extras. Paste any of these into the checker above to see them validated and previewed.
| Element | You type | Notes |
|---|---|---|
| Heading | # H1 … ###### H6 | One # per level; don't skip levels. |
| Bold | **bold** | Or __bold__. |
| Italic | *italic* | Or _italic_. |
| Bold + italic | ***both*** | |
| Strikethrough | ~~struck~~ | GitHub-Flavored Markdown. |
| Inline code | `code` | Backticks around code. |
| Code block | ```lang … ``` | Fences must come in pairs. |
| Link | [text](https://url) | No space before the (. |
| Image |  | Note the leading !. |
| Blockquote | > quoted text | Start the line with >. |
| Unordered list | - item | Or * / +. |
| Ordered list | 1. item | Numbers can all be 1.. |
| Task list | - [ ] todo · - [x] done | GFM checkboxes. |
| Table | | A | B | + | --- | --- | | Separator row sets the columns. |
| Horizontal rule | --- | Three or more dashes on their own line. |
| Line break | Two spaces at end of line | Or a blank line for a new paragraph. |
| Underline | <u>text</u> | Not native Markdown; many renderers strip it — bold or italic are safer. |
Markdown is a lightweight markup language for formatting plain text with simple symbols — # for headings, ** for bold, - for lists — that render as clean HTML. It's the default for README files, GitHub, docs, and most note-taking apps.
A Markdown file is a plain-text file with a .md extension that uses Markdown syntax. Because it's just text, it opens in any editor and stays readable even before it's rendered.
Broken links and images, heading structure, unclosed formatting and code fences, empty list items, table column mismatches, bare URLs, and style nits like trailing whitespace and hard tabs. See the full list above.
Paste it into the checker at the top of this page. checker.md validates your Markdown live as you type and lists any issues by line number, alongside a rendered preview — no upload, sign-up, or install.
Yes. The checker and preview understand GitHub-Flavored Markdown (GFM) extras including tables, task-list checkboxes, strikethrough, and fenced code blocks.
It's a Markdown checker and validator that runs in your browser. Like a linter, it flags syntax problems and style nits by line — but there's nothing to install or configure, and it also gives you a live rendered preview.
No. Everything runs locally in your browser. Your text is never sent to a server, stored, or logged.
Yes — completely free, with no account, sign-up, or install.
No. It's a single web page that works in any modern browser. Open it and paste your Markdown.
Get notified when we add new checks.
No spam. Just the occasional note when checks are added.
Interested in this project or domain? Reach out via the form above.