By Miguel Ángel Jiménez, Head of SEO at Gecko Studio
An SEO audit template is worthless if it's empty. The problem with most templates circulating online is exactly that: they give you blank fields and you're none the wiser, unsure what to write in each section or how to interpret the data in front of you.
This article does something different. We walk you through the structure of the on-site diagnostic of an SEO audit, block by block, and alongside each one we show you a real completed example — with data from an actual audit we carried out, anonymised — so you can see exactly what this work looks like when it's done properly and how the findings connect to the actions. No filler figures: these are real numbers from a real project.
If you're looking to understand how to carry out an audit from scratch, start with the step-by-step SEO audit guide. This article assumes you already know what an audit is and want the framework to execute one, with a real example in front of you.
What this template covers (and what it doesn't)
Important, to set expectations clearly: this template covers the on-site diagnostic of a website — the technical layer, on-page, content and link profile. It is a fundamental part of an SEO audit, but it is not the entire audit: it is one of its sections, focused on website health.
A complete SEO audit also includes other areas that fall outside this template and deserve their own analysis:
- Keyword research and search intent: what your audience is looking for and with what intent.
- Competitive and SERP analysis: who ranks, with what type of page and why.
- Business goals and conversion: ensuring the traffic you pursue is the traffic that actually converts.
- Local SEO (where applicable): Google Business Profile, reviews and proximity signals.
- International SEO (if you have a multilingual site): hreflang and market-by-market structure, which we cover in depth in the international SEO audit.
Think of what follows as the technical and content diagnostic block within a wider process. It's almost always where you start — without a sound foundation nothing else performs — but it isn't the only thing an SEO audit comprises.
Why most SEO audit templates don't work
The short answer: because they lack context. A blank template tells you what to review, but not how to fill it in or why it matters. The result is that many professionals end up with half-completed documents, columns of figures with no interpretation, or lists of issues with no prioritisation criteria whatsoever.
A good SEO audit template fulfils three functions:
- Structure — it guides you through every block so nothing gets overlooked.
- Criteria — it tells you how to interpret each metric (is 22% of pages missing a meta description serious or acceptable?).
- Prioritisation — it orders findings by impact so you know what to tackle first.
What follows delivers all three, and demonstrates it on real data.
Template structure by blocks
The audit is organised into six blocks. Each has its metrics, its diagnosis and its recommended actions with a priority level.
| # | Block | What it analyses | Primary tools |
|---|---|---|---|
| 1 | Indexation and crawlability | Indexed pages, robots.txt, sitemap, coverage errors | Search Console, Screaming Frog |
| 2 | Technical SEO | Core Web Vitals, HTTPS, hreflang, canonicals, redirects | PageSpeed Insights, Screaming Frog, GSC |
| 3 | On-page SEO | Titles, meta descriptions, H1s, URL structure, cannibalisation | Screaming Frog, Ahrefs |
| 4 | Content | Quality, intent, thin content, duplicates | Screaming Frog, manual review |
| 5 | Link profile | Referring domains, DR, anchor text, broken backlinks | Ahrefs |
| 6 | Prioritisation | All actions ordered by impact and effort | Summary sheet |
Each block is filled in with four things: findings (what we found), key metrics (the numbers), diagnosis (what they mean) and actions (what to do and at what priority).
The real example: an actual audit, anonymised
To keep the template from being purely theoretical, we've filled it in with data from a real audit in our portfolio. We have removed the name, domain and any identifiable URLs; the figures are the real ones from the project.
The site: a luxury holiday villa rental agency with a multilingual website. The crawl returned 2,451 URLs, of which 762 are owned content pages with a 200 response (the rest are redirects, errors and resources). A well-established domain in its sector, but with accumulated technical issues. Here's the audit at a glance:
Text equivalent (the same data as the chart):
| Block | Key real figure |
|---|---|
| 1 · Indexation | 691 pages crawled but not indexed |
| 2 · Technical | Mobile LCP 4.5 s (39/100) and 0 hreflang tags on a multilingual site |
| 3 · On-page | 168 pages without a meta description (22%) and 100 without an H1 (13%) |
| 4 · Content | 22 pages with fewer than 300 words; average of 752 words |
| 5 · Links | Domain Rating 15, 50 referring domains, 11 broken backlinks recoverable |
| 6 · Prioritisation | 1,645 actions (6 critical, 1,322 high, 267 medium, 50 low) |
Block 1 — Indexation and crawlability
Findings:
- Of the 2,451 URLs crawled, only 762 are owned content pages with a 200 response; the remainder are 271 redirects (301), errors and resources.
- 193 URLs did not respond (timeout) during the crawl, plus 40 404 errors, 13 403 responses and 5 server errors (5xx).
- In Search Console, of approximately 978 URLs known to Google, 691 appear as "crawled, not indexed", 84 as not found and 39 with a
noindextag.
Diagnosis: the dominant figure is the 691 pages crawled but not indexed. Google visits them, reads them and decides not to include them: the classic pattern of thin content, duplicates or contradictory signals (canonical, quality). Combined with the 193 timeouts, there is also a server stability issue eating into the crawl budget. Before optimising anything in on-page or content, the priority is to ensure Google can crawl freely and wants to index.
Recommended actions:
| Priority | Action |
|---|---|
| Critical | Fix owned pages returning 5xx errors during the crawl |
| High | Analyse a sample of the 691 "crawled, not indexed" pages and correct the root cause (thin, duplicate, canonical) |
| Medium | Review the 40 404 errors and redirect (301) those that had traffic or backlinks |
| Medium | Investigate the 193 timeouts: server performance and heavy resources |
Block 2 — Technical SEO
Findings:
- Core Web Vitals fails on mobile: performance score 39/100, LCP 4.5 s (the "good" threshold is < 2.5 s) and CLS 0.139. On desktop, by contrast, it passes: 61/100 and LCP 1.0 s. The problem is exclusively mobile.
- 0 hreflang tags despite the site being available in multiple languages: Google receives no signal about which version to serve to each market.
- 54 pages with a
canonicalpointing to a different URL (check whether this is legitimate pagination or hidden duplication) and several redirect chains, some with incorrect destinations.
Diagnosis: the mobile LCP of 4.5 s is fixable (heavy images, lazy loading). The complete absence of hreflang on a multilingual site is the strategic finding: it causes language versions to compete or cannibalise each other — the problem we cover in depth in the international SEO audit. Cross-canonicals may be telling Google to ignore pages that should in fact be indexed.
Recommended actions:
| Priority | Action |
|---|---|
| High | Optimise Core Web Vitals on mobile (compress images, WebP format, lazy loading) |
| High | Implement bidirectional hreflang for all language versions |
| Medium | Audit the 54 pages with cross-canonicals and fix incorrectly pointed redirects |
Block 3 — On-page SEO
Findings:
- 168 pages (22%) without a meta description and 100 (13%) without an H1; 2 pages without a
titletag. - Duplicate titles: 10 groups of URLs share the same title. The worst case, a generic title repeated across 12 different URLs.
- Duplicate meta descriptions: up to 12 URLs sharing the exact same generic text.
Diagnosis: repeated generic titles are the biggest drag on long-tail performance: each page should have a unique title that differentiates it. The 22% without a meta description does not penalise directly, but it leaves Google to write the snippet on its own, resulting in lower CTR. The absence of an H1 on 100 pages weakens the topical signal of each page.
Recommended actions:
| Priority | Action |
|---|---|
| High | Rewrite the titles for the 10 duplicate groups using a unique pattern per page |
| Medium | Write meta descriptions for the 168 pages that lack them |
| Low | Add an H1 to the 100 pages that are missing one |
Block 4 — Content
Findings:
- The average is 752 words per page and 280 pages exceed 1,000 words: there is a solid content base.
- 22 pages with fewer than 300 words (thin content), typically listing or category pages with little editorial text.
- Methodological note: the crawl also catalogues as "HTML" a set of resources with no text; these are not real content pages and are excluded from the analysis. The actionable items are the 22 genuinely thin pages.
Diagnosis: content is not this site's primary problem — it has both volume and depth. The thin content is concentrated on category pages that are wasting the opportunity to capture top-of-funnel traffic for the most competitive searches in the sector.
Recommended actions:
| Priority | Action |
|---|---|
| Medium | Add 150–300 words of useful editorial text to the main category pages |
| Medium | Enrich the 22 thin pages with specific, unique content |
Block 5 — Link profile
Findings:
- Domain Rating 15 (low) with 50 referring domains. The site ranks for 344 organic keywords, 36 of them in the top 3, and attracts approximately 812 organic visits per month.
- 11 broken backlinks from authoritative domains — one with DR 59, another with DR 39 — pointing to URLs that now return 404: link equity being lost that can be recovered with a simple redirect.
- The anchor text profile appears distorted by a spam term unrelated to the brand, with tens of thousands of links: the typical pattern of unsolicited links (negative SEO from third parties). The audit documents this and leaves it under monitoring, without any hasty reaction.
Diagnosis: the profile is weak in authority (DR 15) rather than "dirty": the priority is not to clean it up but to build it. The quick win is in the 11 broken backlinks — recovering links from a DR 59 domain by redirecting their destination is one of the best effort-to-impact fixes that exists. The unsolicited spam links are monitored; reacting aggressively typically causes more damage than the spam itself.
Recommended actions:
| Priority | Action |
|---|---|
| High | Redirect (301) the destination URLs of the 11 broken backlinks to recover their link equity |
| Medium | Editorial link-building plan (mentions and collaborations in sector media) to raise the DR |
| Monitor | Document and monitor the unsolicited link pattern; no immediate action required |
Block 6 — Prioritisation: the block that turns the audit into a plan
The closing step of every audit is prioritisation. Without it, neither the client nor the team knows where to start, and a list of 1,645 issues becomes paralysing. In this case, the actions were distributed as follows:
| Priority | No. of actions | % |
|---|---|---|
| Critical | 6 | 0.4% |
| High | 1,322 | 80.4% |
| Medium | 267 | 16.2% |
| Low | 50 | 3.0% |
| Total | 1,645 | 100% |
But priority alone is not enough. A good template forces you to cross-reference every action against two axes: impact (how much traffic or conversion it moves) and effort (how much it costs to implement). High-impact, low-effort actions always go first. In this example, the 6 critical issues (server errors) and recovering the 11 broken backlinks are exactly that: high impact, low effort. The bulk of "high priority" items (thousands of titles and meta descriptions) is high impact but also high effort, so it is planned in batches. That cross-reference — not the simple priority label — is what turns an audit into an executable roadmap.
How to interpret each block: reference thresholds
A template is only useful if you can read what you write in it. These are the criteria we use to interpret each block — the same ones applied in the example above. They are not absolute rules: the context of each sector takes precedence, but they serve as a benchmark.
| Metric | Reference | How to read it |
|---|---|---|
| Pages "crawled, not indexed" | The lower the better | A high volume (such as the 691 in the example) indicates thin content, duplicates or contradictory signals — not a crawl access problem |
| Mobile LCP | < 2.5 s good · 2.5–4 s needs improvement · > 4 s poor | The 4.5 s in the example is in the red zone; it affects both user experience and mobile rankings |
| CLS | < 0.1 good | Measures layout shift during page load; above this threshold it disrupts the user |
| % of pages without meta description / H1 | Target: close to 0% | The 22% without meta in the example is high; it does not penalise directly but leaves the snippet in Google's hands |
| Thin content | < 300 words as a warning signal | Depends on page type: a short listing page can be legitimate; an empty category page is not |
| Domain Rating | Always relative to the sector | A DR 15 only makes sense compared to the competitors that rank; in isolation it tells you nothing |
The most common mistake when interpreting an audit is reading metrics in absolute terms rather than in context. A DR 15 is not "bad" in itself: it is bad if your direct competitors have a DR 40. Thirteen per cent of pages without an H1 may be irrelevant if they are technical pages with no search value, or critical if they are your main category pages. That is why the diagnosis column in the template is as important as the metrics column: a number without interpretation drives no action.
The same structure, different weight depending on your site type
The six blocks are always the same, but the weight of each one changes depending on the project type. Applying the same template "blindly" to an e-commerce site and to a corporate website is another reason many audits fail to deliver: the framework is filled in without knowing where the most important issues lie for each case.
- E-commerce: the weight falls on indexation (large catalogues, discontinued products, faceted navigation) and on-page at scale (thousands of product pages requiring unique titles and meta descriptions). The villa rental example you've seen is of this type: many listing URLs, repeated generic titles and a high volume of "crawled, not indexed" pages.
- Corporate or service website: fewer pages, so the focus shifts to content (depth, intent) and link profile, because authority is what moves the needle when the catalogue is small.
- Content portal or media site: the content block dominates (cannibalisation between articles, outdated content, thin pages) alongside the internal linking architecture between pieces.
- Multilingual site (any type): the technical block gains weight due to hreflang and canonicals across language versions, as was the case in the example — a site in multiple languages with zero hreflang tags.
The template does not change; what changes is the order in which you read it. Always start with the block that has the greatest impact on your type of site, not the other way around.
How to use this structure on your own website
You do not need an expensive tool to get started: replicate these six blocks in a spreadsheet, with one tab per block and columns for findings, metrics, diagnosis, action and priority. The key is not the format — it's the discipline of filling in all six blocks without skipping any, and always closing with a prioritisation that crosses impact against effort.
Don't want to build it from scratch? Download the template — the exact 7-tab spreadsheet described in this article, with columns, reference thresholds and formulas already set up. We'll email it to you free.
If you would rather start with an automated diagnostic before filling anything in manually, you can run our free SEO analysis: it gives you a first scan of your site (indexation, technical and on-page) that shows which blocks have the most work ahead. And if you want our team to carry out the full audit using the real data from your site, that is exactly what our SEO audit service covers.
The SEO audit is not a document — it's a process
A common mistake is treating the audit as a final deliverable. At Gecko Studio we see it as the starting point of a continuous improvement process: audit, prioritise, fix, measure the impact, audit again in the next cycle. The example you have seen had 1,640 pending actions and 5 resolved at the time of the diagnostic: the audit is not the end — it is the map with which the real work begins.
Each block is independent: you can audit only the technical layer one month and the content layer the next, without needing to tackle everything at once. What matters is that every finding always carries its diagnosis and its action: a report of 80 pages with no clear recommendations is worth less than one of 10 pages with a concrete plan.
And that cycle only closes if you measure. After implementing the fixes for a block, go back and take the metric that motivated the action and compare: after addressing indexation, check whether the "crawled, not indexed" count drops in Search Console; after optimising the LCP, re-run the Core Web Vitals measurement; after recovering the broken backlinks, confirm the destination URLs return 200 and that the links are passing equity again. A well-used template holds two date columns — initial diagnostic and re-measurement — so that the impact of every fix is documented in numbers, not in intuition. That traceability is what separates an audit that improves rankings from a PDF that gets archived and forgotten.
Frequently asked questions about the SEO audit template
What is an SEO audit template?
It is a structured document — typically a spreadsheet — that organises everything that needs reviewing on a website from a search ranking perspective: indexation, technical factors, on-page, content, links and prioritisation. Its function is to ensure no critical block is omitted and that findings are documented with a clear course of action.
What is the difference between an SEO audit template and an SEO audit report?
The template is the working instrument filled in during the analysis; the SEO audit report is the output document delivered with the consolidated, interpreted and prioritised findings. A good template makes the report far easier to write, because the data is already organised.
How long should an SEO audit be?
There is no fixed length. A quick technical audit of a small site fits in 4–6 pages; a full audit of a large site can run to 30–50 pages with its appendices. What matters is not the length but that every finding carries a diagnosis and an action: a 10-page report with a clear plan is worth more than an 80-page one without recommendations.
How often should an SEO audit be carried out?
The standard recommendation is a full audit once a year, with partial reviews (technical and indexation) every quarter. For sites undergoing migration, with a penalty, or recently launched, the cadence should be monthly during the first 90 days.
Can I carry out an SEO audit without paid tools?
Yes, with limitations. Search Console covers indexation, performance and Core Web Vitals; PageSpeed Insights covers speed; Screaming Frog crawls up to 500 URLs for free. For the link profile you need at least an entry-level plan on a tool such as Ahrefs. For a small site, the free options cover the bulk of the blocks in sufficient detail.
What is the first thing to review in an SEO audit?
Always the indexation block. If Google cannot crawl and index your pages correctly, no other effort — on-page, content, links — will have any effect. Check robots.txt, the sitemap and the Search Console coverage report before moving on to any other analysis.