2026 portfolio SEO data

Managing 44 Websites SEO Data

Real Search Console numbers from running dozens of websites, not one cherry-picked case study.

A papercraft grid of small grey browser-window cards with four glowing website cards standing out at the centre, connected by a blue line

This is my own portfolio data, not independently audited by a third party. No client sites are included.

I manage 44 websites. Not for clients: these are mine. Out of the roughly 217 million sites that are actually active on the web, that's a tiny slice, but it's enough to see patterns a single-site owner never gets the sample size to spot. Different niches, different stacks, different stages of growth. Some get 30,000 impressions a month. Some get 12. I run them all through Google Search Console, fix what's broken, and watch what happens.

Most SEO content you'll read comes from agencies showing their best case study. One site, cherry-picked metrics, before-and-after screenshots that conveniently leave out the 6 months of flat growth in between.

This is different. This is what the data actually looks like when you're managing a portfolio of sites: the patterns that repeat, the mistakes that compound, and the fixes that move numbers.

44

sites managed

Source: Sunny Patel, portfolio dashboard
200K+

total pages across the portfolio

Source: Sunny Patel, portfolio dashboard
15+

niches covered

Source: Sunny Patel, portfolio dashboard

The Same Three Issues Appeared Everywhere

After auditing all 44 sites through Google Search Console, the same problems surfaced over and over. Not obscure technical edge cases: basic configuration issues silently bleeding ranking power across every site.

Canonical URL splitting affected 23 of 44 sites. Title tag truncation was killing click-through rates on 8 sites with programmatic content. Index bloat, Google crawling and indexing pages that had no business being in search results, affected 31 sites.

These aren't the kind of issues a standard SEO audit catches. They only become visible when you're looking at the same patterns across dozens of properties simultaneously.

Portfolio audit

Sites affected by each issue, out of 44 audited
Sites affected by each issue, out of 44 audited
Portfolio auditValue
Canonical URL splitting23 sites
Title tag truncation8 sites
Index bloat31 sites

Source: Sunny Patel, 44-site Search Console audit

Finding 1: A Single Character Was Splitting Rankings in Half

One of my sites, a consultancy, had a page targeting "SEO consultant Reading" with 5,516 total impressions over 28 days. Respectable for a local service keyword. Except those impressions weren't on one page. They were split across two:

  • /services/seo-consultant-reading: 3,529 impressions
  • /services/seo-consultant-reading/: 1,987 impressions

The only difference? A trailing slash.

Real data

One trailing slash splits rankings, then consolidates them
One trailing slash splits rankings, then consolidates them
Real dataValue
Non-slash URL3,529 impressions
Trailing-slash URL1,987 impressions
Consolidated (after fix)5,516 impressions

Source: Sunny Patel, SEO consultant Reading page, Search Console data

The site's configuration had trailingSlash: true, meaning every URL should end with a slash. But 872 internal links across 102 content files pointed to the non-trailing-slash version. Google followed those links, discovered both URLs, and indexed them separately.

Each version accumulated its own impressions, its own click data, and its own ranking signals. Instead of one strong page, there were two weak ones competing against each other.

Each version accumulated its own impressions, its own click data, and its own ranking signals. Instead of one strong page, there were two weak ones competing against each other.

Finding 1, canonical URL splitting

Why This Matters for Multi-Site Owners

I found this same issue on 23 of 44 sites. The configuration varied: some had Astro's trailingSlash: 'always' missing, others had Next.js routing inconsistencies, others had WordPress permalink settings conflicting with CDN cache rules.

The fix was different for each stack, but the pattern was identical: internal links not matching the canonical URL format, causing Google to index duplicate versions.

