How to fix JavaScript SEO problems on a scale

Serge Bezborodov
Serge BezborodovCTO of JetOctopus logs analyzer and crawler um JetOctopus
How to fix JavaScript
SEO problems on a
scale
Serge Bezborodov
JetOctopus
slideshare.net/sergebezborodov
@sergebezborodov
JetOctopus Serge Bezborodov
What is the difference between
modern JavaScript websites
and
old-school
JetOctopus Serge Bezborodov
modern JavaScript website
JavaScript Application
old-school
HTML Documents
JetOctopus Serge Bezborodov
Applications have bugs
JetOctopus Serge Bezborodov
BUGS = Google can’t render page properly
JetOctopus Serge Bezborodov
JavaScript SEO is mostly about
pages rendered properly
JetOctopus Serge Bezborodov
JavaScript SEO = QA
JetOctopus Serge Bezborodov
Let’s go with the most usual
JavaScript bugs
JetOctopus Serge Bezborodov
JS Bug #1: Page can’t be fully rendered
-page loads quite a long time
-page can’t be fully rendered (you don’t see a footer)
-page became fully loaded after some interaction (scroll, click)
test cases:
JetOctopus Serge Bezborodov
JS Bug #2: Incomplete content
-page misses some content blocks
-JavaScript removes some content (I’m not joking)
test cases:
JetOctopus Serge Bezborodov
JS Bug #3: JavaScript redirects
window.location.href = “/new-page.html”
redirect without 301/302 server status codes
JavaScript Code:
JetOctopus Serge Bezborodov
JS Bug #4: Different content for User-agents
JetOctopus Serge Bezborodov
JS Bug #5: SSR is broken
-text/HTML ratio closer to 0
JetOctopus Serge Bezborodov
JS Bug #6: SSR misses some content
-SSR should have the same content as the client-rendered
page (with very few exceptions)
-make custom extraction rules for blocks, elements, or text
test cases:
JetOctopus Serge Bezborodov
JS Bug #7: Changed titles, meta by JS
-JavaScript may change page title, meta description
-JavaScript may change <meta name=“robots”>
test cases:
JetOctopus Serge Bezborodov
JS Bug #7: robots.txt - shot in the foot
- robots.txt rules are applied to JavaScript files as well
- subdomains may have their own robots.txt (huge attention here!!!)
- never analyze robots.txt only by eyes, use the tools!
JetOctopus Serge Bezborodov
JS Bug #7: robots.txt - shot in the foot
pages with ?utm_source will not be crawled by Googlebot
JetOctopus Serge Bezborodov
JS Bug #7: robots.txt - shot in the foot
and JavaScript files as well
page may be not rendered fully
JetOctopus Serge Bezborodov
JS Bug #7: robots.txt - shot in the foot
subdomains may have own robots.txt !!!!!!!
JetOctopus Serge Bezborodov
- I checked a bunch of template pages,
everything works fine
The common way of JS QA
JetOctopus Serge Bezborodov
- nope, check more
JetOctopus Serge Bezborodov
check more = crawl more
not hundreds of pages but tens of thousands
JetOctopus Serge Bezborodov
JavaScript Errors setup in Screaming Frog
JetOctopus Serge Bezborodov
in JetOctopus enabled by default
JetOctopus Serge Bezborodov
Bonus part
JetOctopus Serge Bezborodov
How JS can harm log file analysis
JetOctopus Serge Bezborodov
It’s not a page crawled by GBot but JS requests
JetOctopus Serge Bezborodov
Make sure, you exclude JS requests
from your log file analysis
JetOctopus Serge Bezborodov
Crawl budget is the amount of crawled
pages,
not JS requests made during pages
rendering
JetOctopus Serge Bezborodov
Conclusions
-JavaScript is already with us and won’t go shortly
-JavaScript SEO is all about troubleshooting
-you can do almost nothing by yourself
-make strong communication with the developers' team
-without tools, it’s impossible to do it on a scale
JetOctopus Serge Bezborodov
Thank you
@sergebezborodov
Extended JavaScript Crawler JetOctopus.com
7 days free trial
1 von 31

Recomendados

How to control googlebot von
How to control googlebotHow to control googlebot
How to control googlebotSerge Bezborodov
502 views29 Folien
Interlinking structure for big websites von
 Interlinking structure for big websites Interlinking structure for big websites
