Your country

Tools that support it use your country for local currency, number formats, units and paper size. Your choice is saved only in this browser.

Type a name or a two-letter code. Use the up and down arrow keys to move through the countries, Enter to choose one and Escape to close.

WordPress Export to Markdown, CSV & HTML Converter

A WordPress export (WXR) as Markdown files, an inventory and a redirect map.

Free preview, no sign-upIncluded in your pass Pro tool Pro pass: ₹179 / $5.99 for 30 days On this device: nothing is sent
+3 +1 more details No uploadWorks offline once opened Data

Free preview: the inventory counts, the list of files and the first posts converted to Markdown (up to five). Locked until you unlock it: download.

Pro pass ₹179 for 30 days or ₹79 for 1 week, one‑time. Pro pass $5.99 for 30 days or $2.99 for 1 week, one‑time. How to unlock

Try before you buy.

  • Free preview: the inventory counts, the list of files and the first posts converted to Markdown (up to five).
  • Locked until you unlock it: download.
  • Unlock: Pro pass, ₹179 for 30 days or ₹79 for 1 week, a one-time payment that never renews. Unlock: Pro pass, $5.99 for 30 days or $2.99 for 1 week, a one-time payment that never renews.

Ways to unlock shows how to get the full result.

See passes (opens in a new tab)

Printing this result is locked in the free preview.

Your WordPress export

Next steps Done. What next?

Start over

A Pro pass unlocks the full result. See passes

All data & spreadsheet tools

About the WordPress Export to Markdown, CSV & HTML Converter

Move off WordPress, or take stock of a blog, from the export file WordPress itself makes (the dashboard’s Tools menu, its export screen). Every post and page becomes a Markdown file with YAML front matter — title, date, slug, status, author, categories, tags, excerpt and featured image — converted by the same engine as the HTML to Markdown tool, with block-editor comments removed, WordPress’s own captions, galleries and embeds turned into Markdown, and other shortcodes kept or listed. Files are laid out for Hugo, Jekyll, Astro, Eleventy or Docusaurus, or as plain Markdown or HTML.

With them come an inventory of posts, pages, attachments, comments and custom post types (CSV or Excel), a list of every media address to download, and a redirect map from the old permalinks to the new addresses that the Redirect & .htaccess Generator reads as it is. The file is read on your device in a background worker, in pieces, so exports of hundreds of megabytes open; drafts and private posts go in only when you tick them.

How to use it

  1. In the WordPress dashboard, go to Tools, then to the export screen, keep All content selected and let WordPress make the export file (it ends in .xml).
  2. Open the file here. The inventory counts the posts, pages, attachments, comments and custom post types, and lists the shortcodes and blocks it found.
  3. Choose the Folder layout for your site generator, the post types to convert, and whether drafts and private posts go in.
  4. Choose what happens to shortcodes, whether the new site keeps the old addresses, and whether pictures should point to a local uploads folder.
  5. Read the first converted posts, then download the ZIP, the CSV or Excel inventory, the redirect map and the media list — with a Pro pass, or after unlocking this result; without one the page shows a free preview.

Examples

A classic-editor post for Hugo
Input
Tomatoes need a long season…

[caption …]<img src="…/seedlings.jpg" alt="Tomato seedlings"> Seedlings after ten days[/caption]
<!--more-->
Result
---
title: "Sowing tomatoes indoors"
date: 2024-03-15T10:30:00Z
slug: "sowing-tomatoes-indoors"
categories: ["Tomatoes & peppers"]
---

Tomatoes need a long season…

![Tomato seedlings](…/seedlings.jpg)

*Seedlings after ten days*

<!--more-->

Paragraphs are made the way WordPress makes them when it shows a classic post; the caption becomes the picture and its caption.

The redirect map
Input
https://example.com/2024/03/sowing-tomatoes-indoors/ → content/posts/sowing-tomatoes-indoors.md
Result
Old URL,New URL,Status
/2024/03/sowing-tomatoes-indoors/,/posts/sowing-tomatoes-indoors/,301

Common uses

  • Moving a blog from WordPress to Hugo, Jekyll, Astro, Eleventy or Docusaurus.
  • Keeping an archive of a site in plain Markdown or HTML files.
  • Auditing a site: every post, page, attachment and comment in one spreadsheet, with word counts and missing featured images.
  • Planning redirects for a new address scheme, and finding the shortcodes and plugins the content depends on.

What goes into the ZIP

  • Hugo: content/posts/ and content/ for pages (child pages in their parents’ folders), with title, date, lastmod, draft, slug, categories, tags, summary and images in the front matter.
  • Jekyll: _posts/YYYY-MM-DD-slug.md, drafts in _drafts/, pages at the top, with layout, title, date, categories, tags and excerpt.
  • Astro: src/content/blog/ with title, description, pubDate and updatedDate, the fields of Astro’s blog starter.
  • Eleventy: posts/ and the pages at the top, with title, date, tags and an optional permalink.
  • Docusaurus: blog/YYYY-MM-DD-slug.md with title, date, authors, tags, description, image and draft; pages in src/pages/.
  • Plain Markdown or HTML: posts/ and pages/.

