checker.md
Free Markdown checker

Paste Markdown.
Get it checked.

A free Markdown checker and validator. Paste your Markdown for instant, line-by-line feedback and a live preview — everything runs in your browser.

No upload · No sign-up · No install

Markdown
01 / Checks

What it checks

Broken links & imagesEmpty targets, missing parentheses, and mistyped protocols like htp:// or https//.
Heading structureSkipped levels, multiple H1s, empty headings, and duplicate titles that collide as anchors.
Unclosed formattingStray **, __, ~~, or backticks that never close on a line.
Unclosed code fencesAn odd number of ``` fences left open across the document.
Empty list itemsBullets or numbers with nothing after them.
Table alignmentRows whose column count doesn't match the header row.
Bare URLsRaw links pasted in without Markdown link syntax.
Style nitsTrailing whitespace and hard tabs that can render inconsistently.
02 / Mistakes

Common Markdown mistakes — and how to fix them

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.

Broken Markdown links

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://.

Markdown images that don't show

An image is a link with a leading !: ![alt](path.png). Dropping the !, leaving the path empty, or putting a space before the ( all stop it rendering.

![alt text](images/logo.png) — and always write alt text for accessibility.

Markdown tables that don't line up

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.

Unclosed code blocks

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 ```.

Bold and strikethrough that leak

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~~.

Skipped heading levels

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.

03 / Reference

Markdown syntax cheat sheet

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.

ElementYou typeNotes
Heading# H1 … ###### H6One # 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![alt](image.png)Note the leading !.
Blockquote> quoted textStart the line with >.
Unordered list- itemOr * / +.
Ordered list1. itemNumbers can all be 1..
Task list- [ ] todo · - [x] doneGFM checkboxes.
Table| A | B | + | --- | --- |Separator row sets the columns.
Horizontal rule---Three or more dashes on their own line.
Line breakTwo spaces at end of lineOr a blank line for a new paragraph.
Underline<u>text</u>Not native Markdown; many renderers strip it — bold or italic are safer.
04 / FAQ

Frequently asked questions

What is Markdown?

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.

What is a Markdown (.md) file?

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.

What does checker.md check?

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.

How do I check if my Markdown is valid?

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.

Does it support GitHub-Flavored Markdown?

Yes. The checker and preview understand GitHub-Flavored Markdown (GFM) extras including tables, task-list checkboxes, strikethrough, and fenced code blocks.

Is checker.md a Markdown linter?

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.

Is my Markdown uploaded anywhere?

No. Everything runs locally in your browser. Your text is never sent to a server, stored, or logged.

Is it free?

Yes — completely free, with no account, sign-up, or install.

Do I need to install anything?

No. It's a single web page that works in any modern browser. Open it and paste your Markdown.

05 / Keep in touch

Stay in the loop

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.