Skip to content
MrKeyword
Site audit

How to do an SEO audit: a prioritized checklist you can run for free

An SEO audit is a crawl of your site plus a read of Google's own reports, sorted by what stops pages ranking first. Here is the order to check things in, what each problem looks like, and which fixes to make before the rest.

A site audit summary card showing a health score and issue counts
The short version
  • Audit in order of damage: first what stops Google crawling and indexing pages, then what breaks them (5xx, 4xx, redirect loops), then on-page, content, links and speed.
  • Start in Search Console's Page indexing report. Google says not to expect every URL to be indexed; the goal is that each important canonical page is.
  • A crawler finds what Search Console cannot show you yet: broken internal links, redirect chains, duplicate titles, orphan pages and thin templates across the whole site.
  • Rank fixes by severity × how many pages each problem affects. One broken template beats a hundred one-off notices.
  • Re-crawl after fixing. An audit is only finished when the next crawl shows the issue as fixed.

To do an SEO audit, check five things in this order: whether Google can crawl and index your important pages, whether any pages are broken or redirect badly, whether each page has a unique title, description and H1, whether the content is thin or duplicated, and whether internal links and page speed hold pages back. Use Search Console for what Google has already seen and a site audit crawler for everything else. The checklist below is ordered so the first fixes are the ones most likely to be costing you traffic today.

What is an SEO audit, and what should it find?

An SEO audit is website auditing to identify SEO problems that stop search engines finding, understanding or showing your pages. It is not a list of every possible improvement; it is a ranked list of what is wrong, how many pages it affects, and what to do about it.

A useful audit combines two views. Google's view comes from Search Console: which pages are indexed, which canonical Google chose, real-visitor Core Web Vitals. A crawler's view comes from fetching every page you link to, the way a search engine does, and checking status codes, tags, links and content across the whole site at once. Neither is enough alone. Search Console only reports on URLs Google has met, and a crawler cannot tell you what Google decided to index.

The SEO audit checklist, in priority order

Work from the top of this table down; the higher a row, the more traffic the problem can cost.

SEO audit checklist by priority

PriorityCheckWhat a problem looks likeWhere to check
1IndexingKey pages “not indexed”, a stray noindex, Google picking a different canonicalPage indexing report, URL Inspection
1Crawl blocksrobots.txt disallowing important foldersRobots.txt tester
2Broken pagesServer errors (5xx), 404s linked from your own pagesCrawler, broken link checker
2RedirectsLoops, chains of several hops, internal links pointing at redirectsCrawler, redirect checker
3SitemapSitemap URLs that 404, redirect or are noindexed; indexable pages missing from itCrawler, Sitemaps report
3On-page tagsMissing or duplicate titles, descriptions and H1sCrawler
4ContentThin pages, duplicate or near-duplicate template pages, placeholder textCrawler, then a human read
4Internal linksOrphan pages, pages many clicks deep, pages with one link inCrawler, internal link suggestions
5Core Web VitalsLCP, INP or CLS outside the “good” range on mobileCore Web Vitals report, PageSpeed Insights
5Markup, mobile, securityInvalid JSON-LD, no viewport tag, mixed content, HTTP pagesCrawler, Rich Results Test
Our ordering. Priority 1 problems can remove pages from Google entirely; priority 5 problems rarely explain a ranking on their own.

Step 1: check indexing and crawlability first

If Google cannot crawl or index a page, nothing else in the audit matters for that page, so start in Search Console's Page indexing report. Google says plainly not to expect every URL on your site to be indexed. Duplicates, redirects and alternate pages should not be. What you are checking is that the canonical version of each important page is.

  1. Inspect your home page and top pages

    Run them through URL Inspection. It shows whether the page is on Google and which canonical Google selected, which can differ from the one you declared.

  2. Read the “not indexed” reasons

    “URL marked ‘noindex’”, “Blocked by robots.txt”, “Duplicate, Google chose different canonical than user”, “Server error (5xx)” and “Soft 404” are the ones to act on. “Alternate page with proper canonical tag” and “Page with redirect” are usually working as intended.

  3. Check robots.txt and noindex together

    Google's robots.txt documentation says it is not a mechanism for keeping a page out of Google; use noindex for that. And a noindex only works if the page is not blocked by robots.txt, because Googlebot has to fetch the page to see it.

  4. Check canonicals

    Google's canonicalization guide ranks permanent redirects and rel="canonical" as strong signals and sitemap inclusion as a weak one, and says not to use robots.txt for canonicalization.

For a small site, Google's SEO Starter Guide suggests a quicker first check: search site:yourdomain.com. If your pages show up, you are in the index.

Step 2: find broken pages, server errors and redirect problems