Custom post types get a folder of their own. The ZIP also holds _wordpress-export/ with the inventory, the comments (CSV and JSON), the media list, the redirect map and a report of the shortcodes and blocks found.

Classic and block-editor posts

WordPress stores classic-editor posts without paragraph tags and adds them when it shows a post, so the converter does the same, following WordPress’s wpautop(): double line breaks become paragraphs and single ones line breaks, never inside code blocks or around block elements. Block-editor posts already have their tags; their block comments are removed. Blocks that WordPress builds while it shows the page (latest posts, archives, search) have no content in the export: they are left out and listed in the report. Tables become Markdown tables where they are simple, and embedded videos and frames become links.

Shortcodes

WordPress’s own shortcodes are converted: [caption] to the picture with its caption, [gallery] to a list of its pictures (its ids, or the post’s attachments), [embed], [audio] and [video] to links, [playlist] to a list of links. Other shortcodes belong to plugins that only WordPress can run, so they are either kept as written — for generators that have shortcodes of their own, such as Hugo — or removed; either way the report lists each one and how often it appears. A word in square brackets such as “[sic]” is not taken for a shortcode.

Addresses and the redirect map

Each file gets its generator’s usual address — /posts/slug/ in Hugo, /YYYY/MM/DD/slug.html in Jekyll, /blog/slug/ in Astro — and the redirect map pairs every published post’s old permalink with it, as Old URL,New URL,Status rows that the Redirect & .htaccess Generator turns into rules for Apache, Nginx, Netlify and more. Tick Keep the old addresses to write them into the front matter instead (url in Hugo, permalink in Jekyll and Eleventy, slug in Docusaurus), so those pages need no redirect; Hugo can also list them as aliases. Some addresses cannot be kept, and the redirect map lists them: Docusaurus puts a blog post’s slug under its blog address (/blog unless you change it), Astro and plain Markdown or HTML files take their addresses from their file names, and WordPress’s plain permalinks (/?p=123) are no path a static site has.

Pictures and other media

The export holds the addresses of the attachments, not the files. media-urls.txt lists every attachment and every picture used in the posts, one address per line, ready for a download manager; this page never contacts your site. With Point pictures to /uploads/, the posts link to /uploads/2024/03/photo.jpg instead of the WordPress address, matching the folders the media list gives.

The inventory

One row per post, page, attachment and custom post: ID, type, status, title, slug, date, author, categories, tags, parent, comments, words, featured image, old address, file in the ZIP and new address — as CSV or as an Excel workbook with sheets for the items, the comments, the media and the redirects. Comments are listed without their e-mail and IP addresses unless you tick Include commenters’ e-mail and IP addresses. The element names are read as the official WordPress Importer reads them.

Limitations

  • Pictures are not downloaded: the page never contacts your site. Download them with the media list.
  • Plugin shortcodes cannot be run outside WordPress; they are kept as text or removed, and listed.
  • Content a plugin keeps outside the post itself (page-builder layouts, custom fields) is not converted; the post’s own HTML is.
  • Menus, widgets, theme settings and users are not posts, so they are not converted. Export files up to about 600 MB; a large export takes a few minutes on a phone.

Privacy

On this device: nothing is sent

Everything happens in your browser. What you enter or open here is not uploaded or stored by MySmartCoPilot.

Frequently asked questions

What do I get without a pass?

Without a pass, WordPress Export to Markdown, CSV & HTML Converter shows the inventory counts, the list of files and the first posts converted to Markdown (up to five). Until you unlock it, the result can’t be downloaded. A Pro, Premium or Ultimate pass, a one-time payment that never renews, unlocks the full result. The pricing page lists the passes and their prices.

How do I get the export file from WordPress?

In the WordPress dashboard, open Tools → Export, keep All content selected and press Download Export File. A large site may give several files if a plugin splits the export; open each one in turn.

Are drafts and private posts converted?

Only when you tick them. Drafts are marked as drafts in the front matter (Jekyll drafts go into _drafts/), and posts in the trash are never converted.

Are the comments included?

Yes, in the inventory: a comments CSV and a JSON file in the ZIP, with the author, date, status, reply and text of each comment. E-mail and IP addresses are personal data, so they are left out unless you tick the box.

Will my old links keep working?

Either keep the old addresses (the converter writes them into the front matter of Hugo, Jekyll, Eleventy and Docusaurus files), or give the redirect map to your web server through the Redirect & .htaccess Generator so that every old permalink that moved takes visitors and search engines to the new page.

Which converter turns the HTML into Markdown?

The engine of this site’s HTML to Markdown tool: headings, lists, links, pictures, quotes, code with its language, GitHub tables, and embeds as links.

Is my export uploaded?

No. The file is read and converted in your browser, and the ZIP and lists are made on your device.

Quick answers and tool search

Type to search tools or to get a quick answer, for example 18% of 2500. Use the up and down arrow keys to move through the results, Enter to choose, and Escape to close.