Markdown Formatter
Normalize Markdown spacing and lists to make Markdown documents easier to read, edit and maintain.
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.
How to use this tool
- Paste your Markdown into the input box.
- Click Run Tool. Asterisk bullets become dashes, three-or-more blank lines become one, and the document ends with a single newline.
- 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.