ogo
Typetale
ogo
Typetale
  • Features
  • Pricing
  • Blog
  • What's new
  • FAQs
  • About
Start free trial
ogo
Typetale

The fastest way to launch your Ghost publication. Managed hosting with all the features you need to grow your audience.

Product

  • Features
  • Pricing
  • What's New
  • FAQ
  • Start Free Trial

Compare

  • vs WordPress
  • vs Substack
  • vs Medium
  • vs Ghost Pro

Alternative to

  • Ghost Pro
  • Substack
  • WordPress

Resources

  • About
  • Blog
  • Help Center

Legal

  • Privacy Policy
  • Terms of Service
  • SLA & Uptime
  • Refund Policy

Stay updated

Get the latest news, feature releases, and updates from Typetale delivered to your inbox. No spam, unsubscribe anytime.

© 2026 Typetale. All rights reserved.
GDPR-compliant • EU servers • Privacy-first analytics
Built with by the Typetale team

How to Migrate Your Ghost Blog to Typetale With Zero Data Loss

By Tilak Sasmal — Wed Jun 10 2026

4 min read

How to Migrate Your Ghost Blog to Typetale With Zero Data Loss

If you are looking for a faster, more optimized, and fully managed hosting solution for your publication, Typetale is built explicitly to turbocharge your Ghost CMS experience. However, the biggest fear when moving any established publication is data loss.

If you have ever tried migrating a Ghost blog using the standard Admin dashboard export (the built-in JSON and CSV files), you already know the painful truth: it leaves crucial data behind. While the standard export grabs your posts and members, it completely abandons your hard-earned newsletter statistics, open rates, historical Stripe data, and native comments.

We achieve this by migrating your full database and content directory, rather than relying on the basic JSON export.

Here is our step-by-step guide to generating a complete, zero-data-loss backup of your current Ghost site, no matter how it is currently hosted.


1. Migrating from Self-Hosted (Ghost-CLI)

If you are running Ghost on a VPS (like DigitalOcean, Hetzner, or AWS) using the official Ghost-CLI, you have full server access. Here is how to securely package your entire site.

Step 1: Zip Your Content Directory

Your content folder holds all your uploaded images, custom themes, and files.

  1. Log into your server via SSH.

Create a zip archive of the content folder:

sudo apt install zip # just in case you don't have it installed
zip -r typetale-content-backup.zip content/

Navigate to your Ghost installation directory (typically /var/www/ghost):

cd /var/www/ghost

Step 2: Export Your MySQL Database

Ghost uses MySQL 8 to store all your exact analytics, comments, and post data. Execute the below command to export (dump) your database as .sql file.

  1. Check your config.production.json file to find your exact database name, username, and password.
mysqldump -u [user] -p[password] your_db_name > typetale-database.sql
Ensure there is no space between -p and your password).
  1. Download both typetale-content-backup.zip and typetale-database.sql to your local machine using SFTP (via an app like FileZilla or Cyberduck).

2. Migrating from a Docker Setup

Many users self-host Ghost using Docker and docker-compose. Your data lives inside volumes and containers, but extracting it is straightforward.

Step 1: Archive Your Mounted Content Volume

Look at your docker-compose.yml file to see where your Ghost /var/lib/ghost/content directory is mounted on your host machine.

  1. Navigate to that host directory.

Zip the folder exactly as it is:

zip -r typetale-docker-content.zip /path/to/your/host/content_folder/

Step 2: Extract the Database from the MySQL Container

You do not need to install MySQL on your host machine to get your data. You can tell Docker to dump it directly from the running container.

  1. Find the name of your database container by running docker ps.
  2. Download your .zip and .sql files to your local computer.

Execute the dump command (replace the bracketed items with your specific details):

docker exec [mysql_container_name] /usr/bin/mysqldump -u root -p[root_password] [ghost_db_name] > typetale-database.sql
Ensure there is no space between -p and your password).

3. Migrating from Ghost(Pro) or Managed Providers

If you are hosted with Ghost(Pro) or another managed Ghost hosting provider, you do not have SSH access to run database commands or zip folders. However, you still have the right to your complete data!

Requesting a Full Export

