Mavix Marketing Mavix Marketing, home +1 (510) 312-5086

Getting found on Google

The 42-point SEO audit checklist, in the order we work through it

A 42-point SEO self-audit checklist with a pass condition for every check, in the order that finds the expensive problems first: indexation before keywords.

An SEO audit checklist earns its keep when every item has a pass condition and the items are worked in the right order. Start with indexation. Search Console’s Page indexing report shows which of your pages Google has indexed. Google says you should expect only your canonical pages to be indexed, not every URL on the site (Google Search Console Help). A page outside the index cannot rank, so every other check waits on this one.

Below are the 42 checks we work through when we open an account, in that order, each with the condition that counts as a pass and where to find the answer. You can do the whole first section without a developer.

The short version

  • Work in this order: indexation, duplicate URLs, redirects, internal links, on-page, then speed. A page Google has not indexed cannot rank, so later fixes do nothing for it.
  • Google says not to expect every URL to be indexed, only canonical pages, so compare the indexed count with your own list of pages you want to rank.
  • robots.txt is not a way to keep a page out of Google. A noindex tag is, and Google can only see it on a page it is allowed to crawl.
  • The Core Web Vitals pass marks are an LCP of 2.5 seconds, an INP of 200 milliseconds and a CLS of 0.1, measured at the 75th percentile of real visits.
  • Every check below has a pass condition. Where the condition is our own rule of thumb rather than Google documentation, the table says “our rule”.
  • This page is the self-audit list. The SEO audit template is the spreadsheet you fill in, and the technical SEO audit guide explains what a full audit covers and why.

What does this checklist cover, and how long does it take?

It covers six areas in 42 checks, and a small site takes two to four hours. The first section needs only Search Console and a browser. The later sections go faster with a crawler, and Screaming Frog’s free version crawls up to 500 URLs, which covers most small business sites (Screaming Frog).

SectionChecksWhat it answersTools you need
1. Indexation9Is Google keeping the pages you want to rank?Search Console, a browser
2. Duplication and canonicals8Does each page have one address?A browser, a crawler on bigger sites
3. Redirects and lost pages5Is value leaking through old URLs?A crawler, your analytics export
4. Structure and internal links6Can Google reach every page that matters?A crawler
5. On-page7Does each page say clearly what it is about?A crawler or page source
6. Speed and page experience7Do real visits pass Core Web Vitals?Search Console, PageSpeed Insights

If you would rather record findings in a sheet, the same thinking is laid out row by row in the free SEO audit template (CSV).

Is Google indexing the pages you want to rank?

Open Search Console, go to Indexing, then Pages, and compare the indexed total with your own count of pages that should rank. Google describes “Discovered - currently not indexed” as a page it found but has not crawled yet, usually because crawling it was expected to overload the site. It describes “Crawled - currently not indexed” as a page it crawled and did not index (Google Search Console Help).

robots.txt controls crawling. Google says it is not a mechanism for keeping a page out of search, and that noindex or a password is (Google Search Central). A noindex only works if the page is not blocked in robots.txt, because Google has to crawl the page to see the tag (Google Search Central).

Google also asks that a sitemap list the URLs you want in search, be submitted in Search Console, and can be declared in robots.txt with a Sitemap line (Google Search Central). A manual action is a human reviewer’s finding that pages break Google’s spam policies, and it shows in the Manual actions report (Google Search Console Help).

#CheckPasses whenWhere to look
1Indexed pages against expected pagesThe indexed total is close to your own list of pages you want to rank, and any gap is explainedSearch Console, Indexing, Pages
2“Discovered - currently not indexed”No page you want to rank is in this groupSame report, reasons table
3“Crawled - currently not indexed”No page you want to rank is in this groupSame report, reasons table
4Stray noindexNo noindex in the meta robots tag or X-Robots-Tag header of any page you want to rank, or of any templateCrawler filter, or view source and search “noindex”
5robots.txtNothing you want to rank is disallowed, and no noindexed page is also blockedyoursite.com/robots.txt, read line by line
6Sitemap contentsOnly canonical, indexable URLs that return 200The sitemap file, checked with a crawler
7Sitemap declared and submittedA Sitemap line in robots.txt and a successful submission in Search Consolerobots.txt, Search Console Sitemaps report
8Submitted against indexedThe gap between submitted and indexed sitemap URLs is explainedPage indexing report filtered to the sitemap
9Manual actions and security issuesBoth reports say no issues detectedSearch Console, Security and Manual Actions

