9 min read

Why I Chose Ghost (And Why I Keep Choosing It)

I've been following Ghost for more than 10 years. Tried (and failed) to launch with it twice, and I'm still here. This is why (for me) Ghost keeps winning over Substack, Medium, and Beehiiv - even with its flaws.
Ghost CMS logo displayed on laptop in modern workspace setup

The first time I heard about Ghost, it was probably 2014 or 2015, I can't remember exactly, but I remember the feeling.

Since the days I was in college, I was trying to start a blog about architecture and architectural visualization. WordPress always felt bloated and overly dependent of plugins for what I needed. Blogger felt... dated, and completely obsolete. I just wanted something clean, something built specifically for writing and publishing, not a website builder pretending to be a blogging platform (or is it the other way around?). Not a CMS trying to do everything for everyone.

Ghost was different. It was focused, minimal, built from the ground up exactly for one thing: publishing.

I loved that immediately, but never actually launched that blog. Life happened, motivation faded, priorities shifted. You know how it goes.

But I kept following Ghost. Checking in every now and then, see what they were releasing, watch the platform evolve from that "scrappy" Kickstarter project into something genuinely impressive.

"Just a Blogging Platform"

There's this post that started everything. John O'Nolan wrote it back in 2012, before Ghost even existed. It was called "Project Ghost" and it laid out his vision for what would become the platform.

Project Ghost
“WordPress is so much more than just a blogging platform” I’ve been building blogs using WordPress almost since it first existed. I’ve designed & built blogs for a lot of different kinds of people over the years. Individuals, musicians, artists, hobbyists, small companies, large companies, even Fortune 500 companies. The

The subtitle was simple: "Introducing... Ghost. Just a blogging platform."

He wasn't pitching some revolutionary new technology or trying to disrupt an entire industry. He was frustrated with WordPress becoming too much of everything - a full CMS, an e-commerce platform, a social network builder - and not enough of what he actually needed: a clean tool for publishing words.

The post outlined a fictional concept, an idealistic idea for what a publishing platform could be if it stayed focused on one thing: Split-screen Markdown editor. No bloat, no unnecessary features, no corporate interests pulling it in different directions.

At the end of the post, he was transparent: "It doesn't exist. It's just a rough/unfinished idea at this point."

That post now has an update at the bottom: "This idea was the beginning of Ghost, and went on to raise $300,000 on Kickstarter "

What stuck with me about that original post wasn't the features he described, it was the philosophy behind it. The idea that software could stay focused on doing one thing really well instead off trying to be everything to everyone. That a platform could be built for writers, not marketers; for publishing, not monetization metrics.

And the line that apparently got him the most criticism at the time, was this one: "Ghost would be free as in Mozilla, not as in Automattic... Every decision made would be about improving the software, not the bottom line."

More than a decade later, that's still what Ghost is, and how it operates.

The COVID Attempt

Fast forward to COVID, the lockdowns, extra time, that weird energy everyone had for starting projects they'd been putting off for years.

I decided to finally do it. Got an account with Gloat, a Ghost hosting service that no longer exists (they got acquired by MagicPages). Then life got in the way again. A few months later I canceled the account. The blog idea went back to the shelf (again).

Last year I tried again. Got a MagicPages account and started planning the launch and the content for the next couple months. This time I was more serious about it, drafting the content, thinking through the focus (still architecture and visualization at that point), actually putting in the work.

And then I didn't launch it. 🤣 One more for "Project Graveyard."

Looking back now, I'm grateful I didn't. Because everything I was planning to write about... I didn't care about anymore. The motivation and energy weren't there. The career pivot changed everything. Now I'm building something that actually aligns with where my head and my energy are. And Ghost is still the platform I'm using.

Why Ghost, Though?

Here's the thing about Ghost that I think gets overlooked in all the "best blogging platforms" comparisons: It's not trying to be everything.

Substack wants to be a publishing empire, a social network, a discovery engine, and algorithm feeding you content. They want you locked in their ecosystem, dependent on their reader network.

Medium wants to be the place where "ideas find you." But in reality, they want you writing inside their walled garden, behind their paywall, optimized for their algorithm and their Partner Program metrics. Your content lives on medium.com/yourusername, not yourname.com. Unless you pay for a Medium Membership to be able to use a custom domain. But even then, you're still building on their platform.

Beehiiv wants to be your growth engine, your analytics dashboard, your monetization platform. Everything optimized for metrics, conversions, and subscriber counts.

WordPress wants to power the entire internet. Plugins for everything, themes for everyone. So much flexibility that you spend more time configuring and tweaking than writing.

Ghost just wants to help you publish. That's it. That's the whole philosophy, to give writers the tools to write, publish, and distribute their work. No surveillance capitalism, no algorithmic manipulation, no platform lock-in.

And crucially: It's open-source.

