# How do I migrate WordPress to Ghost without losing SEO?

> You migrate WordPress to Ghost without losing SEO by carrying your content, images, metadata, and URL structure across intact, and by handling the places where Ghost works differently from WordPress. In practice: export every post and page as complete content, move the images so they are hosted by Ghost rather than left on WordPress, carry titles and meta descriptions across, and either match Ghost's URL structure to your old WordPress permalinks or map each changed URL to a 301. Ghost is a clean, content focused platform, but its default URL patterns and its handling of categories, tags, and any WordPress plugin features differ, so the work is to reconcile those differences rather than assume a like for like copy. The reassuring constant is that the platform itself is not a ranking factor, so a complete, well redirected move keeps your rankings. The risks are the familiar ones: changed URLs without redirects, images left behind on WordPress, and dropped metadata. WPBuildAI scans your WordPress site and returns the posts, images, and full URL list as files, so you can rebuild in Ghost with nothing missing.

Source: https://wpbuildai.com/migrate-wordpress-to-ghost-without-losing-seo/
By lawrence-arya · 2026-06-09

---
You migrate WordPress to Ghost without losing SEO by carrying your content, images, metadata, and URL structure across intact, and by handling the places where Ghost works differently from WordPress. In practice that means exporting every post and page as complete content, moving the images so Ghost hosts them rather than leaving them on WordPress, carrying titles and meta descriptions across, and either matching Ghost's URL structure to your old WordPress permalinks or mapping each changed URL to a 301. Ghost is a clean, content focused platform, but its default URL patterns and its handling of categories, tags, and any WordPress plugin features differ, so the work is to reconcile those differences rather than assume a like for like copy. The reassuring constant is that the platform itself is not a ranking factor, so a complete, well redirected move keeps your rankings. The risks are the familiar ones: changed URLs without redirects, images left behind, and dropped metadata. WPBuildAI scans your WordPress site and returns the posts, images, and full URL list as files, so you can rebuild in Ghost with nothing missing.