Staging noindex left in place after a launch is the most expensive single mistake on this list in the accounts we have opened. It removes whole templates at once and nothing on the site looks broken.

Does each page have exactly one address?

It should. Google recommends a rel=“canonical” on the canonical page itself. It calls a redirect a strong signal of which URL should be canonical, and it prefers HTTPS over HTTP versions of the same page (Google Search Central). Google treats URLs as case sensitive, so /Services and /services are two different URLs, and it warns that parameters can multiply URLs pointing at the same content (Google Search Central).

On paginated lists, Google says not to use page one as the canonical for the whole series and to give each page its own canonical instead (Google Search Central). Google also asks for a distinct title on every page (Google Search Central) and a meta description unique to each page (Google Search Central).

#CheckPasses whenWhere to look
10Self-referencing canonicalEvery indexable page has a canonical pointing at itselfView source, or a crawler’s canonical column
11Protocol and wwwhttp, https, www and non-www all end on one version through a single 301Type each variant into a browser
12Trailing slashWith and without the slash resolve to one versionType both into a browser
13Letter caseUppercase variants redirect or canonicalise to the lowercase URLType an uppercase version of a key URL
14Duplicate titlesNo two indexable pages share a titleCrawler, page titles report
15Duplicate meta descriptionsNo two indexable pages share a descriptionCrawler, meta description report
16Parameter URLsFiltered and sorted URLs canonicalise to the clean URLCrawler, URLs containing ”?”
17PaginationEach page in a series has its own self-canonical, not one pointing at page oneView source on page two and three

Are old URLs and redirects losing you traffic?

Often they are, after a redesign or migration nobody audited afterwards. Google’s crawlers follow up to 10 redirect hops (Google Search Central), so a chain rarely breaks outright, but each hop is one more thing to maintain. Our rule is one hop. Google’s site move guidance is direct about the homepage: do not redirect many old URLs to one irrelevant destination such as the home page (Google Search Central).

#CheckPasses whenWhere to look
18Internal links to 404sZero internal links return a 404Crawler, response codes, inlinks
19Redirect chainsEvery redirect reaches its final page in one hop (our rule)Crawler, redirect chains report
20Bulk redirects to the homepageOld URLs redirect to the closest relevant page, not the homepageCrawl your old URL list
21Top landing pages from beforeYour top 50 URLs from the last analytics export return 200 or redirect once to a relevant page (our rule)Analytics landing pages export, crawled in list mode
22Backlinks pointing at 404sEach is redirected to the closest live pageSearch Console Links report, then check each target

A developer typing on a laptop with a second laptop open beside it.

Photo: olia danilevich on Pexels.

It can if every page you care about is linked from at least one other page, which is Google’s own wording (Google Search Central). The same page says Google can only crawl a link that is an <a> element with an href. It also says anchor text should be descriptive and tell people and Google something about the page it points to. Links added with JavaScript are fine if they follow those rules (Google Search Central).

The numbers in this table for link counts and click depth are our rules of thumb from client work. Google has not published thresholds for either.

#CheckPasses whenWhere to look
23Orphan pagesNo page you want to rank has zero internal links pointing at itCrawler compared with the sitemap
24Internal links per important pageEach service or product page has at least three inbound internal links (our rule)Crawler, inlinks column
25Click depthPages that bring enquiries sit within three clicks of the homepage (our rule)Crawler, crawl depth column
26Descriptive anchorsNo “click here” or “read more” as the only text of a linkCrawler, anchor text report
27Varied anchorsLinks into a page use natural variations, not one exact phrase everywhere (our rule)Crawler, inlinks for one page
28Real linksNavigation and in-content links are <a href> elements, not click handlersView source or the rendered HTML in URL Inspection

On-page checks: where most audits start, and should not

