Skip to content
TierGauge

Migration guide

Substack Ghost

Substack takes 10% of paid subscription revenue forever, plus Stripe fees. Ghost(Pro) charges a flat monthly fee ($18 Starter, $29 Publisher) with zero revenue share. At $200/mo recurring revenue you're already at break-even on Ghost Starter; at $1,000/mo Substack takes $1,200/yr that Ghost would have let you keep. The same Ghost software is freely self-hostable if you ever want to leave the managed hosting, which Substack doesn't offer.

Published · By the TierGauge editorial team

Leaving

Substack
Starting price
Free
Free plan
Yes
Plans
1
Category
Email marketing

Moving to

Ghost
Starting price
$18/mo
Free plan
No
Plans
4
Category
Content marketing

When this migration makes sense

  • You're at $200/mo+ in paid subscription revenue (or expect to be within 6 months) and the 10% Substack tax is already a meaningful number.
  • You want a real CMS underneath your newsletter: custom themes, structured pages, a members area, SEO controls. Ghost is a CMS that happens to do email; Substack is an email tool that happens to render web pages.
  • You're philosophically aligned with publisher-owned infrastructure. Ghost is open source under the MIT license; the same software is self-hostable forever.
  • You want staff seats, custom themes, and the option to skin your publication so it looks like a brand, not a Substack template.

When it doesn't

  • You depend on Substack's discovery network (recommendations, Notes, the homepage trending list, the mobile reader app). Ghost has no native equivalent; you replace those with paid acquisition or referral programs you build yourself.
  • You have under 1,000 subscribers and aren't yet monetizing. Substack's 10%-of-zero is fine and the discovery network helps grow the list. Ghost's $18/mo flat fee starts costing you immediately.
  • Your audience reads inside the Substack iOS / Android app and the in-app commenting culture is part of your brand. Ghost emails to inboxes; the reader-app experience doesn't translate.
  • You don't want to manage themes, DNS, or any technical surface. Substack hides all of that; Ghost asks you to make decisions (theme picks, SEO settings, custom domain DNS).