Interlinking structure for big websitesSerge Bezborodov
132 views59 Folien
Understand the impact of Javascript on SEO von
Understand the impact of Javascript on SEOUnderstand the impact of Javascript on SEO
Understand the impact of Javascript on SEOBotify
1K views43 Folien
Js unit testing von
Js unit testingJs unit testing
Js unit testingMihail Irintchev
662 views33 Folien
SearchLove Boston 2013_Will Critchlow_Technical SEO von
SearchLove Boston 2013_Will Critchlow_Technical SEOSearchLove Boston 2013_Will Critchlow_Technical SEO
SearchLove Boston 2013_Will Critchlow_Technical SEODistilled
55.9K views105 Folien
Shifting Gears von
Shifting GearsShifting Gears
Shifting GearsChristian Heilmann
6.7K views130 Folien

Más contenido relacionado

Similar a How to fix JavaScript SEO problems on a scale

jQuery Conference 2012 keynote von
jQuery Conference 2012 keynotejQuery Conference 2012 keynote
jQuery Conference 2012 keynotedmethvin
20.4K views29 Folien
Troubleshooting SEO for JS Frameworks - Patrick Stox - DTD 2018 von
Troubleshooting SEO for JS Frameworks - Patrick Stox - DTD 2018Troubleshooting SEO for JS Frameworks - Patrick Stox - DTD 2018
Troubleshooting SEO for JS Frameworks - Patrick Stox - DTD 2018patrickstox
16.6K views31 Folien
JavaScript Libraries (@Media) von
JavaScript Libraries (@Media)JavaScript Libraries (@Media)
JavaScript Libraries (@Media)jeresig
2.6K views89 Folien
JavaScript Libraries (Kings of Code) von
JavaScript Libraries (Kings of Code)JavaScript Libraries (Kings of Code)
JavaScript Libraries (Kings of Code)jeresig
2.2K views83 Folien
BlackBerry 10 Browser von
BlackBerry 10 BrowserBlackBerry 10 Browser
BlackBerry 10 BrowserErik Johnson
173 views29 Folien
JavaScript Library Overview von
JavaScript Library OverviewJavaScript Library Overview
JavaScript Library Overviewjeresig
32.3K views94 Folien

Similar a How to fix JavaScript SEO problems on a scale(20)

jQuery Conference 2012 keynote von dmethvin
jQuery Conference 2012 keynotejQuery Conference 2012 keynote
jQuery Conference 2012 keynote
dmethvin20.4K views
Troubleshooting SEO for JS Frameworks - Patrick Stox - DTD 2018 von patrickstox
Troubleshooting SEO for JS Frameworks - Patrick Stox - DTD 2018Troubleshooting SEO for JS Frameworks - Patrick Stox - DTD 2018
Troubleshooting SEO for JS Frameworks - Patrick Stox - DTD 2018
patrickstox16.6K views
JavaScript Libraries (@Media) von jeresig
JavaScript Libraries (@Media)JavaScript Libraries (@Media)
JavaScript Libraries (@Media)
jeresig2.6K views
JavaScript Libraries (Kings of Code) von jeresig
JavaScript Libraries (Kings of Code)JavaScript Libraries (Kings of Code)
JavaScript Libraries (Kings of Code)
jeresig2.2K views
JavaScript Library Overview von jeresig
JavaScript Library OverviewJavaScript Library Overview
JavaScript Library Overview
jeresig32.3K views
Debugging secrets of the pros, for everyone von Jen Weber
Debugging secrets of the pros, for everyoneDebugging secrets of the pros, for everyone
Debugging secrets of the pros, for everyone
Jen Weber80 views
JavaScript Library Overview von jeresig
JavaScript Library OverviewJavaScript Library Overview
JavaScript Library Overview
jeresig30.7K views
LeapMotion for Web with React and Flux von Laura Moore
LeapMotion for Web with React and FluxLeapMotion for Web with React and Flux
LeapMotion for Web with React and Flux
Laura Moore819 views
SearchLove Boston 2017 | Dom Woodman | How to Get Insight From Your Logs von Distilled
SearchLove Boston 2017 | Dom Woodman | How to Get Insight From Your LogsSearchLove Boston 2017 | Dom Woodman | How to Get Insight From Your Logs
SearchLove Boston 2017 | Dom Woodman | How to Get Insight From Your Logs
Distilled791 views
Stefan Judis "Did we(b development) lose the right direction?" von Fwdays
Stefan Judis "Did we(b development) lose the right direction?"Stefan Judis "Did we(b development) lose the right direction?"
Stefan Judis "Did we(b development) lose the right direction?"
Fwdays200 views
Cool like a Frontend Developer: Grunt, RequireJS, Bower and other Tools von Ryan Weaver
Cool like a Frontend Developer: Grunt, RequireJS, Bower and other ToolsCool like a Frontend Developer: Grunt, RequireJS, Bower and other Tools
Cool like a Frontend Developer: Grunt, RequireJS, Bower and other Tools
Ryan Weaver54.9K views
Deep crawl the chaotic landscape of JavaScript von Onely
Deep crawl the chaotic landscape of JavaScript Deep crawl the chaotic landscape of JavaScript
Deep crawl the chaotic landscape of JavaScript
Onely11.7K views
Print a web page using java script von zulhamsyamhari
Print a web page using java scriptPrint a web page using java script
Print a web page using java script
zulhamsyamhari1.7K views
SearchLove London 2016 | Dom Woodman | How to Get Insight From Your Logs von Distilled
SearchLove London 2016 | Dom Woodman | How to Get Insight From Your LogsSearchLove London 2016 | Dom Woodman | How to Get Insight From Your Logs
SearchLove London 2016 | Dom Woodman | How to Get Insight From Your Logs
Distilled4.9K views
A Guide to Log Analysis with Big Query von Dominic Woodman
A Guide to Log Analysis with Big QueryA Guide to Log Analysis with Big Query
A Guide to Log Analysis with Big Query
Dominic Woodman1.7K views

