Maximising Ecommerce SEO - #SMConnect
-
Upload
barry-adams -
Category
Internet
-
view
2.410 -
download
0
Transcript of Maximising Ecommerce SEO - #SMConnect
POLEMIC
D I G I T A L@badams
Maximising Ecommerce SEOwith Advanced
Tips & Tricks
21 November 2015
#SMConnect
POLEMIC
D I G I T A L@badams
Barry Adams
POLEMIC
D I G I T A L@badams
Agenda
1. Technical SEO Crawl Optimisation
Faceted Navigation
2. Content & Relevance Site & page architecture
Structured Data
3. Links & Authority Link targeting
Tactics
4. International SEOT
ech
no
log
y
Rel
eva
nce
Au
tho
rity
The Three Pillars of SEO
POLEMIC
D I G I T A L@badams
1. Technical SEO
POLEMIC
D I G I T A L@badams
Crawl Optimisation
• Minimising wasted crawl budget
Crawl Budget = the maximum amount of time a search engine spider will spend crawling your website before it gives up.
POLEMIC
D I G I T A L@badams
Crawl Control vs Index Control
• Crawl Control;
Maximising crawl budget
Main tools:- robots.txt Disallow
- <a href=“…” rel=“nofollow”>
• Index control;
Ensuring the right pages are in Google’s index
Main tools:- <meta name=“robots” content=“noindex”>
- <link rel=“canonical” href=“…”>
- robots.txt Noindex
POLEMIC
D I G I T A L@badams
Crawl Sources
• Site Crawl
• XML Sitemaps
• Inbound Links
• DNS Records
• Domain Registrations
• Browsing Data
POLEMIC
D I G I T A L@badams
Identifying Crawl Waste
DeepCrawl report
POLEMIC
D I G I T A L@badams
Crawl your XML Sitemap
• Use Screaming Frog to crawl your sitemap
POLEMIC
D I G I T A L@badams
Optimise your XML sitemap
• Ensure your sitemap contains final URLs only
• Minimise non-200 status codes
POLEMIC
D I G I T A L@badams
Use Multiple Sitemaps
• Google says max 50.000 URLs
Nick Eubanks case study shows 35.000 is optimal
Source: http://seoauv.com/increase-traffic/
POLEMIC
D I G I T A L@badams
Mismatched Canonicals
• All URLs in XML sitemap should be final canonical URLs only
POLEMIC
D I G I T A L@badams
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
POLEMIC
D I G I T A L@badams
Minimise Internal Redirects
• Find redirects with Screaming Frog or DeepCrawl
• Internal links should all be 200 OK
• Flat site structure
POLEMIC
D I G I T A L@badams
Pagination
• Potential for massive crawl waste
Especially when combined with sorting
POLEMIC
D I G I T A L@badams
Optimise Paginated Lists
• Show more products per page
• Use pagination meta tags;<link rel="prev" href="http://www.domain.it/category/?page=2" />
<link rel="next" href="http://www.domain.it/category/?page=4" />
<link rel="canonical" href="http://www.domain.it/category/?page=all" />
Googlebot will deprioritise deeper paginated pages
• Block sorting parameters in robots.txt;User-agent: Googlebot
Disallow: /*?order=*
Noindex: /*?order=*
POLEMIC
D I G I T A L@badams
GSC Robots.txt Tester
POLEMIC
D I G I T A L@badams
Alternative: X-Robots-Tag
• Special HTTP status code intended for crawlers
• Implemented in Apache .htaccess file:
<FilesMatch ".pdf$">
Header set X-Robots-Tag "noindex, nofollow"
</FilesMatch>
More info: https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag
POLEMIC
D I G I T A L@badams
Faceted Navigation
• Risk of crawl waste & index inflation
POLEMIC
D I G I T A L@badams
Dealing with Faceted Navigation
1. Block facet URL parameters in robots.txt
User-agent: Googlebot
Disallow: /*attribute=*
Noindex: /*attribute=*
2. Tag facet links with “rel=nofollow”
POLEMIC
D I G I T A L@badams
JavaScript & Faceted Navigation
• ‘Hiding’ facets in JavaScript does not work
Google will execute JS and can follow embedded links
Don’t block JavaScript & CSS in robots.txt!
• JavaScript can add load time
Fast load speed is crucial
POLEMIC
D I G I T A L@badams
Pre-rendering JavaScript / AJAX
Source: http://www.slideshare.net/phaithful/seo-and-js-new-challenges
POLEMIC
D I G I T A L@badams
JSCrawlability.com
POLEMIC
D I G I T A L@badams
Optimise Load Speed
• Crawl budget = time
• Fast website = more pages crawled in same amount of time
POLEMIC
D I G I T A L@badams
WebPageTest.org
• Time to First Byte
• Lightweight pages
• Caching
• Compression
POLEMIC
D I G I T A L@badams
2. Content & Relevance
POLEMIC
D I G I T A L@badams
Content Structure
Title Tag
Meta Description
<h1> headline
Body content(with <h2> - <h6> subheaders)
Image alt attribute
Calls to action
Links to other pages on the site
Source: http://bada.ms/perfectonpageseo
POLEMIC
D I G I T A L@badams
Product Snapshot
Customer Reviews
In-depth Description
POLEMIC
D I G I T A L@badams
Unique, well-written content
• Never use standard manufacturer product descriptions
POLEMIC
D I G I T A L@badams
Image Optimisation
• Filename;photo001.jpg
brown-mens-shoes.jpg
• Alt attribute;<img src=“/brown-mens-shoes.jpg” alt=“Brown Irish
Brogue Men’s Shoes” />
• Caption text;
Barker’s Irish Brogue Men’s Shoe
POLEMIC
D I G I T A L@badams
Hierarchical Site Architecture
Homepage
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
POLEMIC
D I G I T A L@badams
Information Architecture
POLEMIC
D I G I T A L@badams
Hierarchical URLs
Homepage
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.it/
http://domain.it/category/
http://domain.it/category/subcategory/
http://domain.it/category/subcategory/productA.html
http://domain.it/category/subcategory/productB.html
http://domain.it/category/subcategory/productC.html
POLEMIC
D I G I T A L@badams
Make URLs Human-Readable
Apache .htaccess URL rewrites;
RewriteEngine on
RewriteRule /(.*)/(.*)/$ page.php?category=$1&product=$2
[NC,L]
This rewrites parameter URLs:
http://www.domain.it/page.php?category=safety-
boots&brand=caterpillar
To human-readable URLs:
http://www.domain.it/safety-boots/caterpillar/
POLEMIC
D I G I T A L@badams
Products in more than 1 category
Duplicate content issue:
http://domain.it/safety-boots/caterpillar/cat-holton.html
http://domain.it/casual-boots/caterpillar/cat-holton.html
Revert to root URLs for all products:
http://domain.it/caterpillar-holton-boots.html
POLEMIC
D I G I T A L@badams
Structured Data
• Schema.org Product markup
POLEMIC
D I G I T A L@badams
JSON-LD Markup
• In the <head> section
Separate from body code
Easier to implement
POLEMIC
D I G I T A L@badams
Google Tag Manager JSON-LD
• Use GTM data layer macros to inject JSON-LD schema.org code in your product pages
Source: http://www.swellpath.com/2015/03/7-steps-to-pushing-json-structured-data-using-google-tag-manager/
POLEMIC
D I G I T A L@badams
Structured Data Testing Tool
https://developers.google.com/structured-data/testing-tool/
POLEMIC
D I G I T A L@badams
Expired Product Pages
• Google’s advice: serve 404 Not Found
Downside: loss of link value
Source: https://www.youtube.com/watch?v=9tz7Eexwp_A
POLEMIC
D I G I T A L@badams
My Advice
• Keep the page up
POLEMIC
D I G I T A L@badams
High-churn Ecommerce
• Products with a limited lifespan, potentially thousands of new pages every week
Online auctions / ‘… for sale’ classified sites / etc
301-redirect old URL to most relevant new URL
Minimum 180 days
Serve 410 (or 404) on old URL after 180 days
POLEMIC
D I G I T A L@badams
3. Links & Authority
POLEMIC
D I G I T A L@badams
Homepage Links vs Deep Links
• Homepage earns the most links• Category pages rarely get links• Product pages sometimes get links
• Linked pages serve as spider entries• Linked pages rank higher (duh)• Link value needs to be spread out
Images source: http://bada.ms/mozcrawldiagrams
POLEMIC
D I G I T A L@badams
Spreading link value
• Internal linking is key;
Link from your key pages to deeper categories & products
Use optimised anchor texts
POLEMIC
D I G I T A L@badams
Top Linked Pages (Majestic)
POLEMIC
D I G I T A L@badams
Linkbuilding for Ecommerce
1. Awesome / limited edition products
POLEMIC
D I G I T A L@badams
POLEMIC
D I G I T A L@badams
Linkbuilding for Ecommerce
2. Blogger reviews & giveaways
POLEMIC
D I G I T A L@badams
Linkbuilding for Ecommerce
2. Blogger reviews & giveaways
Ensure the blog is relevant & authoritive
POLEMIC
D I G I T A L@badams
Linkbuilding for Ecommerce
3. Competitive Linkbuilding
Monitor your competition’s new links
POLEMIC
D I G I T A L@badams
POLEMIC
D I G I T A L@badams
Linkbuilding for Ecommerce
3. Competitive Linkbuilding
Find linked 404 pages on your competitors’ sites
POLEMIC
D I G I T A L@badams
Linkbuilding for SEO
4. Outsourced link placements
POLEMIC
D I G I T A L@badams
Linkbuilding for SEO
4. Outsourced link placements
Double-check the work
Site quality & relevance are key
POLEMIC
D I G I T A L@badams
Anchor Text Distribution
• Exact Match anchor text is still important;
“…click here to buy safety boots online.”
• Don’t over-optimise;
Penalty-risk is real
• My advice: 80/20;
80% branded links, 20% keyword links
POLEMIC
D I G I T A L@badams
Pro-active Link Monitoring & Cleanup
POLEMIC
D I G I T A L@badams
4. International SEO
POLEMIC
D I G I T A L@badams
International Domains
• Pick the right domain 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 .it website to rank in
google.co.uk
POLEMIC
D I G I T A L@badams
Google Search Console
POLEMIC
D I G I T A L@badams
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
POLEMIC
D I G I T A L@badams
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
POLEMIC
D I G I T A L@badams
HTML Language Tag
• Use the ‘lang’ attribute:
• Don’t forget to change when you launch your international version!
POLEMIC
D I G I T A L@badams
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
POLEMIC
D I G I T A L@badams
Google Search Console
POLEMIC
D I G I T A L@badams
Content
• Don’t just translate – localise!
• Belgian Dutch is not the same as Dutch Dutch
Ditto with Portugal vs Brazil
And Austria vs Germany
And Switzerland vs France / Germany / Italy
Etc…
• Don’t be half-arsed – localise everything
POLEMIC
D I G I T A L@badams
Summary
POLEMIC
D I G I T A L@badams
SEO for Ecommerce
• Optimise your website’s crawl spaceBlock irrelevant pages
Use “rel=canonical” wisely
• Optimise your contentUnique product
descriptions
Schema.org Product markup
• Acquire linksCreate something link-
worthy
Homepage & deep links
Variable anchor texts
• International SEOGo big or go home
Use the right strategy from the start
POLEMIC
D I G I T A L@badams
Thank [email protected]
www.polemicdigital.com
twitter.com/polemicdigital
twitter.com/badams
#SMConnect