Huge headache: Ghost to WordPress

Hey guys,

I’m trying to migrate my Ghost blog to WordPress and I’m having a huge headache.

I’ve already tried passing .Json to .CSV (using OpenRefine) and even transforming it into XML, but some data is being lost along the way.

I’m losing the link to the posts with their authors, or losing all the categories or even the URL of the featured images.

When I migrated from WordPress to Ghost, it was super easy and great, but the opposite transition has not been easy.

I feel like this is a friction that Ghost is imposing on its users, perhaps with the intention of not being able to make these transitions as easily.

There is no point in the Ghost tool offering “easy” exporting if it is not compatible with other platforms.

Would anyone have a tip on how I could do this easily?

1 Like

Have you tried something simple like


My .json is currently 26 MB and has already surpassed the capacity of this tool. Thanks for the tip! I had already spoken to them too.

Ah, wasn’t aware it had limitations, having said that 26MB is not that big, surprised they capped this.

1 Like

If the tool you’re using can’t handle your JSON due to its size, you could split the JSON into smaller chunks that do work.

Here’s a tool that might help with that task

I feel like this is a friction that Ghost is imposing on its users, perhaps with the intention of not being able to make these transitions as easily.

That’s not fair or helpful.

You can export data from Ghost in a format that can be imported directly into another Ghost site, or wrangled to move to other platforms. Documentation is provided that explains the structure of the data so that you can then take it and use it as you wish.

Automattic does something similar with WordPress: you can export your data from WordPress in a format that can be imported directly into another WordPress site, or wrangled to move to other platforms.

Automattic doesn’t provide a tool that exports WordPress data in a way that is directly compatible with Ghost. Instead, the Ghost team maintain a plugin that helps with that. Similarly, Ghost doesn’t build and maintain an exporter that specifically outputs WordPress XML. Instead, members of the WordPress community make tools for wrangling Ghost data into that format. That’s great to see.

You could look at quite a few other platforms in web publishing and see the same thing: platforms provide data exports in their own format, and may directly, or through their developer ecosystem, provide tools to wrangle data from other platforms into clean imports.

Unfortunately, if you were to do this survey you’d also find a lot of platforms that don’t even provide an option to export data at all—they’re totally closed.


I don’t believe it is fair to blame it as a Ghost thing. Importing an exported WP site into another WP site hardly ever succeeds on the first trial, or even bring all assumed exported content into play when it does work.

1 Like

Hi John, my comment wasn’t to bash Ghost, but to try to understand the lack of standards. Wordpress is much larger than Ghost and, supposedly, better conversation between them would be beneficial to users who are coming or going. There is no reason for one to work with .Json and another with .XML. We just saw the European Union bringing standards for charging iPhones and Androids. At scale, this is much easier to fix. The link you gave me, with my basic user knowledge, I don’t even know where to start or how to do it. Thanks for help me!

1 Like

I think I was misunderstood or didn’t express myself correctly. If we think that Wordpress is the most popular platform, it would be interesting for smaller platforms like Ghost to communicate better with it in terms of standards. I think Ghost loses out on this too, although it was easy to get my content (originally on Wordpress) here.

1 Like

Still, Wordpress imports are troublesome within Wordpress itself so maybe it would be more of their interest to make imports from other platforms to work.

I, migrated my blog from ghost to WordPress, to experience migration and write a post about it. Post text is easy to migrate (if JSON is below 25MB) but callout bars, code blocks, and bookmarks completely break. I also faced issues with the migration of images.
I am not blaming Ghost or anything like that. Ghost is an awesome platform, my point is, decide between Ghost or WordPress before you start publishing. For a large blog it will be difficult.


Thank you so much! I used your methodology and it mostly worked. I think some of my issues from very early posts were legacy from when I imported TO Ghost FROM Substack. In any case, I only had 73 posts, and itʻs not too difficult to go through and manually place the headline images.


Thank you, I think your experience is helpful for others including me, I don’t expect I could move from Ghost to WP in a few commands/scripts but the fewer manually task I need to do the better :)

1 Like