If you manage multiple websites, check this right now. Open Google Search Console, go to Pages, and look for "Duplicate, Google chose different canonical than user." That status means Google disagreed with the canonical you set, which is the actual fault worth chasing. ("Alternate page with proper canonical tag" isn't a problem on its own: it usually means Google found the duplicate and correctly consolidated it to the canonical you specified.) If you see the mismatch status, you likely have the same problem.

After fixing all 872 links on the consultancy site and deploying, alongside the page-pruning work covered in Finding 3, the average position improved from 31.6 to 25.6 within 10 days. That's a 6-position jump from the two fixes landing together: no new content, no backlinks, no redesign, just internal links pointing at the right URLs and a cleaner index.

Finding 2: 1,546 Page-One Rankings With Almost Zero Clicks

One of the portfolio sites, a UK salary data platform, was generating 7,733 impressions per month across 2,376 indexed pages. Of those, 1,546 pages were ranking on Google's first page. The click-through rate? 0.21%.

Nearly 1,600 pages on page one of Google, and almost nobody was clicking.

1,546

Pages ranking on Google's first page across the salary site

Source: Sunny Patel, Search Console data
0.21%

Click-through rate on those 1,546 first-page pages

Source: Sunny Patel, Search Console data
2,376

Total indexed pages on the site

Source: Sunny Patel, Search Console data

The problem was the titles. The site pulled job titles directly from ONS (Office for National Statistics) data. Official government job classifications are verbose:

  • "Programmers and software development professionals"
  • "Advertising accounts managers and creative directors"
  • "Production managers and directors in mining and energy"

Google truncates title tags at roughly 55-60 characters. These ONS titles run 50-54 characters on their own; add "Salary" and the site's brand suffix, and the complete generated title ran well past the display limit. In search results, users saw:

Programmers and software development professionals Salary G...

Nobody clicks on a truncated, bureaucratic title. They scroll past it to the result that says "Software Developer Salary UK."

The Template-Level Fix

The shared template caused the problem across all 2,376 pages: every one generated its title from the same template, and every title used the raw ONS classification.

The fix was a single mapping function, shortOccName(), that converted 40+ verbose ONS titles to what people actually search:

ONS ClassificationFriendly Title
Programmers and software development professionalsSoftware Developers
Advertising accounts managers and creative directorsAdvertising Directors
Cleaners and domesticsCleaners
Midwifery nursesNurses
Metal working machine operativesMachine Operators

One template change. 2,376 pages updated instantly. Within 5 days of deployment, daily impressions jumped from 383 to 898, a 134% increase, as Google discovered the freshly updated pages.

The CTR improvement will take longer to show (Google needs to recrawl and re-render each page), but the early signals are strong. More pages are being discovered, and the new titles fit within Google's display limit.

Why This Matters for Multi-Site Owners

If any of your portfolio companies use programmatic content, such as product pages, location pages, category pages, or job listings, the titles are probably generated from a template. And if that template pulls from a database field that wasn't designed for search results, your titles are likely getting truncated.

One template fix can affect thousands of pages simultaneously. That's the leverage of portfolio-level technical SEO.

Finding 3: Removing 80+ Pages Improved Everything

The consultancy site had 178 pages indexed in Google. For a site with maybe 30 pages of genuine content, that's a problem. Where were the extra 148 pages coming from?

  • 62 tag pages: auto-generated by the CMS, each one a thin list page with 1-3 posts
  • 18 remote city pages: Birmingham, Manchester, York, targeting cities where the consultant doesn't operate, all ranking at positions 35-72 with zero clicks
  • 7+ ghost URLs: old paths from a previous site structure that Google still had in its index

None of these pages were helping. They were actively hurting.

Page pruning

What was removed, and what changed

  • Tag pages (62), noindexed. Auto-generated by the CMS, thin list pages with 1-3 posts each.
  • City pages (18), noindexed. Birmingham, Manchester, York and other cities the consultant doesn't operate in: 0 clicks, positions 35-72.
  • Ghost URLs (7+), removed. Duplicate canonicals left over from a previous site structure.
  • Indexed pages: 178 to roughly 95, a 47% reduction in bloat.
  • Average position: 31.6 to 25.6. Homepage: 5.3 to 3.8.

Google's crawl budget focused on around 95 strong pages instead of 178 mixed signals. Positions improved in 10 days.

Every low-quality page in Google's index dilutes your site's overall quality signal. Google's crawl budget gets spent on pages that don't convert. Ranking signals get spread thin across URLs that don't deserve them.

The fix was surgical:

  • Noindexed all 62 tag pages and removed them from the sitemap
  • Noindexed 18 remote city pages with zero clicks
  • Removed ghost URLs from the sitemap and set proper canonicals

Within 10 days, the same window as the internal-link fix in Finding 1, average position across the site improved from 31.6 to 25.6. The two changes landed together on this site, so that gain reflects both the consolidated canonicals and the cleaner index, not pruning alone. The homepage moved from position 5.3 to 3.8. Impressions per day dropped (expected, since those 80 pages were generating impressions), but the remaining pages started ranking higher.

The Counterintuitive Truth

Most site owners think more pages = more chances to rank. The opposite is usually true. Google interprets a site full of thin, low-value pages as lower quality overall. Removing the weak pages sends a signal: everything remaining is worth crawling.

This is especially relevant for portfolio owners. If you have 5 sites and each one has 50+ auto-generated pages that add no value, you're diluting authority across 250 pages of dead weight. Prune those, and your strong pages climb.

What Portfolio Owners Should Take From This

These three findings, canonical splitting, title truncation, and index bloat, weren't unique to one site. They appeared across nearly every site in the portfolio, in different forms, on different stacks.

The common thread: they're invisible unless you're looking at the data. Your site looks fine. It loads fast. The content reads well. But in Google Search Console, impressions are being split, clicks are being lost, and crawl budget is being wasted on pages that don't matter.

If you manage multiple businesses or a portfolio of websites, these issues are almost certainly present. They compound across sites. And fixing them at the portfolio level, systematically, across all properties, means one verified correction applies everywhere the same template or config is used, instead of re-diagnosing the same problem site by site.

Update: Where the Traffic Actually Concentrates

Four sites generate 79% of organic clicks across the roughly 100 properties I now track (the 44 audited above, plus launches since): deadhangs.com (2,587 clicks/28 days), chargefinder.uk (2,198), waterhard.uk (1,682) and noisecheck.uk (1,676). That's 8,143 of the portfolio's 10,300 clicks in the 28 days to 9 September 2026. Fifth place is colourlabelprinter at 282.

Traffic concentration

Organic clicks per 28 days, top 5 portfolio sites
Organic clicks per 28 days, top 5 portfolio sites
Traffic concentrationValue
deadhangs.com2,587
chargefinder.uk2,198
waterhard.uk1,682
noisecheck.uk1,676
colourlabelprinter282

Source: Sunny Patel, Search Console, 28 days to 9 September 2026

54 properties returned zero clicks in the same window, and roughly 50 more returned under 10.

Only two revenue lines are verified: bestvibrationplates.co.uk at roughly £46/month from 138 clicks, and a Merch by Amazon account at roughly £51/month net. The four sites carrying 79% of the clicks have no verified revenue.

What's Still Maturing

Some of the fixes above are too recent for definitive results. The trailing slash consolidation needs 2-4 more weeks for Google to fully resolve the duplicate canonicals. The wagearea title fix needs recrawling across 2,376 pages. The page pruning data will mature over the next 30 days.

Figures are 28 days to 9 September 2026. Next pull: December 2026.

If you'd like me to run a similar analysis across your portfolio, get in touch. This is the same pull I run monthly across the portfolio.

How was this data put together?

The three findings above come from a Google Search Console audit across all 44 sites I owned at the time, using the API to pull page-level impressions, clicks and position data per property. The traffic-concentration update pulled 28 days of Search Console clicks (11 August to 9 September 2026) across the roughly 100 properties now under management, plus a separate check of the two revenue lines against their own reporting (Amazon Associates dashboard and Merch by Amazon payment reports).

Evidence limits: this is my own portfolio data, not independently audited by a third party. Site names and numbers are reported as they appear in my own Search Console and revenue accounts. No client sites are included in any of the figures above.


Related reading:

Common questions

How many websites can one person realistically manage for SEO?

With the right systems and automation, a single consultant can manage 40-50 websites. The key is building repeatable processes: templated audits, automated crawl monitoring, and systematic title/meta frameworks. Manual content creation remains the bottleneck, not technical management.

What is canonical URL splitting and why does it hurt rankings?

Canonical splitting happens when Google indexes two versions of the same page, typically with and without a trailing slash (example.com/page vs example.com/page/). Each version accumulates separate ranking signals, effectively halving your page's authority. The fix is ensuring all internal links use one consistent URL format and setting proper canonical tags.

Does removing low-quality pages from Google index improve rankings?

Yes. Removing or noindexing thin, duplicate, or irrelevant pages concentrates Google's crawl budget and ranking signals on your strongest content. In one test across a consultant portfolio site, noindexing 80+ low-value pages improved average position from 31.6 to 25.6 within 10 days.

How do you manage SEO across a portfolio of websites?

Portfolio SEO requires centralised monitoring (Google Search Console API for all properties), templated technical audits, and systematic prioritisation based on revenue potential. The biggest wins come from fixing issues that affect multiple sites simultaneously, like trailing slash configuration or title tag truncation patterns.

How many websites does Sunny Patel actually manage?

The original audit above covered 44 owned sites. Since then the tracked portfolio has grown to roughly 100 properties, including newer launches not yet covered by a full technical audit. The two figures describe different points in time, not a contradiction.

Does managing more websites mean more revenue?

Not automatically. A September 2026 traffic pull found four sites carrying 79% of portfolio clicks, and only two sites across the entire portfolio with independently verified monthly revenue. Traffic concentration and revenue verification are separate problems from site count.