On-page work matters once the pages are indexed and reachable. Google’s title guidance sets no length limit on a title and says it is truncated in results to fit the device width (Google Search Central). That makes the 60 characters below a practitioner rule for keeping the important words visible. Google’s starter guide says heading order does not matter to Search, though semantic order helps screen readers, and that keyword stuffing is against its spam policies (Google Search Central). For images, the W3C says decorative images should carry an empty alt attribute so screen readers skip them (W3C WAI).

#CheckPasses whenWhere to look
29One h1Each page has one h1 that names its subject (our rule, for readers and screen readers)Crawler, h1 column
30Heading orderLevels descend without skipping, so an h2 is not followed by an h4 (accessibility, not a ranking rule)Crawler, or a browser accessibility checker
31Title tagsUnique, lead with the page’s subject, and keep the key words inside about 60 characters (our rule)Crawler, page titles report
32Meta descriptionsUnique, written for the reader rather than copied from the titleCrawler, meta description report
33Image alt textInformative images have a description, decorative images have alt=""Crawler, images missing alt
34Primary term placementThe term appears in the title, the h1 and the opening copy without repetition for its own sakeRead the page
35One page per primary termNo two pages target the same main search (our rule)Your keyword to page map

Do your pages pass Core Web Vitals on real visits?

Check the Core Web Vitals report in Search Console, which is built from real-world usage data and splits mobile from desktop (Google Search Console Help). The good thresholds are an LCP within 2.5 seconds, an INP of 200 milliseconds or less and a CLS of 0.1 or less, measured at the 75th percentile of page loads (web.dev).

Keep this section in proportion. Google says its systems always seek to show the most relevant content even if page experience is sub-par. It also says that chasing a perfect score just for SEO may not be the best use of your time (Google Search Central). Pass the thresholds, then move on.

#CheckPasses whenWhere to look
36Largest Contentful Paint2.5 seconds or less on mobile field dataSearch Console, Core Web Vitals, Mobile
37Interaction to Next Paint200 milliseconds or lessSame report
38Cumulative Layout Shift0.1 or less, and you know what moves if it failsSame report, then PageSpeed Insights
39ImagesModern format, served near the size they display, with width and height setPageSpeed Insights, page source
40FontsSelf-hosted or preloaded, and none block the first paintPageSpeed Insights diagnostics
41Third-party scriptsEvery script has a known owner and purposeTag manager container and page source
42Content in the rendered pageThe main text and links appear in the rendered HTML Google seesURL Inspection, view crawled page

A hand ticking items off a handwritten plan in a notebook beside a laptop.

Photo: Jakub Zerdzicki on Pexels.

Why does the order matter more than the list?

Because a fix only pays when the page it touches is in the index. Many published SEO checklists open with keyword research, which is the most interesting section and the least useful one while part of the site is excluded.

We have opened accounts where months of new content sat behind a noindex tag carried over from a staging site. Nobody had checked, because checking indexation is dull and writing content is not. Work top down.

If section one is clean, in our experience most of the remaining gains come from sections four and five, internal links and on-page. Speed matters, but once the thresholds pass, extra points buy little. If traffic has already fallen and you are looking for a cause rather than doing a routine check, start with what to check when organic traffic drops instead.

The bottom line

An audit is a list of decisions, not a list of observations. Give every check a pass condition, work from the index outwards, and stop after the first section if it fails, because nothing further down the list can help a page Google is not keeping.

Questions people ask about this

Do I need a paid tool to work through this?

No. Search Console is free and covers most of the first three sections, which is where the expensive problems live. A crawler helps with sections four and five on a larger site, and Screaming Frog’s free version crawls up to 500 URLs, which covers most small business sites entirely.

How often should this be run?

We run sections one to three quarterly, and immediately after any redesign, replatform or migration. Sections four to six once a year unless something changed. Technical health degrades quietly every time the site is edited, and the first symptom is often a traffic drop nobody can explain.

What if I find a lot of problems?

That is normal, and it is good news, because these are fixable. Work top down and stop after section three the first time. In the accounts we work on, fixing indexation and duplication on a neglected site tends to produce more movement than anything else on this list.

Where do I find the indexed page count?

In Search Console, open Pages under Indexing. The report shows indexed and not indexed totals, with reasons for each excluded group. Compare the indexed figure against your own count of pages that should rank, which is usually every service, location, product and article page. Ignore tag pages and internal search results. A gap of more than a few pages in either direction is the first thing to explain.