The Platform Comparison Nobody Asked for (but I'm Putting Here Anyway)

Let me break down what you're actually getting with each platform:

Platform comparison table showing Ghost, Substack, Medium, Beehiiv, and WordPress features including ownership, pricing, and privacy options

The real question: Do you want to own your platform or rent it?

Substack, Medium, and Beehiiv are all renting. You're building on someone else's land. If they change the rules, you're stuck. If the platform dies or pivots, your audience is at risk.

Ghost - especially self-hosted Ghost - is ownership. You control everything.

That matters to me. A lot, actually.

The Open-Source Part Matters

This is where Ghost really separates itself from the pack.

Substack, Medium, and Beehiiv are all proprietary. If they change their terms, if they decide to prioritize certain content over others (which they already do. Medium's algorithm heavily favors Partner Program content, Substack has its "recommended" writers), you're at their mercy. If they shut down or get acquired or pivot to something else entirely, your audience is gone.

With Ghost, you can self-host it. The entire codebase is on GitHub. You own your content, your subscribers list, your URLs. If MagicPages went under tomorrow (I know they won't), I could easily export everything and spin up my own Ghost instance or transfer it to other hosting.

That's freedom.

I'm not self-hosting right now, because frankly, I don't need that complexity yet. MagicPages works awesomely, it's less than 6€/month, and it's one less thing to manage while I'm focusing on learning to code, and still haven't figure out what this blog even is or will be.

But I could self-host if I wanted to. That option exists, and that matters to me philosophically.

What Ghost Gets Right

Ghost has RSS built-in. Proper, full-content RSS feeds. Not summaries, not teasers designed to force people back to your site for ad impressions. Actual feeds that work the way feeds are supposed to work.

It has ActivityPub integration (still WIP), and this one is actually impressive. Ghost 6.0 release made your publication a native participant in the social web. People can follow your site from Mastodon, Threads, Flipboard, or any other platform that speaks ActivityPub, using an address like @[email protected]. When you publish a post, it automatically distributes to your federated followers across the Fediverse.

But it goes further than that. Ghost includes Notes, a short-form content type that lets you post quick updates directly to the Fediverse without publishing them on your main site. Think of it like tweeting, or posting on Mastodon, but from your own domain, to an open network instead of an algorithmic walled garden.

There's also a built-in social web reader right in your dashboard. You can follow other publications, like their posts, reply to them, repost them. All the social interactions you'd expect, but happening in an open, decentralized network where no single company controls the algorithm or owns your audience. Needless to say, these "social" options are all optional. You need to activate it to use it. It isn't active by default.

💡
I know I said earlier the difference between Ghost and the other platforms is that it's built specifically for writing and publishing, while others try to be everything at once. This last part on federation may seem contradictory to that, but Ghost isn't trying to be a social network or anything like that. From my point of view, these are just tools to improve your publishing and interacting with your audience, without the need to rely on external platforms.

Ghost's newsletter functionality is native and clean. No need for Mailchimp, Kit, Loops, or some third-party service mining subscriber data. But it still lacks some customization options.

Ghost 6.0 also brought built-in analytics. Privacy-first, cookie-free analytics powered by Tinybird. Real-time traffic metrics, top posts, referral sources, newsletter performance, member growth, revenue tracking. All first-party data, served from your own domain, with no tracking cookies. No Google Analytics needed unless you specifically want it.

The writing interface is genuinely good. Markdown support, distraction-free mode, clean formatting. It's designed for people who actually write, not people who assemble content from blocks and widgets.

The platform is fast. Ghost is built on Node.js, not PHP. Modern architecture, not legacy bloat. Pages load quickly, and the admin interface doesn't feel like you're fighting the CMS.

What Ghost Gets Wrong

Let me be direct: Ghost isn't perfect.

The theming system uses Handlebars, which is... fine, but not exactly modern. If you want to build a custom theme, you're learning a templating system that's not widely used outside of Ghost.

The plugin ecosystem is basically nonexistent. WordPress has 60,000+ plugins, Ghost has... themes and integrations, mostly. If you want custom functionality, you're building it yourself or using external tools. But all this can also be viewed as a positive, since no one wants Ghost to be cluttered or dependent of plugins like WordPress.

The hosted Ghost(Pro) pricing is expensive compared to competitors. $15/month (yearly) and $18/month (monthly) minimum, and it scales up quickly if you want more than basic features. That's why I'm on MagicPages instead. They provide all the features at a small fraction of Ghost(Pro)'s price. But in a way it's understandable. Being an open-source project, the only way they get money for development is with hosting. No judging here. But for someone, like me, who's just starting and doesn't know or doesn't want to self-host, it's kind of expensive.

Overall, Ghost still feels a bit "developer-first" in some ways. It's gotten much better in recent years, but there's still this assumption that you're comfortable with code and configuration. Not everyone is.

But here's the thing: those trade-offs are worth it to me. Because the philosophy is right.

The Philosophy Part

I keep coming back to this: Ghost aligns with how I think the web should work.

Own your platform. Don't rent it from someone who might change the rules overnight.

RSS over algorithms. Let people subscribe to you, not a feed curated by some engagement-maximizing machine learning model.

Privacy by default. No tracking scripts, no surveillance, no selling user data to advertisers.

Open-source over proprietary. Transparent development, community-driven, not locked behind corporate walls.

John O'Nolan has been building Ghost this way since the beginning. The whole "building in public" philosophy that I'm trying to adopt here, he's been doing it for over a decade with Ghost. Clear development logs, open roadmaps, honest discussions about what's working and what isn't.

That resonates with me. That's the kind of internet I want to be part of.

So, Why Ghost?

Because it's a tool that respects me as a user.

Because it's built on principles I agree with.

Because it gives me the freedom to write without worrying about whether I'm feeding an algorithm or optimizing a platform's engagement metrics.

Because if I want to move to self-hosting someday, I can. If I want to export everything and switch to something else, I can. Nothing is locked down. Nothing is proprietary.

And, well... because it's just really good at the one thing it's supposed to do: help me publish.

I'm not saying Ghost is perfect for everyone. If you need a website builder with drag-and-drop everything and a load of plugins, WordPress might be the right choice for you. If you want the built-in audience discovery of Substack or Medium's network effect, those platforms serve that purpose. If you need advanced email marketing automation, then Beehiiv has those features.

But for me - someone who values independence, ownership, and the open web - Ghost is the perfect choice.


Yeah, maybe there's something poetic and fitting about using a platform called Ghost for a fresh start. Something that exists but doesn't get in the way.

Or maybe I'm just attached to what it represents: independence, ownership, and a tool that respects both the writer and the reader.

Probably both.

May The Code Be With You! 🚀