> ## Content Index
> Fetch the complete content index at: https://www.magicpages.co/llms.txt
> Use this file to discover other available public pages before exploring further.

# How to move from WordPress to Magic Pages
- URL: https://www.magicpages.co/help/migrating/how-to-move-from-wordpress-to-magic-pages/
- Published: 2026-10-30T11:32:21.000Z
- Updated: 2026-10-30T11:32:21.000Z
- Description: Your posts, pages, authors and images come across; your theme and plugins don't. Import it yourself with Ghost's tool, or send us the export.
- Author: Sviatoslav Huzel
- Tags: Help Center & Guides, Migrating to Magic Pages

Your content comes across: posts, pages, authors and images. Your design and your plugins don't, because Ghost has no plugins and uses its own themes. You can run the import yourself with Ghost's built-in tool, or send us your export and we do it for you, for free.

## Option 1: import it yourself

Ghost has a WordPress importer built in, and it works well for most sites.

1. In WordPress, go to **Tools → Export**, choose **All content** and click **Download Export File**. On WordPress.com, the export lives in a different place, and [WordPress.com explains where](https://wordpress.com/support/export/?ref=magicpages.co).
2. In Ghost, go to **Settings → Advanced → Migration tools**, open the **Import** tab and click **WordPress**.
3. Follow the steps, upload the export file, and check the number of posts and pages before you import.

The importer takes export files up to 100 MB and sites with up to 2,500 posts. Above that, use option 2.

## Option 2: we import it for you

Send the same export file to [help@magicpages.co](mailto:help@magicpages.co), with your trial's `.mymagic.page` address. We run Ghost's migration tools on it and either import the result for you or send you a file to upload. It usually takes us under a day.

This is the better route for large sites, sites built with a page builder, or anything the built-in importer chokes on.

**Keep your WordPress site online until we're done.** We fetch your images from it during the import, so they can't come across once it's gone. If it's already offline, send us your `wp-content/uploads` folder as well.

## What comes across

- posts and pages
- authors
- images
- categories, which become tags. A post's first category becomes its primary tag.

## What doesn't

- Your design. Your WordPress theme doesn't move. You pick a Ghost theme instead, and every plan includes our own themes.
- Plugins, and anything they add to your posts when the page loads.
- Custom post types and custom fields. Ghost doesn't have them. A custom type like podcast episodes can come in as posts with their own tag.
- Files other than images, like PDFs and audio. Send them to us and we put them on your site.
- Comments. Ghost has no way to import them.
- Galleries with more than nine images. Ghost galleries hold nine at most, so bigger ones come in split into several, or need tidying by hand.

If your WordPress site is a shop, Ghost isn't the right home for that part. It has no shop features: no products, cart or stock.

## Keeping your old links working

Often there's nothing to do. If your WordPress links look like `/post-name/`, Ghost uses the same pattern, so every link keeps working.

If they include the date, like `/2024/05/post-name/`, Ghost can use the same pattern instead of its own, with no redirects needed. We set that up with you.

Links that change need redirects. You upload them in Ghost under **Settings → Advanced → Labs → Redirects**, with **Upload redirects file**.

## Subscribers

WordPress has no members of its own, so your subscriber list usually lives in a newsletter plugin or a tool like Mailchimp. Export it as a CSV, then in Ghost go to **Members** and use **Import members**. Ghost asks you to match up the columns.

Paid subscriptions come across directly if they run through Stripe. Moving them from another payment provider is hands-on work, and often it's easier for those subscribers to subscribe again on your new site.

## If the import fails

The most common cause is Cloudflare's proxy on your WordPress site. It blocks the importer from reaching your site. In Cloudflare, set your domain's records to **DNS only** while the migration runs.

## Switching over

1. Check your site at its `.mymagic.page` address.
2. Upgrade to a paid plan. Custom domains work on paid plans only.
3. Connect your domain. Your WordPress site keeps serving readers until the DNS change takes effect.
4. Set up your newsletter sending domain, before your first send.

[Setting up Your Custom Domain on Magic PagesLearn how to easily set up a custom domain for your Ghost CMS on Magic Pages. Follow our clear, step-by-step guide to update DNS settings and enhance email deliverability.![](https://www.magicpages.co/content/images/icon/magic-pages_full-logo_dark-plum-icon-61c2b297-18b0-4976-bed9-7c92e12348bf.png)Magic PagesJannis Fedoruk-Betschki![](https://www.magicpages.co/content/images/thumbnail/Facebook-post---1-1-df8a132d-9c6c-4374-a6fd-47a457507eef.jpg)](https://www.magicpages.co/help/domains/setting-up-your-custom-domain-on-magic-pages/)

## What it costs

Nothing. Smaller sites are free on any plan. Large archives, sites the built-in importer can't handle, complex redirect mapping and moving payments from another provider are hands-on work, so those moves are free with a yearly or lifetime plan. [Our migration page](https://www.magicpages.co/migrate/#cost) explains which moves need one. Rebuilding your WordPress design as a Ghost theme isn't part of the move: that's [custom development](https://www.magicpages.co/custom-development/).