In plain words
A large, well-built site held back by small page faults repeated hundreds of times: extra headings, thin list pages and slow pages on phones.
From a real audit, names removed · A professional-services firm’s site: 802 pages of articles, service pages, regional guides and city pages · audited in Sep 2026
- All 802
- Pages checked
- 234
- Thin archive pages in the sitemap
- 108
- Pages with 2+ main headings
- 42 / 100
- Phone speed, a service page
Words this audit uses
- Crawler:
- The program a search engine uses to read the pages of a site.
- Sitemap:
- The list of pages a site hands to search engines.
- Indexed, noindex:
- Indexed means a search engine has stored a page and can show it. A noindex tag asks it not to.
- H1, main heading:
- The main heading of a page: the line that tells a search engine what the page is about.
- Canonical tag:
- A line in a page’s code that names the one official address of that page.
- Structured data, schema, JSON-LD:
- Labels in a page’s code that tell machines what something is: an article, a product, a business.
- Redirect:
- An instruction that sends visitors and search engines from one address to the right one.
- robots.txt:
- A small file that tells crawlers which parts of a site to stay out of.
- Lighthouse:
- Google’s free test of how fast a page loads.
- Meta description:
- The short summary shown under a page’s title in search results.
- Alt text:
- A written description of an image, read by search engines and screen readers.
- Search Console:
- Google’s free tool that shows how a site appears in its search results.
The audit’s short version
The site is well built: all 802 pages load, every page has the right canonical tag, and 559 pages carry structured data. A few fixable problems hold it back.
How it was measured
We opened all 802 pages listed in the sitemap and read their titles, headings, descriptions, canonical tags and structured data, compared the city pages with each other, and ran the Lighthouse speed test in phone mode three times per page (middle result shown) plus once on a computer.
What is already working
- 802 of 802 pages in the sitemap load without errors: 302 articles, 18 service pages, 11 industry pages, two sets of 50 regional guides, 100 city pages and the archive pages.
- Every page states its preferred address (canonical tag), and none is accidentally hidden from search.
- Structured data on 559 pages: article markup on 301 of the 302 articles, FAQs on 144 pages and service markup on 128.
- All 3,353 images have alt text.
- Long, specific content: articles have a median of 1,204 words and pages 1,306.
- A fast server: pages start arriving in about 0.1 s, and on a computer the home page scores 96 / 100 for speed.
What the audit found
1234 thin archive pages in the sitemap
The sitemap asks search engines to index 234 tag and category pages that are mostly lists of links, with no description. They compete with the service pages and guides for attention.
Tag pages
In the sitemap: 204
Median words: 44
Meta description: None
Category pages
In the sitemap: 30
Median words: 271
Meta description: None
Page type In the sitemap Median words Meta description Tag pages 204 44 None Category pages 30 271 None Fix: Set tags to not show in search results, which also takes them out of the sitemap. Keep the categories worth finding and give each one a short intro and a description.
2Two or more main headings on 108 pages
Each page should have one main heading (H1) that says what it is about. 108 pages have two or more.
Regional guides, first set
Count: 51
What is there: Two headings on every guide
Regional guides, second set
Count: 50
What is there: The guide’s name, then the same name with a year
Home page
Count: 1
What is there: Three rotating headlines, all marked as main headings
Industry and other pages
Count: 6
What is there: The service name, then a longer version of it
Pages Count What is there Regional guides, first set 51 Two headings on every guide Regional guides, second set 50 The guide’s name, then the same name with a year Home page 1 Three rotating headlines, all marked as main headings Industry and other pages 6 The service name, then a longer version of it Fix: One change to the guide template fixes 101 pages: keep one H1 and make the second heading an H2. On the home page, keep one H1 and show the rotating lines as normal text.
3Two articles are published twice
Two articles exist at two addresses each, once in each of the site’s two article sections.
Fix: Keep one version and redirect (301) the copy to it, so a search engine does not have to choose between them.
4The sitemap lists pages that robots.txt blocks
The thank-you page, the booking page and the job-application page are in the sitemap, while robots.txt tells crawlers not to visit them. Search Console reports this as an error. A sitemap page of 126 words is also in the sitemap.
Fix: Set these four pages to noindex, which removes them from the sitemap.
5The articles have no named expert
All 302 articles are published under one admin username, and the experts page has 41 words. For professional advice, search engines look for a named, qualified author behind the content.
Fix: An author profile for each qualified person who writes or reviews, with their credentials, shown on every article, and a filled experts page.
6City pages need local proof
There are 100 city pages with a median of 1,035 words. With the city name taken out, two city pages share about 45% of their wording. Pages that read alike are hard to tell apart.
Fix: Add what is only true for that city: a client story, the local rules and deadlines, reviews from local clients. A city with nothing local to add is better merged into its regional page.
7The site is slow on phones
The causes are files, not the server. Two PNG images on the service page weigh 2.9 MB together (a 1.5 MB banner and a 1.4 MB timeline), and the home page has an 878 KB PNG. On every page tested the analytics tracking code loads four times, and a 355 KB form-protection script loads even where there is no form.
Home page
Speed score: 48 / 100
Main content appears: 6.4 s
Page size: 2.9 MB
A service page
Speed score: 42 / 100
Main content appears: 20.3 s
Page size: 4.8 MB
A city page
Speed score: 59 / 100
Main content appears: 5.7 s
Page size: 1.9 MB
A blog article
Speed score: 58 / 100
Main content appears: 5.9 s
Page size: 2.0 MB
The “good” level
Speed score: 90+
Main content appears: under 2.5 s
Page Speed score Main content appears Page size Home page 48 / 100 6.4 s 2.9 MB A service page 42 / 100 20.3 s 4.8 MB A city page 59 / 100 5.7 s 1.9 MB A blog article 58 / 100 5.9 s 2.0 MB The “good” level 90+ under 2.5 s Fix: Convert the large PNGs to WebP, load the form-protection script only on pages with a form, and keep one analytics tag. The site will look exactly the same.
8Housekeeping
Smaller counts from the same crawl.
Page titles long enough to be cut off in results (over 60 characters)
Count: 288 of 802
Article index pages with no main heading
Count: 2
Menu headings built as empty links, which a crawler cannot follow
Count: 8
What we found Count Page titles long enough to be cut off in results (over 60 characters) 288 of 802 Article index pages with no main heading 2 Menu headings built as empty links, which a crawler cannot follow 8
The order of work
- Take the thin tag and category pages out of the sitemap.
- Fix the guide template so each guide has one main heading.
- Redirect the two duplicate articles and noindex the four blocked pages.
- Put a named, qualified author on the articles.
- Lighten the service pages on phones, then add local proof to the city pages.
What was removed, and what was not. The business, its website and page addresses, people, competitors, places and the search terms that would name it are removed or replaced with a word in [brackets]. The prices and the proposal that closed the audit are left out. Every figure is the audit’s own.
Your own report. This sample is the audit: what we found, page type by page type. With On-Page SEO you also get the changes themselves on up to 10 priority pages, made on your site or handed over as a change sheet, and a record of each change. That record is not shown here.