Home/SEO Guide/Technique/The ultimate guide to perform an SEO technical audit

The technical audit is the basis of a good SEO strategy. It helps you see how the website works, and if there are any technical errors that need to be fixed. The audit is often performed by an SEO expert. But if the website has only a few pages, you can do it on your own with our method. We give you all the essential parameters to check in order to ensure the website’s good health. Let's go!

Contents

What tools to use for a technical SEO audit?

To get started, you can use the following tools that will help you in the website’s technical analysis. Most are free, except for ScreamingFrog. Although not free, this tool is very powerful and will save you some time!

seo-outils-audit

Basic technical check-ups

Redirects

Top Level Domains (TLDs)

Tool: Manual check

      • Goal: Check that all the domain’s extensions redirect to the main extension you have chosen. For example, if you choose the ".co.uk" extension, all other extensions you own should redirect to ".co.uk".
      • Method: in the search bar, type the domain followed by the extensions “.co.uk”, “.com” (and others such as “.info”, “.eu”), and check that you fall back on the main extension that you chose.
      • Solving: if this is not the case, it means you do not have this extension. At this level, we recommend that you purchase the domain with the missing extension.

HTTP(S)

Tool: Manual check

      • Goal : check that the website’s “HTTP” version redirects to “HTTPS”.
      • Method: in the search bar, type the URL containing the "HTTP" (for example: http://mywebsite.co.uk) and make sure that you fall back on the URL in "HTTPS".
      • Solving: if this is not the case, we recommend that you set up a 301 redirect from the URL in "HTTP" to the URL in "HTTPS".

With or without "www"

Tool: Manual check

      • Goal Check that the website’s “www” version redirects to the version without “www”.
      • Method in the search bar, type the URL containing the "www" (for example: https://www.mywebsite.co.uk), and check that you fall back on the URL without "www".
      • Solving: if this is not the case, we recommend that you set up a 301 redirect from the URL with “www” to the URL without “www”.

The main HTTP codes

The HTTP code indicates the response to the request sent to the server that hosts a web page when the user types a page’s address or clicks on a hyperlink. There are several categories of responses, symbolized by the first code’s digit. The most common are 3xx (redirection), 4xx (client error), and 5xx (server error).

Pages with an HTTP code in 3xx

Tools: Screaming Frog and Ayima Redirect Path

The two most common 3xx codes are codes 301 (permanent redirect) and 302 (temporary redirect).  

      • Goal: check that the pages are functioning well in 3xx.
      • Method :  
        • In ScreamingFrog, extract the URLs’ list in the “Response Code” > “Redirection (3xx)” menu.
        • Select 3 to 5 URLs from this list, and use the Redirect Path plug-in to analyze the redirection.
      • Solving
        • If the plug-in shows a straight redirect, in other words that there are no intermediate redirects, everything is good!

audit-technical-balise-h1

        • If the plug-in indicates a redirection with several intermediate pages, then you must modify the redirection from the original page to the final page, so that the redirection is direct.

audit-technical-direction-multiple

Please note that 301 pages reduce an internal link’s weight. For SEO-strategic pages, it's best to link them directly to the final URL, without going through the 301 URL.

Pages with an HTTP code in 4xx

Tool: Screaming Frog

The 4xx codes indicate errors on the URLs. They most often appear when a user types in an incorrect address or when the page no longer exists (404 error).

While it’s quite normal to use these codes when deleting a page, once again you have to make sure that these pages are not linked within the website.

      • Goal: check that the 404 pages are redirected with a 301 code, and contain a “noindex” tag so as not to index them on Google.
      • Method: therefore, we must retrieve these 4xx URLs’ inbound links, to either delete them or modify them. As a reminder: these inlinks are available via the crawler, and they are provided to you as part of the audit with SmartKeyword. In ScreamingFrog, go to the menu “Response Code'' > “Client error (4xx)”, and click on each link to check the 301 redirect and the noindex tag (information is displayed at the bottom of the screen).
      • Solving: update URLs without 301 or “noindex” tag.

Please note that 301 pages reduce an internal link’s weight. For SEO-strategic pages, it's best to link them directly to the final URL, without going through the 301 URL.

Pages with an HTTP code in 5xx

Tool: Screaming Frog

500 errors are related to the server hosting the website. That’s why you must contact the host to fix the issue.  

      • Goal: either the error must be corrected because the page must be visible. Or the page is the result of a technical issue, and so it’s necessary to put it in 410, and remove it from internal linking.
      • Method: in ScreamingFrog, go to the “Response Code” > “Server error (5xx)” menu to extract the list of URLs concerned.
      • Solving: contact the host, and send them the URLs in error 500’s list.

The "noindex" tags

Tool: Screaming Frog

The “noindex” tag tells Google not to index the webpage. It’s generally used on the General T&Cs, legal notices, shopping cart, online account login page, etc.  

      • Goal: check that all the pages that are in noindex are pages that you want search engines not to index.
      • Method: in ScreamingFrog, go to the “Directive” > “Noindex” menu to extract the list of URLs concerned.
      • Solving: remove or add a “noindex” tag on the affected pages.

Web pages’ SEO audit

The main content tags

Title tag

Tool: Screaming Frog

The title tag is displayed on search engine results pages, and meets strict criteria. Thanks to ScreamingFrog, you will be able to extract the list of pages that have title tag errors.

In ScreamingFrog, go to the “Page Title” menu and select the following filters:  

      • “Missing”: check that all the pages have a title tag.
      • "Duplicate": check that there is no duplicate title. This is often a pagination issue.
      • “Below”: these are titles that are too short, and are less than 30 characters long, so you have to make them longer.
      • “Over 65”: these are titles that are too long, and are more than 65 characters long, so you have to shorten them.

audit-technique-balise-title

The H1 and H2 tags

Tool: Screaming Frog

The H1 tag is the page’s “headline”, and must be unique for each website. Be careful, some CMS create multiple H1s, which is damaging for an SEO strategy.

H2 tags are the section titles of a web page’s content. Although they are not under strict rules, any page must have H2 tags. That’s why it’s important to check them out.

In ScreamingFrog, go successively to the “H1” and “H2” menus, and do the same checkups as for the Title tag.

Meta description tag

Tool: Screaming Frog

The meta description tag is displayed on search engine results pages, and meets strict criteria. Thanks to ScreamingFrog, you will be able to extract the list of pages that have meta description tag errors.

In ScreamingFrog, go to the “Meta description” menu, and do the same checkups as for the Title tag.

audit-technical-balise-h1-and-h2

The pages’ depth

Tool: Screaming Frog

A website page’s depth is the number of clicks it takes from the homepage to access a particular page. The higher the number of clicks is, the “deeper” the page is. Google recommends a maximum depth of 4 clicks. 

In ScreamingFrog, in the right section, go to “Site Structure” > “Internal”, then “Crawl Depth” to find out the URLs’ number per depth step (from 0 clicks to 1, 2, 3, etc.).  

audit-technical-site-structure

Pagination

Tool: Screaming Frog

Pagination makes it possible to divide content’ lists into sub-pages when there are too many of them, especially on e-commerce websites when there are dozens of products for each category.  

The best practices for SEO friendly pagination are:  

      • Each paginated page must have a canonical tag (self-referencing for page 1, and which points to page 1 for subsequent pages).
      • Chaque page paginée doit contenir les balises <rel=”next”> et <rel=”prev”> dans la partie <head> du code HTML (la page 1 n’a pas de <rel=”prev”> et la dernière page n’a pas de <rel=”next”>).
      • Don’t put a “noindex” or “nofollow” tag on these pages.
      • Page 1’s URL does not have the mention "page = 1" unlike the following pages.

In ScreamingFrog, filter paginated URLs (those that have “rel=next/prev'' tags), and make sure that they are implemented according to best practices. To do so, analyze a “page 1”, an intermediate page, and a final page.

Be careful, if ScreamingFrog does not list anything, it means that the pagination is not set up on the website.

audit-technical-pagination

audit-technique-pagination-Leclerc

The presence of breadcrumbs

Tool: Manual check

      • Goal: Check that the breadcrumb is present and relevant.
      • Method: go to several pages of the website. There must be a breadcrumb at the top of the page. The breadcrumb should show the way to get to the web page, with a link to the “parent” pages.
      • Solving: set up the breadcrumb trail (if absent), and set up the website navigation structure from which the CMS builds the breadcrumb.

Example of a relevant breadcrumb:  

audit-technical-wire-Arian-relevant

Example of unnecessary breadcrumb, as it goes directly from the homepage to the visited page without indicating the intermediate pages:  

audit-technical-wire-Arian-inutile

The structure of URLs

Tool: Screaming Frog

A web page’s URL is displayed on search engine results pages, and must meet some optimization criteria.

      • Goal: Check that the URLs are in ASCII format and that they're all unique.
      • Method :  
        • In ScreamingFrog, go to the “URL” > “non-ASCII” menu to extract the non-compliant URLs’ list.
        • Go to “URL” > “Duplicate” to extract the duplicate URLs’ list.
      • Solving
        • Convert non-ASCII URLs to ASCII
        • De-index duplicate URLs and add them to robots.txt file

The canonical tag

Tool: Screaming Frog

The canonical tag is used to “credit” the original content page in case of duplicate content. In general, it’s good practice to add a canonical "self-referencing" tag. In other words, that points to itself, for each website’s page.

      • Goal: check that a canonical self-referencing tag is present on each web page.
      • Method :  
        • In ScreamingFrog, go to the “Canonical” > “Self-Referencing” menu to extract the correct URLs’ list.  
        • Then, in “Canonical” > “Missing” to extract the list of URLs for which the canonical tag is missing.
      • Solving: add a canonical tag which points to itself on each page where it’s missing.

Warning: if you modify an URL, prioritize setting up a 301 redirect from the old URL to the new one, rather than a canonical tag.

Links in JavaScript

Tool: Manual check

      • Goal: Verify that the "a href" tags are properly implemented on the content blocks of a web page of the type "button" etc. And therefore that the content is not implemented in JavaScript.
      • Method: On a web page of your choice, right click and then "Inspect" on a button for example. The " a href " tag must indicate the semantics of the button. That is to say that Google can read the content of the block, that each element of the block is readable individually (without JavaScript).
      • Solving: add a canonical tag which points to itself on each page where it’s missing.

Example of the " a href " tag correctly implemented : 

audit-technique-balise-ahref

Example of a bad implementation because the button is an image and doesn't contain a " a href " tag: 

audit-technical-javascript

Image optimization

Tool: Screaming Frog

Images are essential to illustrate a web page. Be careful! In order not to be penalized by Google, you must make sure that they are not too heavy, as they may slow down the page’s loading time. In order to properly optimize images for Google Images, and to properly contextualize them in the page’s content (tell Google what the image is about, and confirm that it’s related to the page’s theme), it’s important to fill in the ALT attribute, a suggested field when uploading an image to the CMS.  

      • Goal: check that each image has an ALT attribute, and that it does not exceed a weight of 100Kb.
      • Method :  
        • In Screaming Frog, go to the menu “Image” > “Over 100Kb” to extract the too heavy images’ list.  
        • Then, in “Image” > “Missing ALT” to extract the list of images that have no ALT attributes.
      • Solving: compress the too heavy images (a plug-in in the CMS can do this automatically), and add an ALT attribute to all images that don't have one.

Indexing check-up

The robots.txt file

Tool: Manual check

The robots.txt file tells Google's robots which pages on the site you do not want to be crawled or indexed.

      • Goal: check that the file exists, and has the URLs that you do not want to index.
      • Method In the search bar, type the website’s URL followed by the /robots.txt sub-folder (for example https://smartkeyword.io/robots.txt)
      • Solving: if the file does not exist, it must be created. If it exists but is incomplete, add the missing URLs.

Sitemap files

Tool: Google Search Console

Sitemap files are used to tell Google robots which pages you want them to crawl first for indexing.  

audit-technical-sitemap

audit-technique-google-search-console-sitemap

Errors in the Google Search Console

Tool: Google Search Console

The Google Search Console is a free online tool made available by Google to provide you with information on the website’s optimization. This is where Google tells you what errors can be found on the pages. All of those errors are listed in the “Coverage” menu.

audit-technique-tool-google-search-console

The “Valid with warnings” report 

The warning report is for “valid” URLs that are indexed but blocked by the robots.txt file.

audit-technical-report-warning

There are 8 types of errors:

      • Server error (5xx) : the server did not respond to an apparently valid request.
      • Redirections error: 301/302 redirect does not work.
      • Sent URL designated as "noindex" you submitted this page to be indexed, but it has a"noindex" directive in a meta tag or HTTP header. If you want this page to be indexed, you must remove this tag or the HTTP header.
      • URL sent appears to be a "soft 404" error.you submitted this page to be indexed, but the server sent back what appears to be a "soft 404" error.
      • Sent URL returns an unauthorized request (401) you submitted this page to be indexed, but Google received a 401 (unauthorized access) response. Either remove the permission requirements for this page or let Googlebot access your pages by verifying that it’s effectively the bot.
      • Sent URL not found (404): you sent a URL to be indexed, but it does not exist. Find out how to fix 404 errors.
      • The sent URL has a crawl error. you submitted this page to be indexed, and Google detected an unspecified crawl error that does not match any of the other reasons. To try to debug the page, use the URL Inspection Tool.

audit-technical-error-url

To solve this problem, click on “Indexed despite the blocking by the robots.txt file”, to get the errored pages’ list. By clicking on each URL listed, you can test the blocking by the robots.txt file.

If URLs are really meant to be blocked, then remove them from the robots.txt file, add a robots meta tag in noindex on those pages. Once they are effectively deindexed, add the URLs for those pages back to the robots.txt file.

audit-technical-url-blocked

Errors on "excluded" URLs

The so-called “excluded” URLs are URLs that are not indexed. It may be useful to index them. Google gives you the list so that you can fix the issue. That said, if they are non-indexed on purpose, there’s no problem to be solved.

audit-technical-URL-excluded

Final word

Thanks to our advice, now you’ve got a list of corrections to make to the website in order to improve its technical health & status. For further questions, you’re welcome to contact us at: https://smartkeyword.io/contact.

   Article written by Louis Chevant

Further reading

The SEO technical audit guide

Step by step method to carry out a technical audit of your site.

Download for free