← All tools
Free tool · Local processing

Markdown Cleaner

Tidy Markdown without losing its structure, or turn it into plain text. Keep your original, preview the result, and copy only when you are ready.

0 / 20,000 UTF-16 units

Clean Markdown keeps the structure; Plain text removes formatting and keeps link labels and URLs. Everything runs in this tab. No text is sent or saved, and long pastes are never cut.

Output mode: Clean Markdown

Enter Markdown or load the sample to begin.

Cleanup, preview and export

Clean Markdown standardizes CommonMark and GitHub-flavored Markdown, including tables, tasks, nested lists, references and code. Plain text keeps code, image descriptions, readable lists and tables, and link destinations.

The preview never executes HTML or loads images. Unsafe links are inactive here, but copied Markdown still contains the original HTML and URLs: another renderer may handle them differently.

The input limit is 20,000 UTF-16 units (an astral emoji uses two). Processing stops after 2 seconds, or when an AST or preview exceeds depth 64, 10,000 nodes, or the text result exceeds 100,000 UTF-16 units. A refusal keeps your entire input so you can simplify it and retry.

Frequently asked questions

Should I choose Markdown or plain text?

Choose Markdown to normalize source formatting while keeping its parsed document structure. Choose plain text to remove presentation markers for readable text, retaining useful content such as link labels and destinations. Copy result copies the output for the selected mode, not the visual preview.

What happens to lists, tables and code?

Markdown mode preserves supported CommonMark and GitHub-flavored Markdown structures, including nested lists, tables, references and code blocks, though the source formatting can change. Plain text keeps readable list and table boundaries and literal code content. Unsupported extensions may not behave like your original Markdown editor.

Does the safe preview make exported Markdown safe to execute?

No. The preview keeps raw HTML inert, replaces images with alt text and removes unsafe link destinations from active links. The cleaned source can still contain raw HTML or unsafe URLs, and plain text can retain them as text. Treat copied output according to the destination app; the preview is not an HTML sanitizer for exports.

Want to polish a draft?

Open the editor to review writing suggestions. Your text is not transferred.

Open GenPolish