A checklist gives you eighty boxes. It does not tell you what to do on Monday.
Fifty checks, already written, half of them GEO. A score weighted by severity rather than a pass count, and a fix list ranked by what it costs to fix. The audit ends in a plan, not a to-do list.
No email. No signup. Rebrand it and use it with your own clients if you like.
Every failed check lands in one of these twelve cells and the file works out which. Read it top left first. A Critical you can fix in an afternoon outranks a Critical that needs a rebuild, and the argument about what to do first is over before it starts.
Most audits are a list of complaints.
You can download eighty checkboxes from anywhere. The reason they end up in a folder nobody opens is not that the checks are wrong. It is that a checklist produces findings, and a client cannot act on a finding. They can only act on an order of work.
A pass count is the wrong maths
Severity alone still does not give you an order
And half the audit is missing
Fifty checks, already written.
This is not a blank grid you fill with your own items. The checks are in it, with a benchmark for each one written before anybody looked at a site, and a severity set in advance so nobody can quietly downgrade a Critical once they see what the fix costs. You fill Result, Evidence, Effort and Fix.
- T03 Answers exist in the raw HTML, not injected by JavaScript. Google renders JS. Most AI crawlers do not.
- T01 Money pages are indexable. Check the rendered page, not the CMS setting.
- C03 No two indexable pages competing for the same query. Check which one Google actually picks.
- C05 Under 300 words and no unique value means noindex it or merge it. Do not pad it.
- A02 Majority of links topically Core or Adjacent. Relevance beats volume.
- A06 Any earned coverage in the last six months. Zero means the profile is bought or stale.
- L01 Primary category correct. It does most of the work in the map pack and most are wrong.
- G01 Baseline recorded: are we named for the top ten buyer prompts, across four engines. Critical, because without a baseline nothing after it is provable.
- G03 Citation source mix known: own site versus third party. The diagnostic that decides whether the answer is content or digital PR.
- G08 AI crawler policy in robots.txt is deliberate. GPTBot, PerplexityBot, ClaudeBot, Google-Extended, allowed or blocked on purpose rather than by a plugin default nobody chose.
- G04 Key pages open with a self-contained 40 to 60 word answer. No answer block, no citation.
A score you can argue with.
The maths is four lines long and it is left visible in the file, in columns N to P, rather than hidden behind a chart. A score a client cannot audit is a score they are right not to trust.
Severity is a weight
Not checked costs nothing
N/A is a decision, not a zero
How to run it yourself.
The whole thing is on this page. If you want to do it yourself, this is everything you need.
Decide what is out of scope before you start
Work top to bottom and write evidence as you go
Run the GEO rows manually, in a clean session
Set effort last, once you know what the fix is
Sort by Priority and hand over the top ten
Three ways people get this wrong.
Downgrading a severity once the fix looks expensive
Handing over all fifty rows
Starting a fresh file every quarter
FAQ
Is the audit template really free?
How is the score calculated?
Why is Priority severity times effort?
How long does it take to run?
Can I use it in Google Sheets?
Can I add my own checks?
The audit is the easy part.
Finding fifty problems takes a day. Fixing the ten that matter, in the right order, while the site keeps earning, is the year. That is the engagement.

