Skip to main content

What's better than Substack?

Which Substack alternative is better depends on what you optimise for: domain, data, API, fees or hosting. Seven options compared for developers.

Updated 21 min readMarkdown

Nothing is better than Substack at everything, but several tools beat it on specific axes a developer cares about. Ghost is the strongest pick if you want an open-source publication you can host yourself, listmonk if you only need list mail on your own infrastructure, and beehiiv or Kit if you want a hosted tool with a documented API and webhooks. Substack's real edge is discovery and zero setup, so the honest answer is "better at what?"

Last verified: 2026-10-26. Prices, fees and limits below were read from each vendor's own pages that day, in USD. They drift, so recheck before you pay anyone.

Better at what? The axes worth comparing

Most "Substack alternatives" lists rank editors and templates, which rarely decide whether you stay or leave. The things that bite later are structural.

Here's the set I'd score each option against:

  • Domain and DNS: can you serve the publication from your own hostname, and what does that cost?
  • Data: what leaves with you when you go, and in what format?
  • Programmability: is there an API that writes, and do webhooks tell you when something happens?
  • Code control: can you change the theme, or run the software yourself?
  • Search presence: do you control URLs, feeds and structured data?
  • Money: what does the platform take from paid subscriptions, on top of the card processor?
  • Sending: who owns the mail infrastructure and the sender reputation?

Seven alternatives get a short section each: Ghost, beehiiv, Kit, Buttondown, listmonk, WordPress with Jetpack, and VeloCMS. VeloCMS is my own project's product, so I've held it to the same format and the same length as the rest, weaknesses included.

What does Substack actually give you, and what does it keep?

Start from the baseline, because "better" only means something relative to it.

Substack takes a 10% platform fee when you turn on paid subscriptions, and Stripe separately charges 2.9% plus 30 cents per transaction, per Substack's own finance FAQ. That FAQ names no other fee, and its line is "We don't get paid unless you do." Its going-paid page puts it as writers keeping 90% of their revenue minus credit card fees. There's no monthly seat price. You pay when you earn, which is the model's whole charm and, once revenue grows, its whole cost.

Custom domains are a one-off $50 per publication, after which you can add and remove domains at no extra cost, according to Substack's announcement. That post dates from 2020 and is the most recent official statement I could reach, so confirm the figure in your settings. It's cheap, but it's still a gate on something most platforms treat as table stakes.

On data, Substack's help article says Settings, then Exports, then "Create new export" gives you a zip covering your posts, subscriber list and related statistics (I read an archived copy, last updated January 2023, because the live page blocked my fetch). Buttondown's Substack guide says the subscriber list is a CSV inside that zip and that post images sit on Substack's CDN, which its importer copies across. Ghost's migration guide uses the same zip for posts and pulls free and paid subscriber CSVs separately. Those are competitors describing Substack, so test an export of your own.

On programmability, the published Developer API terms (last updated January 8, 2026) describe an API returning public profile data such as names, publication URLs and subscriber counts, and prohibit using it to replicate or compete with core Substack features. They mention no write access, webhooks or subscriber management, and nothing else I found documents them.

None of that is a scandal. Substack is a product built to remove decisions. The trade is that the decisions it removes are the ones this article is about.

Is Ghost better than Substack?

For a developer who wants the publication to be a real piece of software, usually yes. Ghost is MIT-licensed, so you can read and run the code, and the repository's README says 100% of Ghost(Pro) revenue goes to the Ghost Foundation. You choose between Ghost(Pro) and running it yourself.

On the hosted side, Ghost's pricing lists Starter at $18 a month billed yearly, Publisher at $29, and Business at $199, with a custom tier above that. Those are the figures for the 1,000-member setting of its size selector, and they climb as your member count does. Every plan has a custom domain, unlimited email sends, and no Ghost transaction fees on paid memberships (payment processor fees still apply), though Starter can't take paid subscriptions at all and ships only the default theme. The Admin API, webhooks and custom integrations start at Publisher, while the Content API is on every plan.