What is the difference between “Discovered” and “Crawled, currently not indexed”?

Discovered means Google knows the URL exists but has not fetched it yet. Google’s own explanation is that crawling was expected to overload the site, so it rescheduled, which often points at a slow server or at weak internal linking. Crawled means Google fetched the page and decided not to keep it, which is a judgement on the content or its similarity to other pages. Fix discovered problems with links and speed. Fix crawled problems by improving or merging the page.

How do I find a stray noindex tag quickly?

Crawl the site with a crawler and filter for pages carrying a noindex directive, either in the meta robots tag or the X-Robots-Tag header. On a small site you can view the source of your key pages and search for “noindex”. Check the templates, not just the pages, because a template-level tag affects every page using it. Staging settings that survived a launch are the usual cause.

Which section should a non-technical owner do first?

The indexation section, and it is written to be done without a developer. Everything in it lives in Search Console or in your robots.txt file, which you can read in a browser. Write down what you find rather than fixing as you go. Then hand the findings and the checklist to whoever manages the site. You will have found the expensive problems before spending anything.

Does a small site with twenty pages still need all 42 checks?

Yes, but most of them take seconds on a small site. The checks that matter most on twenty pages are indexation, canonicals, duplicate titles and one h1 per page. Crawl depth and orphan pages rarely bite on a site that small. Speed still matters, because a small site with heavy images fails the thresholds as easily as a large one.

How do I fix a redirect chain?

Find the final destination of the chain and point every earlier URL straight at it, so each old address redirects once. Do it in the server or CMS redirect rules rather than with a plugin stacked on a plugin, which is how chains form. After the change, crawl the old URLs again and confirm each returns a single 301 to a page that returns 200.

What should I do with the pages Google refuses to index?

Decide whether each one deserves to exist. If two pages say nearly the same thing, merge them and redirect the weaker one. If a page is thin, either make it genuinely useful or remove it and redirect it to the closest relevant page. If it is a page that never needed indexing, such as a tag archive, set noindex on purpose and stop worrying about it.

How do I check Core Web Vitals on real user data?

Open the Core Web Vitals report in Search Console and read the mobile tab first, because that is where most sites we audit fail. The report groups URLs by status and shows which metric is failing. Lab tools such as PageSpeed Insights help you diagnose, but the report itself is built on field data from real visits. A site with too little traffic may show no field data, and then the lab score is all you have.

Can I skip the speed section if my site feels fast?

Not safely, because how it feels on your office connection and how it measures on a mid-range phone on mobile data are different things. The field data in Search Console is the judge. If it shows a pass on all three metrics, move on and spend the time in sections one to four. If it fails, the report will tell you which metric and which group of pages.

Share this

LinkedIn X

Free review

Want this looked at on your own site?

Send the address. A person reads it and writes back with the two or three things that would move your enquiry number first. Free, and yours to keep whether you hire us or not.

Next step

Now find out what yours needs.

The review looks at your live site and accounts and tells you what is actually wrong. Written by a person at Mavix Marketing, free, no obligation.

Free review

Send the address. We will tell you what it is costing you.

  • Search. What you rank for now, and the searches you should be winning.
  • Paid. What the spend is buying, and the campaigns quietly eating it.
  • Email. Whether the list is mailed at all, and what the missing flows are worth.
  • Tracking. Whether it measures anything real, or counts page views as sales.

The review is free, and yours to keep whether you hire us or not.

Send the site. We will say what we would fix first.

A minute to fill in. A written answer from a person, not a sequence.

Free, and yours whether you hire us or not.

Free review

A written plan for more enquiries from your site.

  • What you rank for, and what you should.
  • What the ad spend is buying, and what a lead really costs.
  • Which follow-up emails your list is missing.
  • Whether your tracking counts anything real.

Read by a person, written for your business, back within one working day. Yours to keep whether you hire us or not.

150+ businesses since 2019. No sequence, nobody chases you.

Free, and yours whether you hire us or not.

Book a call

Pick a time that suits you.

Fifteen minutes with the founder, who will have read your site before you speak.