Crawl the site and fix every 5xx, every internal link to a 404, and every redirect loop before touching content. Google's HTTP status code documentation explains why: pages returning 4xx are not indexed, and indexed pages that start returning 4xx are dropped. Server errors make Google slow its crawling, and URLs that keep returning them are eventually removed.

  • Redirect chains. Google follows up to 10 redirect hops, but every hop is wasted crawl and a chance to break. Point internal links straight at the final URL.
  • Soft 404s. A page that returns 200 but shows “no results” or an empty template may be treated as a soft 404. Return a real 404 or 410, or add content.
  • Sitemap hygiene. Every URL in your sitemap should return 200 and be indexable. Google's sitemaps overview notes that sites of about 500 pages or fewer that are well linked may not need one, but if you have one, it should not list redirects or noindexed pages.

Before a full site crawl, a single-URL check settles a lot: paste a suspect URL into the free redirect checker to see every hop, or a page into the broken link checker to test every link on it.

Step 3: audit titles, meta descriptions and headings

Every indexable page needs its own descriptive title, its own meta description and one clear main heading. Duplicate titles across many pages are the most common on-page problem a crawl turns up, usually from a template.

  • Titles. Google's title link guidance asks for a title on every page that is descriptive, concise, distinct from other pages and not stuffed with keywords. Long titles get truncated in results.
  • Meta descriptions. Google's snippet guidance says identical descriptions on every page are not helpful, there is no fixed length limit, and Google often builds the snippet from page text instead. If time is short, write them for the home page and the most popular pages first.
  • Headings. One <h1> that says what the page is about. A missing H1 or several competing ones is worth fixing in the template.

Character counts in audit tools are rules of thumb, not Google limits. MrKeyword, for example, flags titles under 30 or over 60 characters and descriptions under 70 or over 160 as notices, not errors.

Step 4: look for thin, duplicate and placeholder content

A crawler can find pages that are short, near-identical or unfinished; only a person can judge whether they are useful. Use the audit to build the list, then read the pages.

  • Thin pages: indexable pages with very little body text. Expand them, merge them into a stronger page, or noindex them.
  • Duplicate and near-duplicate pages: often location, tag or filter pages generated from one template with only a word changed. Fix the template or consolidate with a canonical.
  • Placeholder text: “lorem ipsum” or “coming soon” left on a live page.

Run this checklist on your own siteMrKeyword's crawler checks 68 issue types, sorts them by how many pages each affects, and writes out the fix. No card needed.

Audit my site

Every page you want indexed should be linked from at least one other page on your site with descriptive anchor text. That is Google's own advice in its link best practices, which also say Google reliably follows only <a> elements with an href, not click handlers or javascript: links.

In the crawl, look for orphan pages (in the sitemap but linked from nowhere), pages buried more than three clicks from the home page, and pages with a single internal link in. The fix is contextual links from related pages, which internal link suggestions can find from the words already on your pages.

Step 6: check Core Web Vitals and page speed

Check Search Console's Core Web Vitals report, which uses real-visitor field data from the Chrome UX Report, and fix groups rated “Poor” on mobile first. According to web.dev, a page passes when, at the 75th percentile of page loads, LCP is 2.5 seconds or less, INP is 200 milliseconds or less and CLS is 0.1 or less.

The report groups similar URLs and omits groups without enough data, so low-traffic sites often see little there. Our Core Web Vitals thresholds guide explains the metrics and how much they weigh in rankings; Core Web Vitals history tracks them week by week. In a crawl, slow server responses, render-blocking scripts and images without width and height are the usual causes worth fixing.

Step 7: cross-check the crawl with Search Console

The most useful audit findings come from comparing what the crawler found with what Google shows in search. Three gaps are worth a look:

  • Pages with impressions the crawl never reached. Google knows them, but your internal links do not lead there.
  • Pages in your sitemap, indexable and returning 200, with no impressions in 28 days. Either they are not indexed or nobody searches for them.
  • Pages earning impressions with no internal links in. Easy wins: link to them.

Then attach traffic to each issue. A missing H1 on a page with thousands of impressions matters more than the same issue on an old tag page.

What to fix first: severity times reach

Fix the problem that is most severe and affects the most pages first, and fix it in the template, not page by page. A redirect loop on your checkout outranks every notice on the list. A duplicate title on 400 product pages generated from one template is one fix, not 400.

Give it time, then re-crawl. Google's SEO Starter Guide says some changes take effect in hours and others take months, and suggests waiting a few weeks before judging whether a change helped. Re-crawl to confirm the fix landed; let Search Console tell you whether it mattered.

When you need to hand the findings to someone else, our guide to writing an SEO audit report covers the sections, a template and how to present it.

How MrKeyword's Site Audit runs this checklist

