Custom-coded vs WordPress: a real-world speed comparison
Speed comparisons between platforms are usually theoretical, because the two pages are never doing the same job. This one is different. A local service business moved from a site we built to a WordPress rebuild by another provider, so the business, the services and the market all stayed the same. The new provider wrote their own content and built their own page structure, and we've accounted for that below.

Most speed comparisons are worth very little. Someone builds a demo page in one platform, builds a different page in another, and declares a winner. The content differs, the images differ, the hosting differs, and the result tells you almost nothing about what would happen to your business.
Occasionally you get a cleaner test. A local service business we had built for moved to a different provider, who rebuilt the site in WordPress. Same business, same services, same customers, same part of the world. We measured both with Google PageSpeed Insights on the same day, and the gap was wider than we expected.
What the two sites scored
Both figures come from Google PageSpeed Insights on mobile, run on the same day in September 2026. We've kept the business and the other provider anonymous, because the point here is the platform difference and not a particular company. Anyone can reproduce this kind of test on any two public URLs in about a minute.
The custom-coded site is built in Astro and served as static files. The replacement is a WordPress build. Neither result is a laboratory trick and neither site was tuned for the test.
Time before the main content appears
Largest Contentful Paint, mobile · lower is better
Time the browser spends blocked
Total blocking time, mobile · lower is better
| Measure | WordPress rebuild | Custom-coded build |
|---|---|---|
| Performance score | 58 | 83 |
| Largest Contentful Paint | 8.4s | 4.4s |
| Total blocking time | 330 ms | 0 ms |
| Speed Index | 4.9s | 3.5s |
| Cumulative layout shift | 0.002 | 0 |
| Total page weight | 1,194 KiB | 1,390 KiB |
Google PageSpeed Insights, mobile, both URLs measured on 6 September 2026. Business and other provider kept anonymous. Note the last row: the WordPress build ships less and is still the slower of the two, which is the point of this article. Updated 24 September 2026: the original version called this a like-for-like test and said the content stayed the same. That was too strong, and the request breakdown further down was added at the same time because it's the part that shows why the comparison still holds.
The slower site was the lighter one
Read that last measurement again. The WordPress site ships around 200 KiB less than the custom-coded one, and it still takes nearly twice as long to show a visitor the main content.
This matters because it demolishes the most common explanation people are given for a slow site. If you've ever been told your site is slow because the images are too big, this is the counter-example. The lighter site lost, and it lost badly.
Weight isn't the same thing as speed. What you ship matters less than what the browser has to do before it can paint anything.
Where the time goes
The clearest signal in the numbers is total blocking time: zero against 330 milliseconds. Blocking time measures how long the browser spends stuck running JavaScript instead of responding to the person using the page.
A static site has almost nothing to run. The HTML arrives already built, so the browser paints it. A typical WordPress page arrives as a template that has to be assembled by a theme, a page builder and a stack of plugins, each contributing scripts and stylesheets that have to be fetched, parsed and executed before the layout settles.
None of that's a criticism of anyone's build quality. It's what the platform does. You're paying a tax for flexibility you may never use.
We went back on 24 September 2026 and looked at what each homepage downloads. Both pages carry eight images. After that they diverge completely.
- The custom-coded page makes 11 requests in total: one stylesheet, one font file, eight images, and no JavaScript at all.
- The WordPress page makes 79. Twenty-four scripts totalling 510 KiB, of which 164 KiB is never used. Thirty-five separate stylesheets. Seven font files.
The lighter page is carrying more machinery
So the lighter page is lighter because it carries less content, not because it's leaner. It ships around 218 KiB of images and about 960 KiB of machinery. The custom-coded page ships about 1,317 KiB of images and 57 KiB of everything else.
That second figure isn't a boast. 1,317 KiB across eight images is more than our page should be carrying, and the image pipeline is the first thing we'd fix on it.
What this test doesn't control: the two sites don't carry identical copy or the same page structure, and they're not on the same hosting. The rebuild has twenty-one pages to our twenty-nine, arranged differently. What it does control is the thing being tested. The same business, the same services, the same market, both homepages doing the same job, both measured on the same day.
What four extra seconds does to a local business
An 8.4 second Largest Contentful Paint means somebody tapping your listing on a phone, on mobile data, waits more than eight seconds before the page is meaningfully there. Most people don't. They go back and tap the next result, which is your competitor.
It compounds in three directions. Core Web Vitals feed into how Google ranks you, so a slow site works against the visibility you paid for. Slow pages convert worse, so the traffic you do get is worth less. And increasingly, AI search tools have to fetch and read your pages to recommend you at all, which a site that takes eight seconds to render makes harder than it needs to be.
Our own result wasn't perfect either
The custom-coded site scored 83, not 100. Its Largest Contentful Paint was 4.4 seconds, which we would want lower. Publishing a comparison and pretending our side was flawless would be the sort of marketing we spend our time arguing against.
The gap is what matters. 83 against 58, and paint time roughly halved, on the same business selling the same services to the same market. That's the platform difference, measured rather than asserted.
This isn't an argument against WordPress
WordPress runs a huge share of the web for good reasons. If you need a large editorial team publishing daily, a complex membership system, or a specific plugin that solves a real problem, it's often the right answer. We do performance work on WordPress sites for other agencies, and a well-built one can be quick.
The argument is narrower. For a local service business with a handful of pages, whose website exists to explain the service clearly and make it easy to get in touch, WordPress asks you to carry a lot of machinery you'll never use. That machinery is what shows up in the blocking time.
If your site is already on WordPress and slow, the fix usually isn't a rebuild. It's finding what's blocking the render and dealing with it.
How to run this test on your own site
Open PageSpeed Insights, paste your homepage URL, and read the mobile tab rather than desktop, because that's where your customers are. Then do the same for two competitors you would hate to lose a job to.
Three numbers tell you most of the story, and you don't need to be technical to read them.
- Largest Contentful Paint: how long before the main content appears. Under 2.5 seconds is good, over 4 seconds is a problem.
- Total blocking time: how long the browser is frozen running scripts. Anything over 200 milliseconds is worth asking about.
- Performance score: a rough summary. Useful for comparison, less useful on its own.
Pages worth acting on
Related page
WordPress Performance Optimisation
Root-cause speed work on complex WordPress sites, with a real before and after case study.
View pageRelated page
New Website Builds
Custom-coded builds for local service businesses, made to load fast and explain the service clearly.
View pageRelated page
Website Redesign
Useful when speed is one of several reasons the current site is underperforming.
View pageRelated page
GEO Services
Why AI tools recommend some local businesses and not others, and what slow pages have to do with it.
View pageRelated page
AEO Services
How answer-ready content and schema help search and AI systems understand your business.
View pageRelated page
Get a Free Website Review
We'll run the same measurements on your site and tell you honestly what's worth fixing.
View pageRelated page
Websites for Service Businesses
Why the speed difference above matters most for service businesses, where a slow page costs a call.
View pageWhat to read next
AI Websites vs Normal Websites: What Actually Changes?
A practical guide to the difference between a normal business website and one that's built to support AI tools, automation, cleaner lead handling, and future search changes.
Read articleWhy Brochure Websites Don't Work for Competitive Trades
A practical guide for tradies and trade-style local businesses that need more than a basic online brochure to win calls and quote requests.
Read articleA VST3 plugin opened as a black window, and the bug was in neither the plugin nor my code
One hosted plugin drew its editor. Another opened a window with nothing in it. The variable was the UI toolkit, and the fault was in the host library both of them sat behind.
Read articleQuestions local business owners usually ask next
Want to know what your site actually scores?
We'll run the same test on your website and two competitors, then tell you plainly whether speed is your problem or whether something else is costing you the enquiries.