70
@badams #SAScon How to perform a Technical SEO audit Barry Adams 16 June 2016

How to Perform a Technical SEO Audit - #SAScon

Embed Size (px)

Citation preview

Page 1: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

How to perform aTechnical SEO audit

Barry Adams16 June 2016

Page 2: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Barry Adams

• Doing SEO since 1998• Founder of Polemic Digital• Senior Editor at State of Digital

Page 3: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Audit Process:

1. Crawl Optimisation

2. Index Optimisation

3. International SEO

4. Miscellaneous Elements

Page 4: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

My Technical SEO Tools

• Google Search Console

• DeepCrawl

• Screaming Frog

• WebPagetest.org

• Structured Data Testing Tool

Page 5: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Excel Is Your Friend

Page 6: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Start with a crawl

Page 7: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

1. Crawl Optimisation

Page 8: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

What is Crawl Optimisation?

Ensuring search engine spiders waste as little time as possible crawling the right URLs on your site.

If you waste crawl budget, the right pages are unlikely to be crawled & indexed.

Page 9: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Google’s Crawl Sources

• Site crawl• XML Sitemaps• Inbound links

• DNS records• Domain registrations• Browsing data

Page 10: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Identifying Crawl Waste

Page 11: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Identifying Crawl Waste

Page 12: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Identifying Crawl Waste

Page 13: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Crawl Waste

• Check URLs in XML Sitemap

Page 14: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Optimise XML Sitemaps• Check if the sitemap contains final URLs only

• Identify 301-redirects or other non-200 status codes

• Check usage of multiple sitemaps

Page 15: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Crawl Waste

• Paginated Listings• Faceted Navigation

http://website.com/jewellery/?page=2&cat=5&color=silver&style=glass&collection=autumnsort=a&…

Page 16: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Optimisation of Paginated Listings

• Check number of items on a single page

• Check implementation of rel=prev/next pagination meta tags

