Markdown Formatter

Normalize Markdown spacing and lists to make Markdown documents easier to read, edit and maintain.

Ad space — place your AdSense unit here after approval.
Your result will appear here.

Markdown Formatter online

Tidy a Markdown document's mechanics — unify bullet markers, collapse excess blank lines, normalise line endings — without touching a word of the content.

Quick answer: Paste Markdown to normalize spacing and list formatting before publishing or editing.

How to use this tool

  1. Paste your Markdown into the input box.
  2. Click Run Tool. Asterisk bullets become dashes, three-or-more blank lines become one, and the document ends with a single newline.
  3. Copy the cleaned Markdown from the result panel.

Common uses

Normalising notes pasted from several sources into one house style, cleaning a README before committing it, preparing Markdown for a static-site generator that is picky about list markers, and removing the vertical sprawl that accumulates in long-lived documents.

How it works

The formatter makes three mechanical passes: Windows line endings become Unix newlines; lines starting with * or a loose - are rewritten as tidy - bullet items; and any run of three or more newlines collapses to a single blank line, with the document trimmed and finished with exactly one trailing newline. Nothing else is interpreted — headings, emphasis, tables and code fences pass through byte-for-byte, which is the point: this is housekeeping, not editing.

Worked example

A fragment like

* first item
* second item



Next paragraph.

comes back as

- first item
- second item

Next paragraph.

Same words, same meaning — one consistent list style and sane spacing throughout.

Privacy and browser processing

Your document is formatted in your browser with JavaScript — it is never uploaded or stored.

Frequently asked questions

Will it rewrap long lines or fix headings?

No. Line wrapping, heading hierarchy, table alignment and link checking are deliberately out of scope; the tool only normalises bullets, blank lines and line endings. Pair it with a linter (markdownlint) for style rules.

Is anything inside code fences touched?

The passes are line-based and do not track fences, so a fenced block containing a line that starts with "* " or several blank lines would be normalised too. Check code samples after formatting if your document embeds such blocks.

Why unify bullets to dashes?

Mixed * and - lists render identically but diff terribly and some generators warn on them. A single marker keeps version-control diffs honest. The dash was chosen as the more common house style.

Does it change my content?

Words, links, images and markup survive unchanged; only bullet markers, surplus blank lines and line endings move. If a diff shows anything else, it came from those three passes by design.

Is my document uploaded?

No. Formatting runs in your browser; nothing is sent anywhere.

Related tools

Ad space