Brad Holmes web developer, designer and digital strategist.

Dad, husband and dog owner. Most days I’m trying to create fast, search-friendly websites that balance UX, Core Web Vitals, and digital strategy from my studio in Kettering, UK.

If you’re here, you either found something I built on Google or you’re just being nosey. Either way, this is me, the work, the thinking, and the bits in between.

Also found on

Dumping Ground

Technical SEO Isn’t a Score: What I Found Auditing 50 Ranking Websites

Brad Holmes By Brad Holmes
13 min read

I expected the websites ranking near the top of Google to be technically tidy.

Not perfect. Just noticeably better than the average site: leaner pages, cleaner metadata, fewer obvious accessibility gaps and less JavaScript holding everything together with crossed fingers.

That isn’t what I found.

The 50 ranking websites I tested were generally sound. They had to be. But they were also full of the same compromises, accumulated decisions and slightly awkward bits of engineering found across the rest of the web.

Of the 38 pages I could score completely, 32 had render-blocking resources. Twenty-three were missing alt text on at least one image. Eighteen triggered a high-loading-time warning. Five had no H1 detected, and five had no canonical tag detected.

One page achieved a perfect 100-point On-Page score while still triggering a render-blocking-resource flag. The two lowest-scoring pages both ranked first for their respective searches.

So the useful conclusion is not that technical SEO does not matter.

As a designer this was hard to stomach but, It is that technical SEO is not a beauty contest, and Google is not waiting at the finish line with a clipboard and a Lighthouse report.

What I tested

I chose five short-tail searches representing different reasons someone might use Google:

SearchMain intentWhat the results broadly contained
how to learn spanishInformationalGuides, publishers and learning platforms
best website builderCommercial investigationReviews, communities and software providers
buy running shoesTransactionalRetailers, manufacturers and buying guides
plumber londonLocal commercialDirectories, marketplaces and local businesses
mortgage calculatorUtility / financialBanks, comparison sites and public-interest tools

I collected the first ten organic domains for each search using the DataForSEO Google organic SERP API. The searches used Google desktop results in English, with the United Kingdom as the location. The plumber search used London specifically.

Google does not always show ten ordinary organic links on page one anymore. Search features take up an increasing amount of space, so where necessary I continued onto page two until I had ten organic results for the query.

That produced 50 URLs from 50 different domains.

I then tested each URL using DataForSEO’s Instant Pages technical audit with JavaScript rendering enabled and an en-GB language setting.

Thirty-eight pages returned a complete audit. Twelve returned a 403 or 429 response to the audit crawler and were marked as blocked.

This distinction matters. A site refusing an automated auditing tool is not proof that Google cannot crawl it. Treating every blocked audit as an SEO failure would be a bit like declaring a pub closed because they would not serve the bloke trying every door handle with a clipboard.

Those pages were left unscored.

How I scored the pages

I did not invent a private scoring system and quietly adjust the weights until the findings looked interesting.

For each successfully fetched page, I used the onpage_score returned by DataForSEO unchanged. It runs from 0 to 100 and describes how well the page performed against the provider’s On-Page checks.

It is a diagnostic score. It is not a Google ranking factor.

The calculations used in this article are deliberately plain:

  • The overall average is the mean score across the 38 completed audits.
  • Intent averages include only completed audits within that ten-site group.
  • Issue prevalence is the number of completed pages carrying a particular flag divided by 38.
  • The blocked rate is the 12 blocked pages divided by the full sample of 50.
  • Blocked pages are not given zeroes and are not included in issue prevalence.

The issue categories come directly from page fields or DataForSEO checks. “Title length issue”, for example, means the page triggered either the title_too_long or title_too_short flag. “Missing image alt” means at least one image was flagged without alternative text.

Download the complete dataset and scoring method. It contains the raw SERP snapshot, page-level audit, issue matrix and calculation rules.

The pages scored well. That is not the same as being clean

The average On-Page score across the 38 completed audits was 92.0. The median was 91.7. Scores ranged from 80.9 to 100.

On the surface, that supports the obvious conclusion: pages ranking for competitive short-tail searches tend to be technically competent.

But averages flatten the interesting part.

These pages scored well while still carrying a surprising number of specific problems:

FindingAffected pagesShare of completed audits
Render-blocking resources3284.2%
Images missing alt text2360.5%
High loading time1847.4%
Title length issue923.7%
Large page513.2%
Missing H1513.2%
Missing canonical513.2%
Missing meta description410.5%