The API story is the strongest of the group. The Content API is read-only and lets you render posts, pages, tags and tiers on any front end, and the Admin API can add and edit posts and members, upload themes and manage webhooks. Webhooks cover posts, pages, tags and member events (member.added, member.edited, member.deleted). The Admin API's webhook object takes an optional secret, but the pages I read don't spell out the signature header, so check the current format before you trust a payload.

The self-hosting catch is mail. Ghost says its bulk newsletter delivery needs a bulk mail API, that Mailgun is the only one it currently supports, and that plain SMTP can't be used for newsletters (Ghost docs). So "free to self-host" still means a Mailgun account and its sending limits. The export guide lists content and settings as JSON and members as CSV, with media included on Ghost(Pro) but copied by hand on a self-hosted install.

Weakness: you give up Substack's network, and self-hosting makes you the sysadmin.

Is beehiiv better than Substack?

If you want a hosted growth tool with a real API, it's a reasonable upgrade, at a monthly price.

beehiiv's pricing page lists a Free plan up to 2,500 subscribers, then Lite at $49 a month on yearly billing ($59 monthly) and Pro at $95 yearly ($109 monthly), shown for the 1,000-subscriber setting. Lite covers up to 100,000 subscribers and Pro up to 250,000, but prices climb with list size, so quote at your own number. Lite and Pro show a 0% take rate on paid subscriptions, and the FAQ says beehiiv takes nothing from paid subscription and digital product revenue, minus Stripe's standard 2.9% plus 30 cents. Paid subscriptions begin at Lite, not on Free.

Custom domains are the line to confirm: the page's structured data lists them under Free, but the visible plan cards don't, so check at signup.

For developers, the same structured data lists API access on Free (excluding the Send API), webhooks from Lite, and the Send API on Pro. The webhook docs say webhooks are for paid users on Lite and above, delivered through Svix, so you verify svix-id, svix-timestamp and svix-signature headers against a signing secret. That's a well-trodden pattern, which is nice.

Weakness: the cost scales with your list even if you never sell a subscription, and it's sold as a hosted service, so you can't run or patch it yourself.

Is Kit (ConvertKit) better than Substack?

Better if your business is a creator mailing list with automations and product sales rather than a publication.

Kit's pricing page shows a Free plan for up to 10,000 subscribers, Creator at $33 a month on yearly billing ($390 a year), and Pro at a list price of $66 a month on yearly billing, currently discounted to $50 for the first year under a limited-time offer.

Sales are where Kit differs from the rest. The page lists 3.5% plus 30 cents on digital products, subscriptions and paid newsletters, on every plan including Free, and says that figure is inclusive of credit card processing, so Kit only takes 0.6%. The arithmetic fits: 3.5% minus Stripe's 2.9% leaves 0.6%. Kit's help center says selling in USD costs 3.5% plus $0.30 per transaction, that it's the only cost of selling through Kit, and that a paid newsletter is something you can sell.

The authentication docs offer OAuth 2.0 for App Store apps and an X-Kit-Api-Key header for your own automations, at 600 and 120 requests per rolling minute respectively. Kit also documents webhooks signed with an X-Kit-Signature header (HMAC-SHA256 over the timestamp and raw body), and its error docs say an account whose plan lacks API or webhook access, a free plan or lapsed trial for example, gets a 401. So confirm your tier before you build on it.

Weakness: it's an email tool first. If you want a website with URL and markup control, you'll be bolting that on elsewhere.

Is Buttondown better than Substack?

For a writer who likes Markdown and a small, honest tool, often.

Buttondown's pricing is unusual. The base is free for your first 100 subscribers and includes the editor, sending from a custom domain, and hosted archives. Everything else is an add-on: paid subscriptions are plus $9 a month, analytics plus $9, tagging and segmentation plus $9, comments and surveys plus $9, automations plus $29, archives on a custom domain plus $29, whitelabeling plus $79. Above 100 subscribers the base price comes from a slider; the page's structured data lists $9 up to 1,000 subscribers and $29 up to 5,000, but read the live slider for your number.

There's no revenue percentage to worry about. Buttondown's Stripe page says you keep everything after credit card fees, "we don't take a cut of your paid subscriptions", and that the customers and subscriptions live in your own Stripe account.