Export from a known release rather than mid-cycle: [WordPress 7.0 shipped on 20 May 2026 and was patched twice by 17 July](https://wordpress.org/news/category/releases/), and a content export taken either side of an upgrade can carry block markup differences that surface as formatting drift once it is in Ghost.

## Why moving to Ghost does not have to cost rankings

Begin with the principle that calms the whole project. Search engines rank your content and the URLs it lives on, not the software that serves it, so moving from WordPress to Ghost is not inherently a ranking risk. What you are relocating is a body of writing and a set of addresses, and if both arrive intact, the rankings have every reason to follow. Ghost is well suited to this, being built around publishing and clean output, which means the content travels comfortably. The task is not to defend against the platform change itself, but to make sure nothing is dropped in the move and that the URL differences between the two systems are reconciled deliberately.

## Export your content in full

The first thing to move is the writing, and it goes across whole. Export every post and page as complete content, including the body, headings, and structure, because each page ranks on what it contains, and a thinned version ranks worse. Ghost can import WordPress content, and that covers the core well, but treat the import as a starting point to verify, not a guarantee. Traffic concentrates on a minority of posts, as the [Ahrefs study](https://ahrefs.com/blog/search-traffic-study/) shows, so confirm first that your best performing posts arrived complete and correctly formatted. Content is the substance the rankings attach to, so a faithful, full export is the foundation of the whole migration.

## Move the images, do not leave them on WordPress

The most commonly forgotten piece is images. If your Ghost posts keep pointing at image URLs still hosted on the old WordPress site, the pictures appear to work until you shut WordPress down, at which point they all break at once. The fix is to move the image files so Ghost hosts them, and update the references in your content to the new locations. Web Almanac 2024 ([HTTP Archive](https://almanac.httparchive.org/en/2024/)) is a reminder of how image heavy posts are, so there are usually more to move than you expect. Treat images as content to relocate into Ghost, not as links to leave pointing back at a server you are about to retire.

## Match URLs or redirect every change

URLs are where WordPress and Ghost most often diverge, so this step needs care. WordPress permalinks vary widely, from dated structures to plain post names, while Ghost uses its own default patterns. Wherever you can, configure Ghost so its URLs match your existing WordPress permalinks, which minimizes change. For every URL that still differs, set a 301 from the old WordPress address to the new Ghost one, so the page keeps its value and visitors are not stranded, as the guides on [site moves](https://developers.google.com/search/docs/crawling-indexing/site-move-with-url-changes) and [redirects](https://developers.google.com/search/docs/crawling-indexing/301-redirects) describe. To do this you need a full list of your old URLs, which is what [find and extract all URLs](/find-extract-all-urls-website-301-redirects) produces. Match where possible, redirect where not, and no address is lost.

## Carry titles and meta descriptions across

Metadata is the invisible layer that is easy to drop. Your titles and meta descriptions are tuned signals, and if they do not come across, each post restarts its ranking from a blank slate even when the text is identical. Ghost supports per post titles and meta descriptions, so export them from WordPress and apply them in Ghost post by post. Watch the heading structure too, since a different theme can change how your main heading renders. Because none of this shows in the visible design, it is the most overlooked part of a move that otherwise looks complete, and it is a frequent reason posts quietly underperform afterward. Carry the metadata deliberately, then confirm titles are present and not duplicated.

## Reconcile what Ghost handles differently

Finally, account for the genuine differences between the two systems. WordPress plugin features, custom fields, complex taxonomies, and some content types have no direct Ghost equivalent, so they are rebuilt, replaced, or simplified rather than copied. Ghost handles tags natively but treats structure more simply than a heavily customized WordPress site, so map your categories and tags onto Ghost's model thoughtfully. This reconciliation is the real scope of a WordPress to Ghost move: the writing transfers quickly, while the platform specific features take the planning. It is the same general truth as any platform change, covered in [the risks of migrating to a new CMS](/what-are-the-risks-of-migrating-to-a-new-cms): information moves easily, functionality is rebuilt.

## Steps to migrate WordPress to Ghost cleanly

1. **List every WordPress URL** while the old site is still live.
2. **Export all posts and pages** as complete content and verify the import.
3. **Move the images** into Ghost and update their references.
4. **Match Ghost's URLs** to your permalinks where possible.
5. **301 every changed URL** from the old WordPress address to the new Ghost one.
6. **Carry titles and meta descriptions** across, and rebuild plugin features Ghost lacks.

## Worked example: a WordPress blog moves to Ghost

Imagine a writer with a WordPress blog of four hundred posts moving to Ghost for its cleaner publishing. They list every URL first and see their permalinks use a dated structure that Ghost will not reproduce by default. They export all posts, run the WordPress import into Ghost, then verify the thirty highest traffic posts arrived complete with formatting intact. They move the images into Ghost and re point the references, fixing a batch that still loaded from the old site. They configure Ghost's URLs as close to the old structure as possible and 301 the rest from the dated WordPress URLs to the new Ghost paths. They carry titles and meta descriptions across post by post, and rebuild a related posts feature that a WordPress plugin used to provide. After launch, rankings hold because content, images, metadata, and URLs all arrived, the same outcome as a careful [WordPress migration in general](/migrate-wordpress-without-losing-seo).

## Limitation: the import is a start, not a guarantee

It is honest to flag the boundary. Ghost's WordPress import handles the core content well, but it is a starting point that you verify, not a complete, hands off copy. Images often need moving, plugin driven features have no equivalent, and some formatting or custom content may need cleanup after import. So budget time for checking and reconciling, not just for running the importer. The migration is safe for SEO when you confirm what actually arrived and redirect what changed, rather than trusting the import to have done everything. For a different destination with similar trade offs, see [convert a WordPress blog to Astro or MDX](/convert-wordpress-blog-to-astro-mdx-export).

## Common mistakes

- Assuming the WordPress import copied everything and not verifying it.
- Leaving images hosted on WordPress, so they break when it is shut down.
- Letting Ghost's default URLs differ from permalinks without setting 301s.
- Dropping titles and meta descriptions, so posts restart their ranking.
- Expecting plugin features to transfer rather than rebuilding them in Ghost.

## Key points

You migrate WordPress to Ghost without losing SEO by carrying content, images, metadata, and URLs across intact, and by reconciling what Ghost handles differently. Export posts in full and verify the import, move images into Ghost, carry titles and meta descriptions across, and match Ghost's URL structure to your permalinks or 301 every changed URL from the old WordPress address. The platform is not your ranking, so a complete, well redirected move keeps it; the risks are changed URLs without redirects, images left behind, and dropped metadata. Treat the import as a start to verify, and plan for plugin features that must be rebuilt rather than copied. Start from a complete URL list so no linked or ranked address becomes a 404. WPBuildAI scans your WordPress site and returns the posts, images, and full URL list as files, so you can rebuild in Ghost with nothing missing. Send your web address for a free analysis.

Not affiliated with WordPress, Lovable, Webflow, Shopify, Wix, or Squarespace.