Essay · 6 min read
March 2026
Why I Left WordPress for Next.js (And Never Looked Back)
I built my first 20 sites on WordPress. Then I switched to Next.js and everything changed. Here's why.
I was a WordPress developer
My first real client sites were all WordPress. Custom themes, ACF fields, WooCommerce stores — the whole ecosystem. I got fast at it. I could spin up a professional-looking WordPress site in a weekend. For a while, I thought that was the ceiling.
Then I built my first Next.js site and realized I'd been working with one hand tied behind my back.
The moment it clicked
I deployed a static Next.js site to Cloudflare Pages and ran a Lighthouse test. Perfect 100 across the board — performance, accessibility, best practices, SEO. Not after hours of optimization. On the first deploy.
I went back and tested my best WordPress site. 67 performance. 82 accessibility. With caching plugins, image optimization, and a lightweight theme. That gap isn't a tuning problem — it's architectural.
What I gained
Total control. In WordPress, you're always fighting the abstraction layer. Want a specific layout? Override the theme's CSS with your own CSS with an !important flag. Want a custom post type? Install a plugin or write PHP that hooks into WordPress's action system. In Next.js, I just... build what I want. No layers to fight through.
Type safety. TypeScript catches errors before they reach production. No more "undefined is not a function" in a PHP template because a custom field was renamed. The compiler tells me when something is wrong before a single user sees it.
Component architecture. Reusable React components mean I can build a library of battle-tested UI patterns. A hero component I built last year works in this year's projects with zero modifications. WordPress themes don't compose like that.
Deployment simplicity. Push to GitHub, Cloudflare builds and deploys automatically. No FTP, no cPanel, no "updating plugins broke the site" at 2 AM. The deployment pipeline is invisible — which is exactly how it should be.
What I gave up
Honesty matters, so here's what's harder with Next.js:
- Content editing for non-technical clients — WordPress's admin panel is genuinely good for content updates. I solve this with headless CMS options or by handling updates myself for smaller clients.
- Plugin ecosystem — Need a booking system? WordPress has 50 plugins for that. In Next.js, you're integrating APIs or building it yourself. More work, but also more control.
- The learning curve — React, TypeScript, and modern tooling have a steeper learning curve than WordPress's template system. But the payoff in quality and speed is worth the investment.
Who should make the switch
If you're a developer building sites for service businesses — plumbers, contractors, movers, consultants — Next.js is the better tool. These clients don't need a CMS. They need a fast, credible, SEO-optimized site that converts visitors into calls. That's exactly what a static Next.js site delivers.
If you're building a content-heavy blog with multiple editors and daily posts, WordPress still makes sense. Use the right tool for the job. For me, the right tool for 90% of my projects is Next.js — and the results speak for themselves.
Want this kind of work for your business?
Custom websites that bring in customers — three days from kickoff to live, sub-second loads, ranking on Google from week one.