Free Markdown publishing tool
Markdown to WordPress converter
Paste your Markdown, inspect the reading preview, and copy editable blocks into your WordPress post.
Have a Word file or a Google Docs draft? Preview the conversion before applying it.
See the whole process first: No account, plugin, or AI setup needed.
Import a file, keep source notes, or use more editing tools
Your writing stays in this tab. There is no autosave. Save a private backup before refreshing or leaving. Exporting does not publish or connect to your WordPress account.
Save or restore this workspace
Private backup, not a publishable article. The JSON file includes your source notes, audience, purpose, article, and review questions. It is unencrypted. Keep it private and out of public repositories. It contains no sign-in details or approval.
There is still no autosave. Check that the file is saved on your device before closing this tab. Browser exit warnings can be missed, especially on mobile.
How backups and article exports differ (new tab)Import an article or drafting result
Open a Word .docx, bring Markdown or article JSON, or paste a formatted selection. Preview first. Replace the article or insert writing into it. Nothing is uploaded, and your current writing stays intact until you apply.
Check the import
Insertion keeps your existing title, excerpt, description, filename, source notes, and review notes. Only the imported body is used; imported page details and questions are not added. You can include its title as a section heading below. Replacement keeps the existing import behavior.
Preview where this writing will go
For a selection, place the article cursor between complete blocks, or select complete paragraphs, lists, tables, or code blocks. Then preview here. A partial paragraph or block is refused. Adding to the end needs no selection. Applying saves a checkpoint first. Nothing is changed by previewing.
Reading preview of the conversion
Page details to import
Keep the Word images
Recover embedded PNG and JPEG files with numbered placement notes and the alternative text supplied in Word. Images are not displayed here or uploaded. Linked images and other formats stay as placeholders.
Download before importing. Applying or clearing this import discards the prepared image package. Extract the ZIP, upload the files to your WordPress Media Library, and replace the numbered placeholders yourself. These files are separate from workspace backups and article exports.
Unmapped front matter
These fields will not be imported. Keep any values your destination needs in your original file or private notes.
An import preview is temporary and is not included in workspace backups. Apply the import to keep its article and questions. Supported formats, insertion steps, and examples (new tab)
1. Paste or edit your draft
Up to 60,000 characters of plain text or Markdown. Pasting beyond the limit is rejected in full so the ending is not silently cut off. Rich formatting from Word or Google Docs is not imported by pasting. Select text, then choose a formatting tool. Revisions keeps previous writing in this tab.
0 approximate words; 0 / 60,000 characters
More editing tools and draft history
Edit links, images, and tables, check the draft, or compare earlier versions. Opening these tools keeps your writing and export approval.
Article tables: create or edit
Edit cells without writing pipe-table syntax. Choose a supported article table or create one at the article end. Preparation stays separate until you preview and apply.
Choose an existing table or create one.
Prepare table cells
One line per cell, up to 2,000 characters. Simple Markdown inside cells is supported. Cell edges are trimmed and literal pipes escaped when applying a change. Headers are required for new or changed tables. Scroll the grid horizontally for wider tables.
Review the exact table change
Prepared table preview
Exact source before and after
Table editor is loading. You can edit table Markdown directly.
Up to twelve columns and 100 data rows, edited ten rows at a time. No merged cells or multiline cells. Applying saves an in-tab checkpoint and clears export approval and the linked-image choice. Unsaved preparation is excluded from backups, collections, and exports. Closing clears the preview and keeps prepared cells. Table editing help (new tab)
Article links: add, edit, or remove
Select plain article text or place its cursor, then choose Use current article selection. Place the cursor inside an existing inline link to edit it, or choose one below. No destination page is fetched or verified.
Choose a location or an existing link.
Describe where the link leads, up to 300 characters on one line. Surrounding article text and spaces are kept exactly.
An absolute HTTP or HTTPS address, up to 2,048 characters. No credentials, spaces, quoted titles, or multiline URLs. The entered address is preserved in Markdown.
Review the exact link change
Link editor is loading. You can edit Markdown directly.
Inspect the links in this article
Applying checkpoints previous writing and clears export approval and the WordPress linked-image choice. Article edits invalidate pending locations. Closing this panel clears its preview and keeps preparation. Unsaved link preparation is excluded from backups, collections, and exports; apply first to keep it. Link editing help (new tab)
Add or edit an article image
Use an existing public HTTPS image URL. Select a Word image placeholder or ordinary article text to replace it, or place a new image at the article end. Paragraph breaks keep the image separate. No image is loaded, uploaded, or checked here.
Choose a location before preparing a change.
A direct image file URL, up to 2,048 characters. No credentials, spaces, or quoted titles. The address is preserved as entered.
Describe the image's purpose in this article, up to 500 characters on one line. For an intentionally decorative image, clear this field and select the option below.
Review the exact replacement
Only the selected text is replaced. Added paragraph breaks appear below. The rest of the article is kept exactly.
Image editor is loading. You can edit Markdown directly.
Applying saves a checkpoint and clears export approval and the linked-image choice. For WordPress, open Images for WordPress and explicitly choose linked Image blocks afterward. Other exports keep image Markdown as text. Unsaved image preparation is excluded from backups, collections, and exports; apply it first to keep it. Image editing help (new tab)
Find & replace in the article
Find literal words or phrases in the article body, including Markdown, code, and link addresses. Matches are substrings and do not overlap. Source notes, review notes, and page details are kept. No AI request or upload is made.
Loading article search. You can keep editing while it loads.
Navigation wraps at the ends. Enter in Find text selects the next match; Shift+Enter selects the previous one. Searching keeps review approval.
Replacement text is literal. Leave it empty to delete matching text. Replacements keep the previous workspace as a checkpoint and clear approval. Review formatting and links afterwards.
Review the replacements
Editing the article or search settings clears this preview. The applied change uses the complete current article, not only these examples. Editing and checkpoint help (new tab)
Outline & draft checks
Find unfinished placeholders, repeated passages, empty sections, heading jumps, and paragraphs over 120 approximate words. These suggestions do not verify facts, sources, permissions, grammar, or whether a web address works. How checks work (new tab)
Your section outline
Move a section up or down beside a heading at the same level within its parent. Its deeper subsections move with it; opening text before the first heading stays in place. Moves save a checkpoint in this tab and clear export approval. Review the reading preview afterward.
Run checks when you are ready to review. Nothing is changed automatically.
Links & image handoff
Run draft checks to inspect inline link and image syntax.
Review claims against sources
Choose a short claim, compare it with your source, and record your judgment. Saved records use the existing private review notes: 12 notes total, 500 characters each. They stay in backups, checkpoints, and saved collection entries; article exports exclude them. Passage review help (new tab)
This is a record of your review, not independent fact-checking. Recheck decisions after editing the article or source. An exact text match does not establish accuracy or support.
Select a short excerpt above, or enter evidence from a source you checked yourself. Edit the full source notes under Source notes & review.
Passage review is loading. Ordinary review notes remain available.
Preparing a review does not change writing or approval. Save adds or updates a private note, keeps a checkpoint, and clears approval. Unsaved fields above are excluded from backups. Shorten the combined record to 500 characters; no text is silently truncated. Source references stay as text and are never opened or checked here.
Saved passage reviews
No saved passage reviews yet.
Keep several articles in a private collection
Save up to eight workspaces in one private file. Add or update an article explicitly, then download the collection before leaving. Editing the article does not update its saved entry. This tab has no autosave or account history.
Draft collections are loading. Single-workspace backups and article exports remain available.
Revisions in this tab
Keep a version before changing direction. Checkpoints contain your notes, article, page details, and review questions in this tab's memory only. Imports and article insertions, workspace restores, formatting, section moves, find-and-replace edits, image, link, and table changes, filename suggestions, outline replacements, and removing a review note also keep the previous writing. Checkpoints can be lost when you refresh or leave. Download a private backup before closing.
Compare and recover
Article changes
Compare the selected checkpoint's article body with your current body. Added and removed lines include line endings; unchanged lines are omitted. This view does not merge writing, verify claims, or change export approval. It stays in this tab and is excluded from backups and exports. How to read the comparison (new tab)
Save a checkpoint, then open this comparison.
A download keeps one version in the existing private workspace format, without history, labels, approval, preferences, or sign-in details. Clear this writing desk removes all writing and checkpoints from this tab. Checkpoint and backup help (new tab)
Page details for your publishing destination
Excerpt, description, and filename are optional for WordPress blocks and the WordPress kit. All page fields are required for page Markdown. Copying the body needs only the article; a reading page needs the title and article.
A listing summary, up to 300 characters.
0 / 160 characters
Lowercase letters, digits, and separating hyphens.
2. Preview and continue
Show reading preview
Preview formats and limits
Headings, nested lists, nested single-line bold and italic text, code, quotes, and simple pipe tables. Lists preserve starting numbers and support six levels and 200 single-line items per continuous group. Tables support up to 12 columns and 100 data rows; every row must have the same column count. Inline links with an absolute http:// or https:// address open a new tab when selected; no address is loaded until then. Safe link labels can contain emphasis and code. Images, source HTML, and other link formats stay as text. Inline nesting is limited to 16 levels; multiline or overly complex inline structures stay literal. Your website can render differently.
Paste an article or try the fictional sample to see its reading preview.
Convert reference-style links
Turn references such as [Read the source][source] and [source][] into ordinary inline links before exporting. Matching shortcuts such as [source] are included when a supported definition exists. Preview first; nothing changes until you apply.
Use single-line definitions such as [source]: https://example.com/ at the left edge in a separate paragraph. Identifiers use up to 80 ASCII letters, digits, spaces, periods, hyphens, or underscores and match without case or repeated-space differences. Destinations must be absolute HTTP(S) URLs without credentials or titles. Images, footnotes, duplicate definitions, complex labels, source HTML, and multiline definitions need manual review. Reference conversion limits (new tab)
Preview first, then compare and apply deliberately.
Inspect the proposed article
The first five expanded links are shown below. The exact complete result is available after the reading preview. Other text and line endings are retained. Unresolved items stay unchanged; no URL is visited or verified.
At most 40 findings are displayed. Inspect the complete article if more are reported.
Inspect the exact proposed Markdown
3. Choose your export
Your publishing checklist
Your own reminders, separate from export approval. Checking them does not verify facts or publish anything. Writing or export-choice changes reset the ticks.
Reuse a publishing setup
Keep your destination, title-handling choices, and personal review routine for the next article. Download a profile file, then load it on your next visit. No account or autosave. Applying it changes export choices and clears approval; your article and source notes stay in place.
Publishing profiles are loading. Writing and exports remain available.
Continue in Word
An editable article with common headings, emphasis, links, code, nested lists, and simple tables. The title is optional. Page metadata, source notes, private review notes, and revision history are excluded. Source HTML and images in Markdown stay literal. The file is unencrypted; inspect your actual editor before sharing. Word handoff guide (new tab)
Take your Markdown
Copy Markdown text or save a .md file. No excerpt, description, filename field, or front matter is required. The same title choice applies to Markdown with page details.
Inspect or manually copy the approved Markdown
The body keeps its current Markdown, including unsupported syntax and literal HTML. Your destination can interpret HTML and load linked images differently. Inspect it before publishing. Source notes, review questions, and revision history are excluded. Markdown export help (new tab)
Continue with HTML source
Copy code for an editor that accepts HTML source. The body is enough; title and page fields are optional. Add the title separately if your website already displays one. Source HTML and images in your Markdown remain literal text. Theme styling can vary.
Inspect or manually copy the approved HTML source
This is an article fragment without document metadata or WordPress block comments. The generated code uses explicit line breaks and fixed table alignment and wrapping hints; editors can strip styling. It excludes private source notes, review questions, and revisions. For a complete document to open in a browser, choose Download reading page below. No upload or publishing occurs. HTML handoff help (new tab)
Continue in WordPress
Image preparation is loading. Images stay as text until explicitly selected.
Images for WordPress
Supports a simple  alone in its own paragraph. The option affects WordPress copies, block downloads, and the WordPress kit only. It resets when the body changes, you leave WordPress, import or restore writing, or apply or clear a publishing profile. It is excluded from backups and profile files.
No image is loaded here. These are links to files, not Media Library uploads. WordPress and browsers can request their URLs when you open the exported blocks. Use public HTTPS image files you have permission to publish. Inspect every image in WordPress; use Upload to Media Library if you want a copy stored on your site. Review alternative text, including intentionally decorative images.
The reading preview, reading page, HTML source, formatted copies, and Word keep image syntax as text. Original Markdown keeps its references. Inline images among prose, images inside lists, headings, quotes or tables, reference images, titles, source HTML, and unsafe URLs are outside linked-image conversion. The references below are text only; availability, file type, content, and permissions are not verified.
To add an image or replace an omitted Word image, use Add or edit an article image below the article. Edit buttons here open the same guided editor for supported paragraph positions.
The text file contains all recognized image URLs and alternative text from this article. Inspect it before sharing. Source notes and private review notes are excluded. Image handoff help (new tab)
Before you copy: inspect the handoff
These local checks cover some formatting limits and unfinished writing patterns. They do not verify facts, grammar, permissions, or URLs. Use each finding to select its current article passage. Nothing changes automatically.
How to paste these blocks in WordPress
- Create a new, empty draft post in WordPress. Enter your article title in its title field.
- Open the editor Options menu, select Code editor, and paste the copied blocks into the post body. This is for the block editor, not a Custom HTML block or the Classic Editor.
- Return to Visual editor. Inspect headings, lists, tables, quotes, and links. Inspect linked images, rebuild unsupported content, and add page fields before previewing the post.
The body becomes editable blocks. The title, excerpt, description, source notes, and review questions are excluded. Images stay as text unless you explicitly select supported linked images above. Complex Markdown stays as text; rebuild it in WordPress. Numbered lists preserve their starting value. Unsupported list groups stay intact as text. Nothing connects to your WordPress account. WordPress handoff help (new tab)
Inspect or manually copy the approved blocks
Post fields & complete WordPress kit
Excerpt goes in the post Excerpt setting. Filename becomes the suggested Slug/permalink when available. Description goes in your SEO tool only if it offers that field. These fields are separate from the article body.
Keep the handoff together
A ZIP with blocks, original Markdown, a reading page, page details, current handoff findings, and WordPress instructions. Source notes and private review questions are excluded. This does not restore your workspace. Kit instructions (new tab)
More export options
Continue in an editor
Formatted copying provides basic headings, lists, emphasis, code, and web links. Your title is included only when selected above. Body copying keeps Markdown without title or metadata. Paste and inspect the result in your own editor.
Take a single file
Body: Markdown without title or metadata. Reading page: a standalone HTML file with a title, ready to open in your browser.
Markdown with page details
Take a complete publishing kit
A ZIP for a manual handoff, with article files, page fields, and next steps. Source and private review notes are excluded. This is separate from a private workspace backup.
Choose your next step (new tab). Extract and inspect the files before sharing. Downloading does not publish.
Article files exclude source notes and review questions. Check the saved file and preview your destination before publishing. Choose the right export (new tab)
How to convert Markdown to WordPress
This tool is for writers who already have an article in plain text or simple Markdown and want editable blocks in the WordPress block editor. It prepares a manual handoff using your own writing. You keep control of the final post.
- Paste the body. Add up to 60,000 characters in the article field. Keep the title in the separate title field. For a Markdown file or simple front matter, open the import tool and inspect its preview before applying it.
- Read and inspect. The preview shows the supported formatting. WordPress handoff findings point to some unsupported formats and unfinished writing patterns. Select a finding to inspect its current source. Check your facts and permissions yourself.
- Review, then copy. Check the review box and select Copy WordPress blocks. The title and page fields stay separate. A body-only copy does not require an excerpt, description, filename, or title.
- Paste in WordPress. Open a new, empty draft post in your WordPress block editor. Enter the title in its title field. Open the editor Options menu, select Code editor, and paste the block source into the post body.
- Finish the actual post. Return to Visual editor. Inspect the blocks and links, rebuild unsupported content, inspect linked images and add optional post fields, and preview the result before publishing yourself.
Use the full post Code editor, rather than a Custom HTML block or the Classic Editor. WordPress themes, plugins, and editor versions can affect the result. Official WordPress editor help (new tab).
What Markdown converts?
The converter supports a limited subset. It does not implement every CommonMark or GitHub-flavored Markdown feature. Unsupported source is kept as text so you can inspect and rebuild it.
| Markdown you bring | What WordPress receives |
|---|---|
| Paragraphs | Editable Paragraph blocks. Newlines within a paragraph become line breaks. |
| # through ###### headings | Heading blocks. Body H1 becomes H2; H2 through H6 keep their levels. Enter the post title separately. |
| Bullets, numbered lists, and nested subpoints | List blocks with editable list items. Use -, *, +, or number markers ending in . or ). Numbered lists preserve their first value. Use consecutive numbers or repeated 1 markers. Nest single-line items using two or four additional spaces at each level, up to six levels and 200 items in a continuous list group. Blank lines start a separate group. Irregular indentation, inconsistent numbering, empty items, and multiline item blocks stay intact as text with a handoff finding. Task checkboxes stay literal text. |
| Bold, italic, combined emphasis, and inline code | Nested single-line emphasis, including **bold *and italic***, ***both***, and __bold__. Safe link labels can contain emphasis or code, and links can appear inside emphasis. Matching backtick runs keep code literal. Multiline, deeply nested, or overly complex inline structures can stay literal; inspect the preview. |
| > quotes and fenced code | Quote and Code blocks. Syntax-language highlighting and nested quote formatting are not applied. |
| [label](https://example.com/) | Links with a non-empty label and a safe absolute http:// or https:// address. Link availability is not verified. |
| Pipe tables | Editable Table blocks with column headers, alignment, escaped pipes, and supported inline formatting. Up to 12 columns and 100 data rows; every row must have the same column count. Use at least three dashes in each delimiter cell and a pipe on every row. Mismatched or oversized tables stay intact as text and receive a handoff finding. Merged cells, multiline cells, and nested tables are outside this subset. |
| Standalone HTTPS images | Open Images for WordPress and explicitly include supported linked images. A complete  alone in a paragraph becomes an Image block. No image loads here. WordPress or a browser can request that URL when the blocks are opened. This does not upload a file to your Media Library. Other exports and the local reading preview keep image syntax as text. |
| Other images, embeds, footnotes, source HTML, and other syntax | Literal text to inspect and rebuild in WordPress. Images and external resources are not fetched by this tool. |
A small conversion example
This fictional excerpt comes from the working sample. Its block source below is generated by the same converter used in the editor.
Markdown input
This is a **fictional sample article**. Replace it with your own writing before publishing.
## Keep the useful details
A project log can be short. Record the decision, what prompted it, and what you need to check next.
4. Inspect the article
- Compare facts
+ Keep uncertainty
- Check links
5. Prepare the handoff
7) Paste the blocks
8) Preview the post
| Step | Keep |
| :--- | :--- |
| Observation | What happened |
| Interpretation | What you think it means |
| Next check | What remains uncertain |WordPress block output
<!-- wp:paragraph -->
<p>This is a <strong>fictional sample article</strong>. Replace it with your own writing before publishing.</p>
<!-- /wp:paragraph -->
<!-- wp:heading -->
<h2 class="wp-block-heading">Keep the useful details</h2>
<!-- /wp:heading -->
<!-- wp:paragraph -->
<p>A project log can be short. Record the decision, what prompted it, and what you need to check next.</p>
<!-- /wp:paragraph -->
<!-- wp:list {"ordered":true,"start":4} -->
<ol class="wp-block-list" start="4"><!-- wp:list-item -->
<li>Inspect the article<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>Compare facts<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>Keep uncertainty</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list --></li>
<!-- /wp:list-item -->
<!-- wp:list-item -->
<li>Check links</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list --></li>
<!-- /wp:list-item -->
<!-- wp:list-item -->
<li>Prepare the handoff<!-- wp:list {"ordered":true,"start":7} -->
<ol class="wp-block-list" start="7"><!-- wp:list-item -->
<li>Paste the blocks</li>
<!-- /wp:list-item -->
<!-- wp:list-item -->
<li>Preview the post</li>
<!-- /wp:list-item --></ol>
<!-- /wp:list --></li>
<!-- /wp:list-item --></ol>
<!-- /wp:list -->
<!-- wp:table {"hasFixedLayout":true} -->
<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th scope="col" class="has-text-align-left" data-align="left">Step</th><th scope="col" class="has-text-align-left" data-align="left">Keep</th></tr></thead><tbody><tr><td class="has-text-align-left" data-align="left">Observation</td><td class="has-text-align-left" data-align="left">What happened</td></tr><tr><td class="has-text-align-left" data-align="left">Interpretation</td><td class="has-text-align-left" data-align="left">What you think it means</td></tr><tr><td class="has-text-align-left" data-align="left">Next check</td><td class="has-text-align-left" data-align="left">What remains uncertain</td></tr></tbody></table></figure>
<!-- /wp:table -->
Starting with a Word file? Use the Word to WordPress converter for a file-first starting point. Save current writing before changing tools.
Common questions
Can I bring formatted writing from Word or Google Docs?
Choose Import formatted writing near the top. Open a plain Word .docx up to 8 MiB, or paste a copied selection into the empty import box and preview it. Common headings, emphasis, safe links, nested lists, code, and header tables can become Markdown. Review the converted article and listed omissions before applying; fonts, layout, and images are not retained. You can also choose a UTF-8 HTML file up to 512 KiB. Normal pasting in the article body remains plain text. Formatted import guide (new tab).
Is this Markdown to WordPress tool free?
The public tool is free and requires no account. Converting, previewing, checking, copying, and creating files here make no AI request. The separate private AI pilot is not needed for this workflow.
Can I paste from ChatGPT, Claude, or another writing tool?
Yes, if the result is plain text or simple Markdown within the article limit. Pasting from a rich text document does not import its visual formatting. Inspect the preview and conversion findings, compare the writing with your source, and keep unsupported parts for manual work in WordPress. This converter does not verify generated claims.
Can I import a Markdown file?
Open Import a file, keep source notes, or use more editing tools, then choose Import an article. UTF-8 .md and .txt files up to 512 KiB can be previewed before replacement. Articles support up to 60,000 characters, including Unicode. Oversized article pastes are rejected in full with a message beside the editor. Supported single-line front matter maps into page fields; complex YAML is rejected without replacing your work. Import details (new tab).
What if the clipboard is unavailable?
Download WordPress blocks, open the HTML file in a text editor, and copy all source including block comments. Opening it in a browser shows a reading view. You can also open Inspect or manually copy the approved blocks and select the visible source yourself after review.
How do I keep the whole publishing handoff?
Open Post fields & complete WordPress kit. With a valid title and article, approval enables a six-file ZIP containing blocks, exact original Markdown, a reading page, page fields, current handoff findings, and WordPress instructions. Optional fields can remain empty. This package excludes private source and review notes and does not restore a workspace. Kit guide (new tab).
Where does my draft go?
Conversion runs in this open tab. Application code does not upload the draft or save it in persistent browser storage. Copies and downloads are explicit actions, and your device or other tools can handle them under their own settings. The tab has no autosave. Use a separate private workspace backup before leaving if you need your source and review notes later. Data use (new tab).
Does conversion publish the post or check its facts?
No. This prepares editable blocks and a manual handoff. You create, inspect, and publish the post in your own WordPress editor. The local findings cover limited writing patterns and conversion limits, not facts, grammar, permissions, or working URLs. A result with no findings still needs your review.
Draft to Page is in development. This is an independent tool, with no claimed WordPress partnership. About the project.