What you lose by leaving Substack

  • Substack's discovery network: recommendations, Notes, the trending homepage, cross-newsletter promotion.
  • The Substack mobile reader app and the in-app commenting culture.
  • Built-in podcast hosting (Ghost supports embedded podcasts via providers like Transistor, but it's not native).
  • The simplicity of "sign up and write": Ghost asks you to make a few setup decisions Substack hides.
  • Substack's brand familiarity: subscribers who recognize the Substack subscribe-button UX may have a moment of friction at a Ghost-styled signup.

What you gain with Ghost

  • No 10% revenue share. Every dollar of paid subscription net of Stripe is yours.
  • Real CMS underneath your newsletter: custom themes, structured pages, member-only sections, SEO metadata controls.
  • Open-source software under MIT license. If you ever leave Ghost(Pro), the same software runs self-hosted forever; no vendor lock-in.
  • Staff seats on Publisher and above so multiple writers can edit, schedule, and publish.
  • A genuine 8,000+ integration ecosystem (Zapier-bridged) on Publisher and above.
  • Publisher-owned stack: your themes, your DNS, your subscriber list, your Stripe account. The pieces are yours, not rented.

Step-by-step migration

  1. 01

    Export your list from Substack

    Pull a fresh CSV of every active subscriber. Capture the fields you actually use downstream: email is required, name is standard, signup date and tier (free/paid) are useful when Substack provides them.

  2. 02

    Provision Ghost

    Sign up, set sender identity, and verify your sending domain (DKIM, SPF, DMARC). Do this before importing the list; sending from an unverified domain is the single fastest way to land in spam at the moment of cutover.

  3. 03

    Import the list and map fields

    Upload the CSV. Map email + name + any custom fields. Decide whether to import as one list or split into segments/tags. Substack-style organization rarely maps 1:1, so plan the split before the upload, not after.

  4. 04

    Rebuild automations and templates

    Ghost's automation builder is structurally similar but won't import Substack's flows directly. Rebuild only what you actively use; the move is a chance to delete the unused ones rather than lift-and-shift dead infrastructure.

  5. 05

    Send a test broadcast

    Pick a small segment and send a real broadcast (not just a preview). Verify deliverability, link clicks, and unsubscribe flow. If anything's off, you find it before the announcement, not after.

  6. 06

    Announce the move and cut over

    Send your last broadcast from Substack announcing the new sender domain and what to expect. Cut over DNS and sending from Ghost on the same day, not staggered. A dual-send week creates more confusion than it prevents.

Substack-to-Ghost specific gotchas

Universal steps cover most of the work. These are the failure modes unique to this exact pair.

  • #1

    Subscriber export: Substack gives you a CSV with email + name, plus a separate file for paid subscriber Stripe customer IDs. Ghost(Pro) accepts CSV imports with Stripe customer IDs preserved, so paid subscribers don't have to re-enter card details. Verify the CSV column mapping before import; the import is idempotent if you need to re-run.

  • #2

    Paid subscription billing: Stripe customers transfer with their existing subscription metadata if you import correctly, but the BILLING relationship moves to Ghost's Stripe account. Communicate the change to subscribers via a final Substack post explaining what they'll see on their next charge.

  • #3

    Custom domain: Substack handles DNS internally for custom domains. Ghost issues different DNS records (CNAME or A record + DKIM). Stagger the cutover; warm Ghost's sender domain with a small list segment before sending to your full audience.

  • #4

    Discovery loss: subscribers acquired via Substack's recommendations or Notes don't follow you to Ghost. Plan a 30-day window where you actively notify your audience of the move via your existing Substack and a final email so the loyal core moves with you.

  • #5

    Theme work: Substack's theme is the Substack theme. Ghost gives you a theme picker plus the ability to write or buy custom themes. Budget time post-migration for theme selection (or accept the default Casper theme); the migration isn't done until your publication looks intentional.

  • #6

    Search-engine impact: Substack-hosted posts at yourname.substack.com get re-indexed when you 301-redirect to your custom domain on Ghost. Set up the 301 redirects via Substack's domain settings BEFORE deactivating the Substack account; if you deactivate first, link equity is lost.

Common questions

Is Ghost cheaper than Substack?
At the entry tier, Substack is cheaper (Free vs $18/mo). The reasons to migrate are usually feature scope or pricing model, not headline price; see "Why migrate" above.
Will I lose subscribers in the move?
Email lists transfer as raw addresses; subscriber relationships transfer with you because the addresses haven't changed. What you can lose: re-engagement (some readers won't notice the new sender domain immediately), paid subscriptions if Substack handles billing differently from Ghost (the gotchas above call out the specific cases), and any "engagement" or warmth signals that Substack's deliverability inferred from your sending history. Plan a clear announcement and a deliverability warm-up week.
How long does the migration take?
For a list under 10,000 subscribers, a clean migration is one focused week: domain setup and verification, list import, automation rebuild, test broadcast, announcement, cutover. Larger lists or complex automations can stretch to 2 or 3 weeks. The constraint is rarely the import itself; it's the deliverability warm-up and the time to rebuild flows you actually depend on.
Are Substack and Ghost in the same category?
No. Substack is primarily a email marketing tool; Ghost is primarily a content marketing tool. The migration involves changing both your tooling AND part of your workflow shape; the "Why migrate" and "Bad fit" sections above are honest about whether that's the right move for your team.
Where can I see Substack vs Ghost side-by-side?
The /compare/ghost-vs-substack page on TierGauge shows side-by-side plans, headline pricing, included features, and limit comparison at the entry paid tier. This migration guide is the long-form decision narrative; the compare page is the data-only dashboard.

Sources

Pricing verified . Migration mechanics are based on the public pricing pages and standard ESP migration patterns; verify destructive steps (DNS cutover, paid subscription transfer) against the vendor's current docs before executing.