Main features
- Website with themes and an editor with cards for galleries, video, audio and files
- Posts published on the web, sent by email, or both
- Several newsletters per site, chosen by each member
- Native signup forms and member accounts
- Free and paid tiers with monthly and yearly prices, paid through Stripe
- Offers and discounts on subscriptions
- Member management and engagement analytics
- Comments for members
- Importers for Substack content and members and for Mailchimp members
- Social web (ActivityPub) features
- Content API, Admin API and integrations such as Zapier and Slack
What Ghost does
Ghost is a publishing platform rather than a pure email tool. Each site combines a public website, an editor, member accounts and email newsletters, so a post can go to the web, to subscribers’ inboxes or to both at once. A site can run several newsletters and let members choose which ones they receive.
Memberships can be free or paid. Paid tiers have monthly and yearly prices, offers and discounts, and payments run through your own Stripe account; Ghost states that it takes no transaction fee on subscriptions, although Stripe’s processing fees still apply. Members can comment on posts, and Ghost 6 added social web features based on ActivityPub, so a site can be followed from other federated platforms.
Email delivery
Newsletter sending depends on Mailgun. The documentation is explicit that Mailgun is the only supported bulk email provider and that plain SMTP cannot be used for newsletters; SMTP is used only for transactional messages such as login links. A self-hosted site that never sends posts by email does not need Mailgun at all, and members can also be synced to another newsletter service through Zapier or the integration guides.
Because email is tied to posts and members, Ghost does not offer arbitrary marketing campaigns, segmented promotional sends or multi-step automation workflows of the kind found in Mautic.
Moving from Substack, Mailchimp or Kit
Ghost Admin includes a migrator for Substack that imports both posts and members; paid subscribers can carry on when the same Stripe account is connected. There is also a Mailchimp migrator for members (content cannot be moved) and a CSV member import that accepts Stripe customer IDs for existing paying subscribers. Ghost’s guide for Kit covers importing subscribers by CSV but notes there is no direct way to move paid subscriptions from Kit.
Self-hosting Ghost
The official production guide installs Ghost with Ghost-CLI on Ubuntu 22.04, 24.04 or 26.04, with NGINX, a supported Node.js version, MySQL 8 and at least 1 GB of memory. Since Ghost 6.0 there is also Docker tooling, still labelled a preview, which runs Ghost with Caddy and MySQL and can add the services for ActivityPub and web analytics. The built-in web analytics need a Tinybird account, and by default self-hosted sites use Ghost(Pro)’s hosted ActivityPub service, which is free within usage limits and can also be self-hosted.
Hosted version
Ghost(Pro) is the managed service run by the Ghost Foundation, which describes itself as a non-profit, and the README says all of its revenue goes to the foundation to fund development. It has a 14-day trial, and Ghost(Pro) customers can get help from a migrations team.
Limitations
Newsletters are locked to Mailgun when self-hosting, which adds an external account and its costs. Ghost is not a general marketing email platform: there are no visual automation workflows, and email goes out as posts to members rather than as freely targeted promotional campaigns. Self-hosting means running Node.js and MySQL, and some newer features, such as web analytics and ActivityPub, rely on external or hosted services by default.
Who it suits
Ghost is the closest open source match for Substack and for creators on Kit whose main business is a free or paid newsletter: writers, journalists, independent publications and small media companies that want their own domain, website and Stripe account. Businesses that mainly need promotional campaigns and automations are better served by listmonk or Mautic.
License details
MIT. The Ghost name and logo are trademarks of the Ghost Foundation and are covered by a separate trademark policy.
Technical details
Self-hosting needs
- MySQL
- Mailgun account for newsletters
Built with
- Node.js
- React
GitHub topics
- blogging
- cms
- ghost
- javascript
- journalism
- nodejs
- publishing
- web-application
Reviewed by the OpenSourcePicks editors from the project's repository and documentation. Something out of date? Tell us.