• Check blocking of sorting parameters in robots.txt Disallow: /*?sort=*

Page 17: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Optimisation of Faceted Navigation

• Decide which facets have SEO value Recommend creating static pages for these

• All other facets: robots.txt disallow ‘rel=nofollow’ on facet links

Page 18: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Check Configuration of URL Parameters

Page 19: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Crawl Waste

• Check crawling/indexing of internal site search results

Page 20: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Block Internal Site Search Pages

• Block in robots.txt

User-agent: *Disallow: /SearchResults.aspxDisallow: /*query=*Disallow: /*s=*

Page 21: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Crawl Waste

• Check internal redirects

Page 22: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Minimise Internal Redirects

• Find redirects with Screaming Frog• Internal links should all be 200 OK• Flat site structure

Page 23: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Check HTTP Status Codes

The most important ones:

200 OK: everything is fine, here is your content

404 Not Found: the page you are trying to view doesn’t exist

301 Permanent Redirect: the page you are trying to view has moved permanently, here’s the new URL

302 Temporary Redirect: the page you are trying to view has moved temporarily, here is the new URL

500 Server Error: there’s been a massive fuck up, I can’t serve you this page

Page 24: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Check HTTP Status Codes

Less common:

410 Gone: This page is gone and there is no alternative version. Useful for getting a page out of Google’s index quickly

503 Service Unavailable: The site is temporarily down. Use this when your server is having issues, as it will not impact rankings

Page 25: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Check Soft 404s

When Google detects a Not Found error page but the HTTP status code is 200 OK.

Page 26: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Crawl Waste• Check URL Duplication

http://website.com

http://www.website.com

http://www.website.com/index.php

http://website.com/index.php

http://www.website.com/category

http://www.website.com/category/

http://website.com/category

http://website.com/category/

+ httpS://

Page 27: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Crawl Waste

• Canonicalised Pages

Page 28: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Use Canonicals Wisely• “rel=canonical” is primarily for index issues

It is not a fix for crawl waste

Search engines need to see the canonical tag before they can act on it

Ergo, pages need to be crawled before rel=canonical has any effect

Ditto with meta noindex tags

Page 29: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

DON’T use Canonicals for…

• Faceted navigation

• Pagination & sorting

• Site Search pages

• Avoidable URL duplication

Page 30: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

OK to use Canonicals for…

• Separate mobile URLs

• Session-specific URL parameters

• Content syndication

• Unavoidable content duplication

Page 31: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Crawl Waste

• Slow loading pages

Page 32: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Load Speed Optimisation• Time to First Byte• Lightweight pages• Caching• Compression

Page 33: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

2. Index Optimisation

Page 34: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Index Optimisation

• Ensure Google indexes & ranks the right pages

• Minimise indexing of zero-value pages

• Optimise all technical relevancy factors

Page 35: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Google Search Console

Page 36: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Human-Readable URLs

Bad URL:http://domain.com/default.aspx?p=43351&s=abx&ref=ps-2301-g&…

Good URL:http://domain.com/safety-boots/caterpillar/steel-toe-safety-boots.html

• Don’t overdo it – no keyword stuffing• Use a logical structure that makes sense to humans

Page 37: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Hierarchical URLsHomepage

Category 1 Category 2

Subcategory 2.1

Subcategory 2.3

Subcategory 2.2

Product 2.2 A

Product 2.2 B

Product 2.2 C

Category 3

http://domain.com/

http://domain.com/category/

http://domain.com/category/subcategory/

http://domain.com/category/subcategory/productA.html

http://domain.com/category/subcategory/productB.html

http://domain.com/category/subcategory/productC.html

Page 38: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Always use Canonicals

• Duplicate URLs can originate from various sources…

http://www.website.com/page1.html

http://www.website.com/page1.html?utm_source=buffer&utm_medium=social&utm_campaign=seo

Page 39: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Use Full URLs in Canonicals

<link rel=“canonical” href=“/page1.html”>

<link rel=“canonical” href=“www.website.com/page1.html”>

<link rel=“canonical” href=“https://www.website.com/page1.html”>

Page 40: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Meta Robots Tag<meta name=“robots” content=“…”>

• ‘noindex’: don’t index this page• ‘nofollow’: don’t follow any links on this page• ‘nosnippet’: don’t show a search snippet for this page• ‘noodp’: don’t use the ODP/DMOZ description for this page• ‘noarchive’: don’t show a Cached link for this page• ‘unavailable_after:[date]’: stop crawling and indexing of this page after this date• ‘noimageindex’: don’t use this page as the referring page for an image that

appears in Google search results• ‘none’: same as ‘noindex, nofollow’

Page 41: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Code Bloat

Page 42: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Structured Data

Page 43: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Structured Data

• Schema.org markup

Page 44: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

JSON-LD Markup

• In the <head> sectionSeparate from body codeEasier to implement

Page 45: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Google Search Console

Page 46: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Structured Data Testing Toolhttps://search.google.com/structured-data/testing-tool/

Page 47: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Expired Pages

• Google’s advice: serve 404 Not Found Downside: potential loss of link value

Source: https://www.youtube.com/watch?v=9tz7Eexwp_A

Page 48: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

My Advice

• Keep the page up• Recommend alternative

products

Page 49: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

High-churn Listings Sites

• Pages with a limited lifespan, potentially thousands of new pages every week Online auctions / ‘… for sale’ classified sites / Job listings / etc…

301-redirect old URL to most relevant new URL Minimum 180 days Serve 410 (or 404) on old URL after 180 days

Page 50: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

3. International SEO

Page 51: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

International Domains

• Check if they’re using the right TLD; Generic TLDs: .com, .org, .net, .info, … ccTLDs: .co.uk, .ie, .de, .fr, .it, .nl, …

• Generic domains can be geo-targeted with Google Search Console

• Country-code domains will be assumed to target that countryIt’s almost impossible to get a .ie website to rank in google.co.uk

Page 52: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Google Search Console

Page 53: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Website Structure

• Subdirectories: website.com/gb website.com/it

• Subdomains: gb.website.com it.website.com

Verify separately in Google Search Console and set the geo-target

Page 54: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Country & Language

www.website.com/be-fr/

www.website.com/be-nl/

www.website.com/be-de/

Use official ISO country & language codes where possible

Page 55: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

HTML Language Tag

• Use the ‘lang’ attribute:

• Don’t forget to change when you launch your international version!

Page 56: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

HREFLANG Meta Tags

<link rel="alternate" href="http://example.com/en-ie" hreflang="en-ie" />

<link rel="alternate" href="http://example.com/en-ca" hreflang="en-ca" />

<link rel="alternate" href="http://example.com/en-au" hreflang="en-au" />

<link rel="alternate" href="http://example.com/en" hreflang="en" />

<link rel="alternate" href="http://example.com/" hreflang="x-default" />

More info: https://support.google.com/webmasters/answer/189077

Page 57: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Google Search Console

Page 58: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

IP Redirects

• Google primarily crawls from US-based IP addresses

• If a site uses IP address redirects, make an exception for all ‘Googlebot’ user-agents

Page 59: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

4. MiscellaneousElements

Page 60: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Mobile UX

Page 61: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Mobile UX

Page 62: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Rel=Alternate Meta Tag

Desktop page:<link rel="alternate" media="only screen and (max-width: 640px)" href="http://m.example.com/page1.html">

Mobile page:<link rel="canonical" href="http://www.example.com/page1.html">

Page 63: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Site Security

Page 64: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Site Security

Page 65: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

SSL Certificate Quality

https://www.ssllabs.com/ssltest/

Page 66: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Summarised

Page 67: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Technical SEO Audits Summarised:• Identify Crawl Waste:

XML Sitemaps Sorted & Paginated Listings Duplicate URLs Load Speed

• Check HTTP Status Codes

• Review On-Site Technical SEO: URLs Code Quality Structured Data

• Minimise indexing of zero-value pages

• Check implementation of international SEO: TLDs & IP Redirects Subdomain / Subfolders HREFLANG meta tags

• Check miscellaneous elements: Mobile UX Security SSL

Page 68: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Create Your Report

Page 69: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

Create Your Report

• Make it actionableGive examples

• Explain WHY something needs changedSometimes devs can come up with a more elegant solution

• PrioritiseProvide a recommended timeline of changes

Page 70: How to Perform a Technical SEO Audit - #SAScon

@badams #SAScon

[email protected]@polemicdigital@badams