Type any WordPress URL into PageSpeed Insights and you'll likely see a score below 50. Not an old site from 2010, a new one that went live last month. WordPress has structural reasons for being slow, and those reasons get worse with every new plugin, every new theme, and every update.
The real causes of a slow WordPress site
The speed problem in WordPress doesn't start with your hosting or your visitor's connection. It starts in the architecture of the system itself.
Plugins are the first culprit. The average WordPress site runs 20 to 30 active plugins. Each one loads its own CSS files, JavaScript files and database queries. With every page visit, the server processes all of those requests from scratch. A contact form plugin loads its scripts on every page, including your homepage where there's no form. An SEO plugin adds meta tags via multiple database calls per request. A security plugin scans every incoming request in real time. All those small pieces of overhead stack up into seconds of load time.
Page builders are the second major cause. The most popular page builders for WordPress, Divi, Elementor and Avada, are enormous in terms of CSS and JavaScript. Elementor loads over 300 kilobytes of scripts by default, regardless of how simple the page you're building is. Every animation option, every layout variant, every slider and widget is loaded on every page, including pages that don't use any of them. The result is a website that's already slow before the actual content even begins to load.
The database is the third factor. WordPress stores nearly everything in MySQL: posts, pages, edit revisions, plugin settings, session data, transient options. With every update, every edit, every visitor, that database grows. After a year of heavy use, some WordPress databases contain thousands of revisions of a single page. Queries get slower, the server works harder, and load times rise.
Hosting makes the problem worse. Most WordPress sites run on shared hosting for €3 to €10 per month. On shared hosting you share a server with hundreds of other websites. When a neighbouring site suddenly gets a spike in traffic, it directly affects your load time. PHP processing on cheap shared hosting is slow, and WordPress needs PHP for every single request.
Core Web Vitals: why speed directly affects your Google ranking
In 2021, Google introduced Core Web Vitals as an official ranking factor. These are three metrics that measure user experience:
- LCP (Largest Contentful Paint): how long does it take for the largest visible element to load? Google considers anything under 2.5 seconds good. Above 4 seconds is poor.
- INP (Interaction to Next Paint): how quickly does the page respond to a click or input? Under 200 milliseconds is good.
- CLS (Cumulative Layout Shift): do elements shift around while the page loads? This is frustrating for users and hurts your score.
Most WordPress sites with a standard theme and plugins score poorly on LCP and INP. The reason is straightforward: there is so much JavaScript blocking the load before the page is visible that the browser literally has to wait before it can show anything to the user.
What the numbers say about load time and conversion
Research shows that the majority of mobile visitors leave a page if it takes more than 3 seconds to load. For e-commerce the effect is even more direct: slow load times reduce conversions, even if the precise impact is hard to measure in isolation.
For local businesses the effect is less directly measurable, but no less real. A potential client who opens your website and stares at a blank screen for three seconds is more likely to leave than someone who sees content immediately. Those are missed enquiries you never even register, because the person was gone before you could count them.
Beyond that: Google ranks slow sites lower. A PageSpeed score of 30 isn't just a bad user experience, it's an active disadvantage in search results compared to competitors with faster sites.
Route 1: Optimise WordPress
If you want to keep WordPress, there are steps that can significantly improve the situation. Here's the action plan:
Step 1: Remove unnecessary plugins. Audit every active plugin. Do you really use it? Can it be replaced by built-in WordPress functionality or one better plugin? Every plugin removed means less overhead.
Step 2: Switch to a lightweight theme. GeneratePress and Kadence are both under 30 kilobytes of base CSS. Compare that to Divi (several hundred kilobytes) and the difference is enormous. You lose the visual drag-and-drop builder, but you gain speed.
Step 3: Install WP Rocket or a similar caching system. Caching stores the HTML output of each page so the server doesn't have to regenerate it for every visit. This is the fastest way to see an immediate effect. WP Rocket costs $59 per year and pays for itself quickly.
Step 4: Optimise images. Use WebP format and compress every image before uploading. A plugin like ShortPixel does this automatically. Images are in most cases the largest contributor to total page size.
Step 5: Use a CDN. A Content Delivery Network serves your static files (images, CSS, JavaScript) from servers close to the visitor. Cloudflare has a free plan that already makes a noticeable difference.
With all these optimisations you can reach a PageSpeed score of 75 to 90. That's considerably better than the average WordPress site, but there are two problems: it requires ongoing maintenance, and as soon as you add new content or plugins, the score can drop again.
Route 2: Modern technology
The fundamentally different approach is to build a website with a framework designed from the ground up for speed. Next.js is the most widely used in this space. Instead of generating HTML on every request from a database, Next.js generates static HTML files during the build process. Those files are served directly to the visitor, no database queries, no PHP processing, no plugin overhead. That is what people mean by a static website without a CMS: pre-built pages, served instantly.
The result: a page that loads in 0.3 to 0.8 seconds. LCP scores of 0.5 seconds are normal. PageSpeed scores above 95 are the standard, not the exception. Not because Next.js is a "better version of WordPress", but because it has a completely different architecture.
The trade-off: you can't manage content yourself through a familiar interface unless you add a headless CMS. That's an additional system (such as Sanity, Contentful or Strapi) that manages your content, while the Next.js website displays it at blazing speed. More setup, but you get the best of both worlds: ease of management and top-tier speed.
Next.js vs. WordPress: a concrete comparison
To make it concrete: I recently helped a client in Gran Canaria who had a WordPress site with a PageSpeed score of 28 on mobile. After migrating to Next.js with the same content and design, the score was 97. Average load time dropped from 5.8 seconds to 0.6 seconds. The number of contact enquiries increased by 34% in the first month, without any other changes to the site.
That's not a guarantee for every project, but it illustrates what an architectural difference can do. The improvement wasn't the result of better hosting or smarter optimisations, but of a fundamentally different way of building.
What is a slow website actually costing you?
A PageSpeed score of 28 is not an abstract number. It has direct financial consequences. If your website gets 500 visitors per month and 3% of them make contact, that's 15 leads per month. If improved load time means 20% fewer visitors leave before the page loads, that's 12 extra visitors per month who get to see your site. At an average contact rate, that's 3 to 4 extra leads per month, consistently.
On top of that, a fast site ranks higher in Google. Every position up in search results generates more clicks on average. A combination of better speed and higher ranking can double organic traffic within a year.
Which route is right for you?
A blog with lots of content that you manage and expand yourself every week? WordPress with good optimisation is a perfectly valid choice. A business website, portfolio, services page or landing page that you update a few times a year? A modern static site is almost always faster, more secure and cheaper to maintain.
Most business owners who ask me this question update their website less often than they think. They use WordPress because they're familiar with it, not because they need it every week. If that's the case for you too, it's worth reconsidering. At CanarySites we build with Next.js by default. Request a free audit and find out where the bottlenecks in your current site are. It takes half an hour and gives you concrete, actionable insights.

