Markdown · Cleaner · Converter

Markdown Studio

Paste Markdown. Clean common formatting bugs. Strip AI writing tells. Find and replace. Preview the rendered HTML, copy plain HTML, or copy WordPress block code that pastes into Gutenberg without needing the Custom HTML block.

Shortcuts: Ctrl/⌘ F find · Ctrl/⌘ S save .md · Ctrl/⌘ K clean · drop a .md file anywhere

Markdown Input

Rendered Preview

Raw HTML Output

WordPress Block Code

130 words 1,153 chars 1 min read Saved · 11:18 AM
WordPress Block Code — when to use it

The WordPress Block Code output produces Gutenberg block markup (those <!-- wp:paragraph --> comments). Paste it into the WordPress block editor and it converts to native blocks — no Custom HTML block needed.

How to use it

  1. Click Copy WP Code.
  2. In WordPress, open the block editor and switch to Code editor view (top-right menu → Code editor, or Ctrl/⌘ Shift Alt M).
  3. Paste. Switch back to Visual editor. WordPress parses the comments into real blocks (paragraphs, headings, lists, tables, images, quotes, code).

Why this works on WordPress.com

Hosted WordPress.com plans (and many managed hosts) strip arbitrary HTML and disable the Custom HTML block. Gutenberg block markup isn't treated as custom HTML — it's the editor's native serialization format, so it's accepted on every plan.

What converts cleanly

  • Paragraphs, H1–H4 headings, bullet and numbered lists, blockquotes, separators, code blocks, tables, images.
  • Inline bold, italic, strikethrough, links, and inline code stay as standard HTML inside the blocks.
  • Task lists render as / prefixes (Gutenberg has no native task list block).
Markdown Quick Reference

Headings

# H1
## H2
### H3

Emphasis

**bold**   __also bold__
*italic*   _also italic_
***bold italic***
~~strikethrough~~
`inline code`

Lists

- bullet
* also a bullet
+ also a bullet

1. ordered
2. ordered

- [ ] task to do
- [x] task done

Links and Images

[text](https://example.com)
![alt text](image.png)

Code Block (with language)

```python
def hello():
    print("hi")
```

Tables

| Term | Meaning |
|------|---------|
| MD   | Markdown |
| HTML | HyperText Markup |

Blockquote and Rule

> Quoted line.

---
What "Clean Markdown" Fixes
  • Normalizes Windows line endings (\r\n\n).
  • Trims trailing spaces on every line.
  • Collapses duplicate heading markers like ### ## Title down to a single level.
  • Adds the missing space after heading hashes (##Title## Title).
  • Converts and * bullets to -.
  • Normalizes checkboxes (-[ ], - [ ]- [ ]).
  • Forces ordered list markers to N. form.
  • Adds blank lines around headings and code fences so renderers parse them correctly.
  • Normalizes table separator rows.
  • Collapses 3+ blank lines down to 2.
What "Strip AI Tells" Removes

One click cleanup for the typical fingerprints of LLM-generated prose. Run this after Clean Markdown for best results.

  • Curly quotes ("" '') → straight quotes (" ').
  • Em-dashes used as parentheticals (word — word) → comma-comma.
  • Non-breaking spaces and zero-width characters → regular space / removed.
  • Decorative emoji bullets (✨ 🚀 ✅ etc. at start of bullet) → removed.
  • Trailing colons after headings (## Overview:## Overview).
  • Common stock phrases removed where they begin a sentence: "It's important to note that", "It's worth noting that", "In conclusion,", "In summary,", "Furthermore,", "Moreover,", "As we navigate", "In today's fast-paced world,", "In the ever-evolving landscape of".
  • "Delve into" → "explore". "Leverage" → "use". "Utilize" → "use".

This is opinionated. Skim the diff in your editor before publishing — sometimes you actually want an em-dash.

Keyboard Shortcuts
ActionShortcut
Open Find / ReplaceCtrl+F · +F
Find next matchEnter in Find field
Find previousShift+Enter in Find field
Close Find barEsc
Save .mdCtrl+S · +S
Clean MarkdownCtrl+K · +K
Drop a fileDrag a .md or .txt file onto the page
Privacy and Storage

Everything runs in your browser. No content leaves this page. Your draft is saved to localStorage on this domain so it survives refreshes — clear it via Clear All or browser tools.

Drop your .md file to import