The API docs describe a plain REST interface covering resources such as subscribers, emails, tags and webhooks. Webhooks are signed with an optional HMAC-SHA256 key in an X-Buttondown-Signature header, computed over the raw body. I couldn't confirm which plan includes API access.

Weakness: the add-on model makes the real monthly cost hard to predict until you tick the boxes, and the pricing page lists archives and add-ons, not pages or a store, so it's a newsletter tool, not a CMS.

Is listmonk better than Substack?

Better if all you want is to send mail to a list and own every byte, and worse for nearly everything else.

listmonk is a self-hosted newsletter and mailing list manager that ships as a single binary and uses a PostgreSQL database. It's licensed under AGPLv3, which matters if you plan to modify and offer it as a service. There's no vendor fee, so your cost is the server and whatever SMTP provider actually delivers the mail.

The API accepts BasicAuth or an Authorization: token api_user:token header, with API users, user roles and per-list roles configured in the admin UI. The docs navigation lists endpoint groups for subscribers, lists, import, campaigns, media, templates, transactional mail and bounces. I didn't find outbound webhooks for subscriber events in the docs.

Weakness: there's no publishing site, no paywall, no payment handling, and no network. Deliverability is entirely yours: SPF, DKIM, DMARC, suppression lists and IP reputation. That's the point for some people, and a trap for others.

Is WordPress with Jetpack better than Substack?

It is if you already have a WordPress site and want mail to come out of it. WordPress is GPLv2 or later, so the code is yours to run and change.

Jetpack Newsletter turns posts into emails, works on any self-hosted WordPress site, and says it doesn't limit or charge by list size, subject to a fair usage policy. On paid subscriptions it takes a cut that depends on your plan. Jetpack's pricing lists the fee as 10% on Free and 2% on Security, Growth and Complete, plus Stripe's processing fees. The same table caps subscriber import at 100 on Free and makes it unlimited on the paid bundles, which matters if you're arriving from Substack with a list. Plan prices are shown in local currency with a first-year discount, so check yours.

This route gives you the largest ecosystem here and the most maintenance: updates, backups, caching and plugin conflicts are yours, and your newsletter inherits them.

Weakness: it's the most flexible choice and the one most likely to be quietly neglected in month eight.

Is VeloCMS better than Substack?

It depends on whether you want one hosted product to cover blog, newsletter, memberships and a store. VeloCMS is a newer, smaller product, and I'm describing it as one option among several, not as the answer.

VeloCMS pricing lists Pro at $9 a month, Business at $29, and Agency at $69, with annual billing at $86.40, $278.40 and $662.40 a year. There's no free plan. Every plan starts with a 14-day trial, and a card is required to start it unless you have a cardless trial code. The first charge lands on day 15. Newsletter subscriber caps are 5,000 on Pro, 50,000 on Business and unlimited on Agency, and a custom domain is included on every plan.

On fees, the page states a 0% VeloCMS platform fee on Stripe sales, with Stripe's standard processing fee for your country the only other cost. For developers, there's a REST API at /api/v1 on every plan, with scoped Bearer keys and daily caps (10,000 calls on Pro, 100,000 on Business, none on Agency). Webhooks are signed with HMAC-SHA256 and retried up to five times. Events include post.published, subscriber.added and subscriber.removed. What the documented API doesn't have is a write endpoint for subscribers: the members endpoint is a read-only list with masked emails. The admin data export produces a zip with one JSON Lines file per collection, a Markdown file per post and a members CSV, and the importer accepts a Substack archive zip.

On sending, a custom sender domain with DKIM, SPF and DMARC verification is listed as a Business and Agency feature on the pricing page and in the admin copy. On Pro, newsletters go out from the VeloCMS sender.

Weaknesses, and I mean them: it's a young product with a small community and no plugin ecosystem on the scale of WordPress. It's sold as a hosted service, so if self-hosting is a hard requirement, pick Ghost, listmonk or WordPress. There's no discovery network.

How do the fee structures compare?

