Why I Use PayloadCMS (and Probably Always Will)
Author
Padraic O'Neill
Date Published

There are a lot of ways to build a website. Most of them work fine — until they don’t.
I’ve built with WordPress, static site generators, headless APIs, custom stacks, and probably a few things I’ve already forgotten. They all have their moments. But at some point, you start wanting more control. You get tired of digging through plugin conflicts, copy-pasted snippets, and UI toggles that change with every update. Not to mention the exorbitant license fees for basic functionality. You just want to build.
That’s where PayloadCMS comes in.
A CMS for People Who Actually Code
Payload is built on Next.js, React, and Node, which means it fits right into my normal workflow. It’s not trying to hide the code from you — it gives you the codebase and says, “Here, make it yours.”
I can define my own collections and access rules in TypeScript, spin up GraphQL queries instantly, and hook everything into a real design system instead of some mystery theme folder. No plugins, no guessing, no “which builder are we using now?” conversations.
It’s still a CMS — editors can log in, manage content, and publish things — but the developer experience feels like building a proper web app. Which, honestly, it is.
Why It Works for Me
I like to work close to the metal. Payload gives me that. I can code my own blocks, set up my own database (Mongo or Postgres), and deploy however I want — Docker, Cloud Run, Netlify, whatever. It’s all just JavaScript, not magic.
It’s also fast. Not “I-checked-with-Lighthouse” fast, but feels-good-to-use fast. Pages load instantly, edits sync cleanly, and the admin dashboard actually looks like it was designed this decade. The live preview feature is especially great — you can make an edit in the CMS and see the change instantly reflected on the front end. It’s one of those small things that makes content editing feel less like work and more like collaboration.
An example of the live preview feature in Payload. Notice it works for custom UI components as shown here working on a tag.
This site — emly.io — runs on Payload. Every page, every project, every block is something I built directly. If I need a new layout, I code it. If I want to integrate an AI tool, I can. There’s no “wait for plugin support” — I just build it.
WordPress? Sure.
WordPress works for a lot of people. It powers half the web for a reason. But for me, it’s a bit like renovating a house where every wall hides another wall. You can do great work with it — I just prefer working without the extra drywall.
The other problem I have with WordPress is the Admin Dashboard advertising. Let’s say you just want to show your Instagram feed, but you’re using the free version of the plugin. Congratulations — you’ve now invited an endless parade of upgrade nudges and “Pro” plan pop-ups into your workspace. Each plugin has its own upsell, each update brings a new prompt, and before long, you’re juggling ten separate licenses. Free doesn't stay free for long.
Payload, on the other hand, stays out of your way. No nagging, no “limited features,” no paywalls disguised as settings. It’s just you, your code, and the freedom to build what you want — quietly.
Final Thoughts
If you’re a developer who likes React, TypeScript, or just having full control over your CMS, try Payload. It’s open-source, actively maintained, and growing fast.
And if you’re one of my clients reading this — don’t worry. You won’t have to touch the code. That’s my job.