The point is not that all these checks are equally serious. They are not.

A missing canonical on a page with several accessible variants can create a real consolidation problem. Google describes canonicalisation as the process of choosing a representative URL from a set of duplicates, and a rel="canonical" annotation is one signal publishers can use to express their preference. But Google can still select a canonical when a site does not declare one. A missing tag is a risk to investigate, not automatic proof of disaster. Google’s own guidance makes that distinction clear.

The same applies to render-blocking resources. CSS blocks rendering by default because the browser needs it before it can draw the page correctly. That does not mean every stylesheet is a crisis. It means the critical path deserves attention when it delays what the visitor needs to see. The mechanism is explained well by web.dev.

Technical checks describe conditions. They do not understand the whole page, the business behind it or the person waiting for it to load.

That still requires judgement. Annoying, I know.

The two lowest-scoring pages ranked first

Duolingo ranked first for “how to learn spanish” and received the lowest completed score in the study: 80.9. The rendered audit detected no H1, a short title, render-blocking resources and high loading time.

The next-lowest score came from the transactional group. Start Fitness ranked first in the collected results for “buy running shoes” with a score of 81.6.

The audit found an 81-character title, a DOM of roughly 1.9 MB, render-blocking resources, a large-page warning, high loading time and images missing alt text.

None of those findings should be ignored. A product category page is already doing more work than a simple article. Adding unnecessary weight makes that work harder for the browser and the visitor.

But the page still ranked first.

Why? This test cannot prove why any page ranks. It did not compare links, brand demand, content usefulness, product range, engagement, historical performance or the many other signals involved. That is precisely the point.

The technical audit saw one layer of the system. Google saw the page in context.

A weak reading of this result would be: “Performance does not matter.”

A more useful reading is: “Performance matters alongside relevance, authority, usefulness, accessibility, content and competitive context.”

Websites are systems. The industry keeps trying to turn them into scorecards because scorecards fit nicely into a slide deck.

Reality is less cooperative.

A perfect score did not mean a perfect page

At the other end, Together Money’s mortgage calculator received a DataForSEO On-Page score of 100.

The same audit still flagged render-blocking resources.

That is not necessarily a contradiction in the tool. A provider can calculate an overall score using checks and weights while also returning diagnostic observations that do not reduce that score in the way a reader might expect.

It is, however, a useful warning about the number 100.

People see a perfect score and assume the work is finished. The dashboard lights up like Blackpool Illuminations and everyone gets to go home pleased with themselves.

But the score only means the page satisfied that scoring model. It does not mean every person had a fast experience, every image was useful, every interaction was clear or the page achieved its commercial purpose.

Scores are compressed descriptions. The compression is useful, but detail goes missing.

Ranking pages still had ordinary technical faults

The BBC page ranking second for “how to learn spanish” scored 91.1. The fetched page had no detected H1 or canonical tag and carried a high-loading-time flag.

TechRadar ranked second for “best website builder” with a score of 84.5. Its page triggered title-length, render-blocking, high-loading-time, large-page and missing-alt-text flags.

Running Direct ranked ninth for “buy running shoes” with a score of 84.5. No H1 was detected, its title was flagged as too long and its page triggered high-loading-time and missing-alt-text checks.

These are not obscure websites somehow sneaking into the results while Google had a day off. They are pages Google considered relevant enough to show for broad, competitive searches at the time of collection.

It does not follow that their technical faults helped them rank. It shows that the faults were not sufficient to prevent them ranking.

That difference is the centre of the whole study.

The type of page changed the pattern

The scores also varied by search intent:

IntentSampleScoredBlockedAverage score
Informational109191.9
Commercial investigation109190.2
Transactional105587.1
Local commercial107393.3
Utility / financial108296.3

The utility and financial pages produced the highest average score. The transactional pages produced the lowest and had the weakest audit coverage, with five of ten sites blocking the crawler.

There are several plausible explanations. Retail pages tend to carry product feeds, filtering, personalisation, tracking, stock information, imagery and third-party scripts. Financial calculators are also complex, but their publishers may operate with stricter governance, more controlled templates and a lower tolerance for inconsistent technical behaviour.

That is an inference, not a finding established by this sample.