MrKeyword's Site Audit crawls your site with its own crawler and checks 68 issue types in seven categories: indexing and crawling, content, internal links, performance, markup and mobile, accessibility and security, and AI discoverability. Six are critical (server errors, broken pages, broken internal links, redirect loops, missing titles and forms that submit over HTTP), 26 are warnings and 36 are notices, and each comes with the fix written out and the pages it affects.

  • A health score with its formula shown: 100 minus, for each issue type, a weight (25 critical, 8 warning, 2 notice) times the square root of the share of pages it affects. 80 and above is Good, 50 to 79 Needs work, below 50 Poor.
  • Issues sorted by reach and marked new, persisting or fixed since the last crawl, with scheduled re-crawls weekly or every 30 days.
  • Templates: crawled URLs folded into templates, with each template's page count, thin-content share and near-duplicates.
  • Search Console cross-check: with Search Console connected, each page's clicks and impressions over the last 28 synced days sit next to its issues, plus the three index gaps above.
  • Core Web Vitals from PageSpeed Insights for a few top URLs per crawl, labelled as URL field data, origin field data or a lab test.
  • Single-page audit: any one page checked on demand, with a score and ranked recommendations, without using the crawl allowance.

It crawls politely: at most two requests a second per site, robots.txt always obeyed (including Crawl-delay up to 10 seconds), and it identifies itself as MrKeywordBot/1.0. The free website audit covers 100 crawled pages a month on one site; larger allowances are on paid plans.

What MrKeyword does not do

Site Audit reports technical problems and how widespread they are; it cannot tell you what Google will do about them.

  • It does not guarantee a ranking change, and it does not judge whether your content is helpful. That is still a human read.
  • It only crawls sites you have added to your own workspace, never ignores robots.txt, and stops at your plan's monthly page allowance.
  • It checks the HTML your server returns rather than rendering every page's JavaScript; it flags pages whose text appears to need JavaScript instead.
  • It does not estimate Core Web Vitals. Where Google has no field data, it says “Needs field data”, and it tests a handful of URLs per crawl, not every page.
  • It does not analyse server log files, and it does not replace Search Console's Page indexing report: it shows what Google could crawl, not what Google chose to index.

Questions and answers

How to do an SEO audit questions

How do I do an SEO audit for free?

Use Google Search Console (free) for indexing, Core Web Vitals and URL Inspection, then crawl the site with a free site audit crawler to find broken pages, redirects, duplicate titles, thin content and orphan pages. MrKeyword's Free plan crawls up to 100 pages a month on one site.

What should an SEO audit check first?

Indexing and crawlability. If robots.txt blocks a folder, a noindex tag is left on, or Google picks a different canonical, no on-page fix will help those pages. After that, fix server errors, 404s linked internally and redirect loops.

How often should I audit my site?

Run a full crawl after every major release or migration, and re-crawl on a schedule, weekly or monthly, so new problems show up as new rather than piling up. Check Search Console's Page indexing report whenever traffic changes.

What is the difference between a site audit and Search Console?

Search Console shows what Google has crawled and indexed. A site audit crawler fetches every page you link to and checks status codes, tags, links and content across the whole site, including problems Google has not reported yet. Use both.

Do title and meta description length limits matter?

Google sets no fixed length limit for meta descriptions and truncates titles and snippets to fit the screen. Length checks in audit tools are guidelines; uniqueness and accuracy matter more.

Is a site audit health score a Google metric?

No. Health scores are each tool's own summary. MrKeyword prints its formula: 100 minus weighted deductions for each issue type, scaled by the share of pages affected. Use it to track progress, not as a ranking factor.

About this article

Written by the MrKeyword team, who build an SEO workspace on first-party Search Console and Bing data. Outside facts link to their original source below. We update this page when the product or the sources change.

Sources

  1. Page indexing report — Search Console Help, on not expecting every URL to be indexed and the not-indexed reasons
  2. URL Inspection tool — Search Console Help, on indexed status and the Google-selected canonical
  3. How HTTP status codes and network errors affect Google Search — Google Search Central, on 4xx, 5xx, redirects and soft 404s
  4. Introduction to robots.txt — Google Search Central
  5. Block Search indexing with noindex — Google Search Central, on noindex needing a crawlable page
  6. How to specify a canonical URL — Google Search Central
  7. Learn about sitemaps — Google Search Central
  8. Influencing your title links — Google Search Central
  9. Control your snippets in search results — Google Search Central, on meta descriptions
  10. Link best practices for Google — Google Search Central, on crawlable links and internal linking
  11. Core Web Vitals report — Search Console Help
  12. Web Vitals — web.dev, on the thresholds and the 75th percentile
  13. SEO Starter Guide — Google Search Central, on site: searches and how long changes take
Keep reading

Put this into practice.

Related guides and tools for the same job.

Audit your site and fix the widest problem first.

Crawl your site with MrKeyword, see every issue sorted by how many pages it affects, and confirm each fix on the next crawl. Free plan for one website, no card; paid plans from $10 a month.