Because the dashboard JSON export is insufficient for a seamless migration, you will need to request a raw backup from their support team.

  1. Email Ghost(Pro) support (or your current provider's support team) from the email address associated with the account owner.
  2. The support team will verify your identity and provide a temporary, secure link to download your raw files.

Use this template:

Hello Support, I am preparing to migrate my site and need a complete, raw backup of my publication to ensure I do not lose my newsletter analytics and comments. Could you please provide a secure download link containing my full content folder archive and a complete .sql database dump?

4. Migrating from Other Platforms

If you are not currently using Ghost but want to migrate to Typetale from another platform like WordPress, Substack, or Beehiiv, the process is slightly different but fully supported!

Substack and Beehiiv

For newsletter platforms like Substack and Beehiiv, you can export your content, subscribers, and analytics directly from your dashboard settings. Once you have the exported .csv files (for subscribers) and your content exports:

  1. Provide the exports to the Typetale migration team via any secure file sharing service.
  2. We will use the official @tryghost/migrate command-line tools to parse and convert your content into a seamless Ghost-compatible format.
  3. Your subscribers will be securely imported without needing to re-opt-in, and they will immediately start receiving your new newsletters via Typetale.
Pro-tip: If you are a developer and prefer to convert the files yourself before sending them to us, you can install the tool via npm (npm install --global @tryghost/migrate) and run the conversion directly (e.g., migrate substack --pathToZip /path/to/export.zip).

WordPress

WordPress migrations can be complex due to custom plugins and page builders, but we handle the heavy lifting for you.

  1. Export your WordPress site using the official Ghost plugin, or simply provide us with a standard WordPress XML export.
  2. Upload the exported file and a backup of your wp-content/uploads folder to the onboarding portal.
  3. Our team will use the official @tryghost/migrate toolkit (specifically migrate wp-api or migrate wp-xml) to map your custom categories to Ghost tags, preserve your SEO permalinks, and securely import all your media.

Others

The official Ghost migration-tool GitHub repository provides well‑documented guides for other platforms.

  • beehiiv
  • beehiiv API
  • beehiiv API Members
  • beehiiv Members
  • Blogger
  • Buttondown
  • Chorus
  • Curated
  • Curated members
  • Jekyll
  • Letterdrop
  • Libsyn
  • Mailchimp Members
  • Medium Content
  • Medium Members
  • Squarespace
  • Stripe
  • Substack
  • Substack members
  • Tiny News
  • Tiny News Members
  • Wix CSV
  • WordPress API
  • WordPress XML

Welcome to Typetale! 🎉

Once you have your content and database files in hand, the hard part is over.

Simply upload these files to your secure Typetale onboarding portal, or share them securely with our migration team. We will handle the database restoration, map your file paths, reconfigure your image assets, and spin up your new server.

When you log into your new Typetale dashboard, everything—right down to the open rate of your very first newsletter—will be exactly where you left it.

Read more

Ghost 6: Ghost CMS SQL Injection (v3.24.0 – v6.19.0)
Ghost 6: Ghost CMS SQL Injection (v3.24.0 – v6.19.0)

The cybersecurity community has identified a significant vulnerability within the Ghost CMS ecosystem. This is a third-party advisory intended to inform all administrators, developers, and stakeholder…

Tilak Sasmal•Feb 18, 2026•2 min read
Welcoming Ghost 6 native analytics
Welcoming Ghost 6 native analytics

We are going to deprecate the OG Plausible analytics in Favour of Ghost 6 introduced a native analytics. Read the post to know when we are going to sunset the OG Analytics.…

Tilak Sasmal•Sep 21, 2025•2 min read
Ghost 6 now on typetale!
Ghost 6 now on typetale!

Ghost 6 is now on Typetale! We've made some key changes to the official version to ensure your data stays private and your social network has no limits. Read on to learn how we're making Ghost 6 even …

Tilak Sasmal•Sep 18, 2025•2 min read
Feature drop from Typetale
Feature drop from Typetale

✨ Greetings, wonderful typetale community! Merry Christmas 🎅 As we wrap up this incredible year, I hope you're finding joy and good health in these festive moments! I'm excited to share my first fea…

Tilak Sasmal•Dec 25, 2024•1 min read