Local SEO Rank Diagnosis for Agencies — SoloCMO
SEO 01 · diagnose

Rank trackers tell you where. This tells you why.

Six data sources read together, twelve dimensions scored, and an eleven-section diagnosis that explains how Google currently reads the business, what's holding it back, and the exact sequence to fix it over ninety days.

It comes out as a PDF with your agency's name on it.

Rank DiagnosisClient report
Screenshot The report — score, scoreboard, agency branding 16:9 · export 2000 × 1125 (@2x)

Anonymize the client name and domain. Your own agency branding in the footer can stay — it's the point.

The problem

Position 27 is a fact. It isn't a reason.

Every rank tracker will tell you a client sits at 27 for their money keyword. None of them tell you it's because the Google Business Profile is filed under a broad category with no specialist category stacked behind it, while the page itself is technically fine and the reviews are excellent.

Finding that out means sitting with one client's profile, heatmap, Search Console and site together for an hour and thinking. It's the highest-value hour in local SEO, and at fifteen clients it never happens.

Six signals, one read

The answer is almost never in one place.

A page can be perfectly built and still lose because the profile is categorized wrong. A profile can be immaculate and still lose because nothing links to the service page. The diagnosis reads all six sources together, which is the only way those contradictions show up.

  • Google Business Profile — categories, services, description
  • Local heatmap rank grid — position across the service area, not just at the door
  • Search Console — impressions, clicks, CTR and average position for what's really landing
  • The review corpus — volume, rating and what the reviews actually mention
  • The photo library — count, recency and subject matter
  • An on-page crawl — title, headings, word count, indexation and internal links
What the signals showSection 04
Screenshot Four signal cards with the trend read 16:10 · export 1600 × 1000 (@2x)
Before it runs

It won't diagnose a client on half the data.

A diagnosis built on partial inputs is worse than none — it reads confidently and points you somewhere wrong, and you spend a month on the wrong fix. So the run is blocked until the checklist clears.

The same reason the content pipeline stops a draft that's over its word ceiling. A tool that only ever says yes isn't checking anything.

Not ready Complete these before running a diagnosis
  • Primary keyword set
  • Tracked keyword set
  • Target city and service area
  • Primary service page URL
  • Heatmap scan selected or grid uploaded
  • Google Business Profile connected
  • Search Console connected
  • Competitive intel loaded
  • Reviews connected
  • Photos loaded
  • Sitemap and on-page crawl configured
Section 01 of the report

One number, then the twelve underneath it.

The overall score is a baseline you re-run against, not a grade. What matters is the breakdown: which bands are dragging the score down, and which are existing strengths worth protecting rather than fixing.

68/100

Overall ranking health Twelve dimensions, each scored out of 100. Red bands are dragging the total; green ones are strengths you should be careful not to break while fixing the rest.

Keyword / page alignment88
GBP relevance34
Review strength92
Heatmap strength41
GBP prominence56
Geographic uniformity38
Topical authority47
GBP momentum62
Internal linking52
Trust & proof84
Technical health90
Competitor parity45

Illustrative values. Replace with a real diagnosis before publishing.

The smartest section in the report

How Google reads the business, and how it needs to.

Most local SEO problems aren't keyword problems. They're identity problems — Google has the business filed as one thing, the owner is trying to sell another, and no amount of on-page work closes a gap that lives in the category taxonomy.

The diagnosis states both readings plainly, then names the gap between them. That's the paragraph that changes what an owner does next.

Currently perceived as

A generalist

What the profile, the categories, the site structure and the review language add up to today — usually broader and vaguer than the owner believes.

Needs to be recognized as

The specialist for this service, in this city

The narrower entity that would actually win the money keyword, and what has to change for Google to read it that way.

Sections 06 to 10

It doesn't stop at the diagnosis.

Five sections of the report are instructions: what to fix first, in what order, over what period, and exactly which pages, links and profile changes to make.

Priority fixes

Ranked by impact and effort

Each fix tagged by severity and by which dimension it moves — so a critical, low-effort category change outranks a medium, high-effort content build.

90-day roadmap

Three phases, in sequence

Stop the bleeding, build the proof, expand the map. Sequenced because some of this work only pays off after the earlier work has landed.

The build lists

Named pages, links and profile changes

Articles to write with intent and target page, internal links with source, destination and anchor text, and a full Google Business Profile plan.

Every module is on every plan. Plans differ only in how many clients you run.

What you hand over

It reads like a paid audit because it is one.

The report exports as a PDF carrying your agency's branding and contact details. Not a dashboard link, not a screenshot — a document an owner can read on their phone and forward to their business partner.

Which makes it one of the very few things you can put in front of a prospect before any work has started. Most agencies open with a proposal. Opening with a diagnosis is a different conversation.

  • Eleven sections, from the scoreboard to the verification steps
  • Your agency's branding and contact details in the footer
  • Every diagnosis kept in a history, so the second run shows movement
  • A closing list of what extra data would make the next one sharper
Diagnosis historyScore over time
Screenshot Diagnosis history with score movement 16:10 · export 1600 × 1000 (@2x)
Shared context

It diagnoses. The other modules do the work.

Questions

Rank Diagnosis, answered straight.

Why won't it run until everything is connected?
Because a diagnosis built on partial data is worse than no diagnosis — it reads confidently and points you somewhere wrong. The readiness checklist has to clear before a run starts: keywords, target city, service page, heatmap scan, Google Business Profile, Search Console, reviews, photos and the site crawl.
What does it actually read?
Six sources at once — Google Business Profile, the local heatmap rank grid, Search Console, the review corpus, the photo library and an on-page crawl. Reading them together is the point: a page can be technically perfect and still lose because the profile is filed under the wrong category.
Can I give the report to a client?
Yes. It exports as a PDF carrying your agency's branding and contact details, not ours. It reads as a paid audit because it is one, which makes it one of the few things you can put in front of a prospect before any work starts.
Does the score mean anything on its own?
Only against itself. The number out of 100 is useful as a baseline you re-run against, and every diagnosis is kept in a history so you can show a client the movement. Comparing one client's score to another client's tells you very little.
Does it fix anything?
No. It diagnoses and prioritizes, then names the specific work — the categories to stack, the pages to build, the internal links to add, the reviews to request. The building happens in the other modules, and that separation is deliberate.
Get started

Every plan includes every module.

There are no feature gates. Plans differ only in how many clients you run and how much you generate for them.