Último

Page Object Model von
Page Object ModelPage Object Model
Page Object Modelartembondar5
6 views5 Folien
Ports-and-Adapters Architecture for Embedded HMI von
Ports-and-Adapters Architecture for Embedded HMIPorts-and-Adapters Architecture for Embedded HMI
Ports-and-Adapters Architecture for Embedded HMIBurkhard Stubert
26 views19 Folien
Introduction to Maven von
Introduction to MavenIntroduction to Maven
Introduction to MavenJohn Valentino
6 views10 Folien
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... von
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...Marc Müller
41 views62 Folien
Sprint 226 von
Sprint 226Sprint 226
Sprint 226ManageIQ
10 views18 Folien
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P... von
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...NimaTorabi2
15 views17 Folien

Último(20)

Ports-and-Adapters Architecture for Embedded HMI von Burkhard Stubert
Ports-and-Adapters Architecture for Embedded HMIPorts-and-Adapters Architecture for Embedded HMI
Ports-and-Adapters Architecture for Embedded HMI
Burkhard Stubert26 views
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... von Marc Müller
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
Marc Müller41 views
Sprint 226 von ManageIQ
Sprint 226Sprint 226
Sprint 226
ManageIQ10 views
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P... von NimaTorabi2
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...
NimaTorabi215 views
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with... von sparkfabrik
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...
sparkfabrik8 views
Bootstrapping vs Venture Capital.pptx von Zeljko Svedic
Bootstrapping vs Venture Capital.pptxBootstrapping vs Venture Capital.pptx
Bootstrapping vs Venture Capital.pptx
Zeljko Svedic14 views
360 graden fabriek von info33492
360 graden fabriek360 graden fabriek
360 graden fabriek
info33492143 views
Fleet Management Software in India von Fleetable
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India
Fleetable12 views
How Workforce Management Software Empowers SMEs | TraQSuite von TraQSuite
How Workforce Management Software Empowers SMEs | TraQSuiteHow Workforce Management Software Empowers SMEs | TraQSuite
How Workforce Management Software Empowers SMEs | TraQSuite
TraQSuite5 views
Understanding HTML terminology von artembondar5
Understanding HTML terminologyUnderstanding HTML terminology
Understanding HTML terminology
artembondar56 views
AI and Ml presentation .pptx von FayazAli87
AI and Ml presentation .pptxAI and Ml presentation .pptx
AI and Ml presentation .pptx
FayazAli8713 views
FIMA 2023 Neo4j & FS - Entity Resolution.pptx von Neo4j
FIMA 2023 Neo4j & FS - Entity Resolution.pptxFIMA 2023 Neo4j & FS - Entity Resolution.pptx
FIMA 2023 Neo4j & FS - Entity Resolution.pptx
Neo4j17 views
Generic or specific? Making sensible software design decisions von Bert Jan Schrijver
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
predicting-m3-devopsconMunich-2023.pptx von Tier1 app
predicting-m3-devopsconMunich-2023.pptxpredicting-m3-devopsconMunich-2023.pptx
predicting-m3-devopsconMunich-2023.pptx
Tier1 app7 views

How to fix JavaScript SEO problems on a scale