The transactional average also comes from only five completed pages, so it should not be turned into an industry benchmark. A second collection could produce a different group of rankings, a different set of blocked pages and a different average.

Still, the pattern is believable enough to ask a better question: are we judging all page types as though they have the same technical job?

A retailer and an informational article do not carry the same machinery. Comparing them without context is like judging a delivery van and a bicycle entirely by fuel consumption.

Missing alt text was common, but the implication is wider than SEO

Twenty-three of the 38 completed pages were flagged for at least one image without alt text.

That is just over three-fifths of the scored sample.

Alternative text helps people using screen readers understand meaningful images. It also gives search systems information about what an image represents. Google says it uses alt text alongside page content and computer vision to understand image subject matter. Its image SEO guidance also warns against treating alt text as somewhere to stuff keywords—which should not need saying, but here we are.

Not every image needs a descriptive essay. Decorative images can use an empty alt attribute so assistive technology knows to ignore them. The problem is not that every <img> needs more words. It is that image purpose needs to be considered rather than left to chance.

This is where technical SEO advice often becomes too narrow. Alt text is discussed as an image-search tactic when its first job is to help a person understand the page.

People over platforms. Even when the platform happens to be Google.

What the findings actually change

The study did not make me care less about technical SEO. It made the order of work clearer.

First, remove failures that can stop discovery, rendering, indexing or use. A page that cannot be reached, understood or operated has a real problem.

Then investigate the conditions that create friction: slow critical resources, oversized pages, inaccessible images, unclear titles, accidental duplication and content that only appears after an unreliable chain of JavaScript.

After that, prioritise by consequence rather than by whichever warning happens to be coloured red.

The questions become more useful:

  • Is the important content available in the HTML or rendered reliably?
  • Can search engines and people reach the page without unnecessary barriers?
  • Does the canonical setup match the URL strategy?
  • Is the slow work delaying something the visitor actually needs?
  • Are images understandable and useful beyond their visual appearance?
  • Does fixing this issue improve a real experience, or merely polish the report?

Google’s guidance for developers is broadly sensible here: make sites secure, fast, accessible, usable across devices and clear enough for Search to understand. It also stresses descriptive titles, meta descriptions, crawlable links and text that is available in the DOM. None of that guidance says a third-party score is the objective.

The score helps identify where to look.

It does not decide what matters.

What this study cannot tell us

This was a deliberately small observational study: five queries, one country, one desktop collection and one point in time.

It only examined pages already ranking. There was no control group of non-ranking pages, so the results cannot tell us whether a particular technical condition increased or reduced ranking performance.

Twelve pages could not be scored because they returned 403 or 429 responses to the audit crawler. Those blocks were unevenly distributed across intent groups, which limits comparisons.

The On-Page score is DataForSEO’s diagnostic metric. I used it unchanged, but the study does not independently reproduce the provider’s internal weighting.

Page timing values were retained as returned, including extreme outliers. They are diagnostic measurements from a single automated fetch, not a replacement for real-user performance data.

The dataset is therefore useful for describing what these 50 ranking pages looked like during this test.

It is not a universal technical SEO benchmark, and it definitely is not a formula for ranking.

Technical SEO is the absence of preventable friction

The ranking pages in this study were not technically perfect. Some were heavy. Some had missing metadata. Some relied on render-blocking resources. Some had accessibility gaps. A few combined several of those things and ranked anyway.

That is not permission to ignore technical quality.

It is permission to stop pretending technical quality can be understood through one number.

Good technical SEO removes preventable friction between a page, the person using it and the systems trying to understand it. It protects the useful work happening elsewhere: the content, product, service, reputation and trust that gave the page a reason to rank in the first place.

Fix the issues that get in the way of that.

Then stop polishing the dashboard and look at the website.


Download the data

The download includes:

  • The 50-result organic SERP snapshot
  • The complete page-level technical audit
  • The issue-prevalence matrix
  • The scoring and calculation method

50 Ranking Websites Data

What you should read next

Brad Holmes

Brad Holmes

Web developer, designer and digital strategist.

Brad Holmes is a full-stack developer and designer based in the UK with over 20 years’ experience building websites and web apps. He’s worked with agencies, product teams, and clients directly to deliver everything from brand sites to complex systems—always with a focus on UX that makes sense, architecture that scales, and content strategies that actually convert.

Thanks Brad, I found this really helpful
TOP