We've built a lot of WordPress sites over the years. Client brochure sites, blogs, small e-commerce stores, membership sites. WordPress was the default answer for most web projects, and for good reason - it's flexible, familiar, and has a massive ecosystem.
But we don't build new WordPress sites anymore. Our default is now Next.js.
This isn't about hating WordPress or following trends. It's about consistently delivering better results for clients - faster sites, better security, cleaner codebases, and improved SEO performance. Here's what drove the change.
The Problems We Kept Hitting with WordPress
Every WordPress project would start fine. A fresh install, carefully chosen theme, essential plugins only. But over time, the same issues emerged:
Plugin Bloat
WordPress's strength is its plugin ecosystem. Need a contact form? Plugin. SEO tools? Plugin. Caching? Plugin. Security? Plugin.
But each plugin adds weight. JavaScript that loads on every page. Database queries that run on every request. Potential conflicts with other plugins. Update requirements that multiply.
We'd hand over a site running smoothly, then revisit six months later to find 15 new plugins installed, PageSpeed scores in the 40s, and multiple "update available" warnings including some for abandoned plugins with known vulnerabilities.
Security Vulnerabilities
WordPress powers 40%+ of the web. That makes it the biggest target for attacks. Every vulnerability in WordPress core, themes, or plugins affects millions of sites simultaneously.
We'd spend significant time on security: keeping everything updated, configuring security plugins, hardening server configurations, monitoring for breaches. For complex sites, security maintenance became a substantial ongoing cost.
Performance Degradation
A fresh WordPress site with a quality theme can be fast. But WordPress architecture - PHP generating pages dynamically on each request, database queries for every content piece - has inherent limitations.
Add page builders like Elementor or WPBakery, which inject significant JavaScript and CSS overhead, and performance suffers. Caching helps but doesn't solve the underlying architecture.
We'd implement caching, optimise databases, configure CDNs - and still struggle to hit the PageSpeed scores that Next.js achieves out of the box.
Limited Customisation (Without Massive Complexity)
Need something that doesn't fit WordPress's post/page model? You're either forcing content into structures it doesn't fit, or building complex custom post types, custom fields, and custom queries.
For simple sites, WordPress is fine. For anything with custom functionality - client portals, interactive calculators, complex filtering - you end up fighting the platform rather than working with it.
We still maintain existing WordPress sites for clients who have them. We understand the platform well. But for new builds, we recommend alternatives that deliver better outcomes.
What Next.js Does Differently
Next.js is a React framework for building web applications. Where WordPress generates pages dynamically with PHP, Next.js can pre-render pages at build time (static generation) or on-demand (server-side rendering).
The Performance Transformation
When we rebuilt our own site (nectra.co.uk) from a previous design to Next.js, the PageSpeed score went from 59 to 92. That's not optimisation tweaking - that's architectural advantage.
Next.js achieves this through:
Automatic code splitting. Only the JavaScript needed for each page loads. WordPress themes typically load everything on every page.
Image optimisation built-in. Next.js's Image component automatically serves WebP/AVIF, resizes for device, and lazy-loads. No plugins required.
Edge deployment. Deploy to Vercel and your site serves from locations globally, with pages cached at the edge. Response times in milliseconds, not seconds.
Static generation. Marketing pages can be pre-built at deploy time. No server processing on each request. Just serving pre-rendered HTML from CDN.
Security by Architecture
Next.js sites deployed to platforms like Vercel have minimal attack surface. There's no admin panel to brute-force. No database to SQL-inject. No plugins with vulnerabilities to exploit.
Your content might live in a headless CMS (like Sanity), but that's separate from the public-facing site. Attackers would need to compromise the CMS, which has its own authentication and security, completely separate from the website.
We haven't had a security incident on a Next.js site. That's not luck - it's architecture.
SEO That Actually Works
Google's ranking algorithms increasingly prioritise user experience metrics - Core Web Vitals scores for loading, interactivity, and visual stability.
Next.js sites naturally excel at these metrics:
- Fast LCP (Largest Contentful Paint) from static generation
- Low FID (First Input Delay) from code splitting
- Minimal CLS (Cumulative Layout Shift) from Image components with fixed dimensions
Add in Next.js's built-in metadata API for generating title tags, descriptions, and Open Graph data, plus automatic sitemap generation, and you've got strong SEO foundations without plugins.
Real Developer Experience
This matters more than clients might think. Faster development means lower costs and quicker delivery. Clean code means easier maintenance.
Next.js uses React - the most popular JavaScript framework with massive community support. Finding developers who know React is easy. Finding developers who know the intricacies of a specific WordPress theme's custom framework? Much harder.
The Real Comparison: Our Own Site
Let me be specific. Our previous site design was WordPress with a premium theme and standard plugins. Our current site is Next.js with Tailwind CSS.
| Metric | Previous | Current |
|---|---|---|
| PageSpeed (Mobile) | 59 | 92 |
| Time to Interactive | 4.2s | 1.1s |
| Total Page Weight | 2.8MB | 420KB |
| Security Plugins | 3 | 0 |
| Monthly Maintenance | 2-3 hours | Minutes |
The difference is noticeable when using the site. Pages load instantly. No waiting for anything.
Real Client Example: Propel Digital
Propel Digital needed a high volume of landing pages for paid advertising campaigns. Performance matters critically for paid traffic - slow pages mean wasted ad spend.
We've built 50+ landing pages for them on Next.js over a 2+ year partnership. The results:
- Consistent 90+ PageSpeed scores
- 99.9% uptime
- Rapid turnaround on new pages
- No security incidents
Try building 50+ high-performance landing pages in WordPress while maintaining consistency and performance. The plugin conflicts alone would be a nightmare.
When WordPress Still Makes Sense
We're not zealots. WordPress works in specific situations:
Content-heavy sites with non-technical editors. If your marketing team needs to publish daily blog posts with no developer involvement, WordPress's familiar interface has value. Though Sanity and other headless CMS options have caught up significantly.
Very tight budgets. A WordPress site with a premium theme can be deployed for £500-£1,500. That's hard to match with custom development. If budget is genuinely constrained, WordPress is pragmatic.
Existing WordPress infrastructure. If you've got a WordPress multisite network, WordPress-trained staff, and processes built around WordPress - adding another WordPress site makes sense. Migration has costs too.
Simple blogs. For a straightforward blog without complex functionality, WordPress does the job. WordPress.com even handles hosting.
If someone recommends WordPress for a performance-critical marketing site or a complex web application, ask why. There are usually better tools for those jobs.
But I Need a CMS!
A common objection: "Next.js is just code. I need to update content without a developer."
This is where headless CMS solutions come in. Sanity, Contentful, Strapi - these provide content management interfaces where your team can edit text, upload images, and manage content. Next.js then pulls that content at build or request time.
The result: editors get a content management experience. The website gets all the performance benefits of Next.js. Everyone wins.
We pair Next.js with Sanity for most client projects. Sanity's real-time collaborative editing and flexible content modelling make it excellent for marketing teams. And the developer experience is superb.
We've written more about headless CMS and why Sanity is our go-to.
Making the Switch
If you're considering moving from WordPress to Next.js:
Assess your actual needs. Do you need dynamic content management? How often? By whom? What's your technical team's capability?
Audit existing content. Blog posts, pages, media - what needs to migrate? How much technical debt has accumulated?
Plan the content model. Headless CMS requires thinking about content structure upfront. This is actually beneficial - it forces clarity.
Budget properly. A Next.js rebuild isn't a weekend project. Expect to invest in proper development, but expect better long-term outcomes.
Consider hybrid. You don't have to migrate everything at once. Some clients run Next.js for marketing pages while maintaining WordPress for legacy blog content.
The Bottom Line
WordPress served the web well for two decades. For many basic sites, it still works fine.
But for performance-critical sites, complex functionality, or businesses serious about their web presence, Next.js delivers measurably better outcomes. Faster sites. Stronger security. Better SEO. Cleaner code.
We made the switch because our clients deserve the best tools for their needs. Most of the time, that's no longer WordPress.
Ready to build a high-performance website with Next.js? Our website development team builds sites that load fast, rank well, and convert visitors. Get in touch to discuss your project.