Fees are where the arithmetic gets lopsided as you grow, so here they are side by side. Every line is the platform's own cut, and the card processor's fee comes on top unless noted.

  • Substack: 10% of paid revenue, plus Stripe at 2.9% and 30 cents. No monthly fee.
  • Ghost(Pro): 0% Ghost transaction fee on Publisher and above. Paid memberships are not available on Starter. Monthly plan price instead.
  • beehiiv: 0% take rate on Lite and Pro, paid subscriptions unavailable on Free. Monthly plan price rises with list size.
  • Kit: 3.5% plus 30 cents on products and subscriptions on every plan, which the pricing page says includes card processing (Kit's own share about 0.6%).
  • Buttondown: no cut of paid subscriptions, by its own statement. The paid-subscriptions add-on is $9 a month.
  • listmonk: no fee, no payments. You'd wire up your own billing.
  • WordPress with Jetpack: 10% on Jetpack Free, 2% on Security, Growth and Complete, plus Stripe.
  • VeloCMS: 0% platform fee on Stripe sales per its pricing page, with a monthly plan price.

A worked example makes the gap concrete. This is my arithmetic, using the 2.9% plus 30 cents Substack quotes for Stripe, and Stripe's rates vary by country. On a $10 monthly subscription, Substack takes $1.00 plus $0.59 in card fees, $1.59 in total. A platform with no cut (beehiiv Lite, Ghost Publisher, Buttondown, VeloCMS) leaves only the $0.59. Kit's all-in figure is $0.65, and Jetpack on a paid bundle is $0.20 plus $0.59, or $0.79.

The break-even question is simple. A flat monthly fee beats a percentage cut once revenue is high enough, and a percentage cut beats a flat fee while you're small. Compare Substack's 10% platform fee alone with a flat plan, since the card fee is the same either way. Ghost Publisher at $29 a month breaks even at $290 of monthly paid revenue, beehiiv Lite at $49 breaks even at $490, and VeloCMS Pro at $9 breaks even at $90. Those flat prices also move with list size and buy you different things, so run your own numbers.

Which option gives you the best API and webhooks?

Ranked by what I could actually read, not by marketing, and with the detail in each section above:

  • Ghost: broadest, with a write-capable Admin API and member webhooks from Publisher.
  • Kit and beehiiv: documented APIs with signed webhooks, gated by plan.
  • Buttondown and listmonk: plain REST APIs over subscribers and sending.
  • WordPress: its own REST API plus whatever plugins add.
  • VeloCMS: content endpoints, a read-only members list, signed subscriber webhooks.
  • Substack: public-profile data only, as far as the published terms show.

If you must create subscribers from your own signup form on a static site, check that specific write path before you decide. It's the single most common thing a platform advertises and then half-supports.

What happens to your data and URLs when you leave?

This is the question to ask before you start, and the one nobody asks. Treat "export" as three separate things: content, subscribers and media.

Ghost's export is the most legible, with JSON for content and CSV for members, and media included on Ghost(Pro) but not on self-hosted installs. Substack's is a zip of publication data with a subscriber CSV inside, with the caveat above about image hosting. VeloCMS's export is JSON Lines, Markdown and CSV. For beehiiv, Kit and Buttondown I didn't verify export contents from their pages, so test one on a throwaway list.

Money moves are the part people miss. Ghost's migration guide notes that Substack keeps taking its 10% on your existing paid subscriptions after you move, and Buttondown's guide says to ask Substack support to disconnect Stripe and remove the 10% application fee without cancelling or refunding existing subscriptions. It also warns that disconnecting Stripe yourself from the Substack dashboard cancels and refunds all paid subscriptions. Both guides say to reuse the same Stripe account so subscribers don't re-enter cards. Those are competitors' instructions, so confirm the wording with Substack's support before you act.

On URLs: if your publication already lives on a domain you own, point it at the new host and keep every link. On a substack.com address you can't move DNS you don't control, and I found no Substack-side redirect option, which is the argument for buying the $50 domain early. Ghost's guide shows the one mapping you'll almost certainly need: Substack serves posts under /p/<slug>, so it gives a 301 rule that sends /p/awesome-post to /awesome-post.

As general practice, not vendor guidance: lower your DNS TTL a day ahead, send the first issue from the new platform to a small segment, and open a few migrated posts next to the originals.

What should you check about domain, DNS and deliverability?

Two separate things hide under "custom domain." One is the web address readers see. The other is the sending domain that Gmail and Yahoo judge you on.

For the web address, the per-vendor answers are in the sections above. For sending, ask each vendor whether you can authenticate your own domain with SPF and DKIM and publish a DMARC record. As general guidance, hosted tools tend to hand you the records to add, while self-hosted ones leave sender reputation entirely to you. Buttondown lists sending from a custom domain in its base plan, and VeloCMS gates it to Business and above.

A quiet detail: when mail goes out from a shared vendor domain, your sender reputation is tied up with that vendor's other customers. Substack's FAQ says posts arrive from an address on its own domain (its example is skylinetrails@substack.com for skylinetrails.substack.com). That's a fine trade early on and a thing to revisit once your list is worth protecting.

When is Substack actually the better choice?

More often than people who write alternatives lists like to admit.

Pick Substack if you want to start writing in ten minutes and never open a DNS panel. Pick it if discovery matters more than control: its About page says subscribers discover new voices through recommendations, Notes and collaborations, and that more than 30% of paid subscriptions come from within Substack's network. Those are Substack's own numbers, but nothing else here has an equivalent audience built in. Pick it if you'd rather pay nothing until you earn something, because the percentage model is the safest way to start with no revenue and no budget.

The calculus changes when revenue is steady, when you need your own domain for search, when you want to wire the newsletter into other systems, or when you can't accept a vendor deciding how your list is stored.

Who is each option best for?

  • Substack: writers who want zero setup and built-in discovery, and are fine paying 10% for it.
  • Ghost: developers who want an open-source publication with a real API, hosted or self-run.
  • beehiiv: growth-minded newsletter operators who want a hosted tool and signed webhooks.
  • Kit: creators selling products with automations, who don't need a blog-first site.
  • Buttondown: Markdown-minded solo writers who like paying only for what they switch on.
  • listmonk: people who want mail on their own server and are happy to run SMTP and deliverability themselves.
  • WordPress with Jetpack: anyone already on WordPress who wants the biggest plugin ecosystem and accepts the upkeep.
  • VeloCMS: people who want blog, newsletter, memberships and a store in one hosted login, and can live without a big ecosystem or self-hosting.

FAQ

Is there a free alternative to Substack? Several have free tiers: beehiiv up to 2,500 subscribers, Kit up to 10,000, Buttondown for the first 100, and Jetpack Newsletter on the Free plan. Paid subscriptions aren't available on beehiiv Free or Ghost Starter, and Jetpack's Free plan takes 10% and caps subscriber import at 100. VeloCMS has no free plan, only a 14-day trial.

Can I keep my subscribers if I leave Substack? Substack's help center says the export includes your subscriber list, and Buttondown's migration guide describes it as a CSV inside the export zip. Import it into the new tool and test on a small segment first. Paid subscribers are a separate problem, because their payment relationship lives in Stripe. Ghost's and Buttondown's guides both say to connect the same Stripe account, and to ask Substack to remove its 10% fee.

Does Substack charge more than the alternatives? Only once you have paid revenue. It charges 10% plus Stripe's card fees, with no monthly fee. Flat-fee tools like Ghost(Pro) cost more at small revenue and less at large revenue, and the break-even sums above show where.

Can I self-host a Substack alternative? Yes: Ghost (MIT), listmonk (AGPLv3) and WordPress (GPLv2 or later, with Jetpack for newsletters). Self-hosted Ghost needs Mailgun for newsletter delivery, and you own updates and backups.

Which alternative is best for SEO? The ones that let you control your own domain, URLs and site markup: Ghost, WordPress and VeloCMS give you a full site. Kit and Buttondown are built around mail rather than a full website. I didn't benchmark search performance, so I'm not ranking them.

Do I need an API to run a newsletter? No. But if your signup form lives on your own site, or you want to trigger mail from your app, a write-capable API with signed webhooks saves a lot of glue code.

Sources

Official vendor pages read on 2026-10-26, plus an archived copy of one Substack help article and two rival migration guides, as labelled below.

No comments yet. Be the first to comment.