SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.
SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.
Successfully reported this slideshow.
Activate your 14 day free trial to unlock unlimited reading.
Can Google properly crawl and index JavaScript? SEO Experiments - Results and findings
Can Google properly crawl and index JavaScript? SEO Experiments - Results and findings
1.
Bartosz Góralewicz
ELEPHATE
Can Google properly crawl and index JavaScript?
SEO Experiments - Results and findings
@bart_goralewicz
https://www.linkedin.com/in/goralewicz/
16.
Reverse
engineering
algorithms is
no longer an
option.
Times have changed. Today, as
long as you're not blocking
Googlebot from crawling your
JavaScript or CSS files, we are
generally able to render and
understand your web pages like
modern browsers. To reflect this
improvement, we recently updated
our technical Webmaster
Guidelines to recommend against
disallowing Googlebot from
crawling your site's CSS or JS files.
ele.ph/ajax
40.
Checklist
Check if ”framework/test/” URL was crawled
Search for unique content from framework’s page
Is URL indexed by Google?
Fetch and render test (GSC)
49.
Inline vs. External JS makes a huge difference
Not all JavaScript frameworks are crawled
and indexed in the same way
Mindblowing findings
JS generated links aren’t always crawled
50.
ele.ph/angularU
Also…
Regardless of what your
developers say, Angular JS 2
always has to be server
rendered…
according to
Angular JS 2 community.
51.
If you search for any competitive
keyword terms, it’s always going
to be server rendered sites. And
the reason is because although
Google does index client-side
rendered HTML, it’s not perfect
yet and other search engines
don’t do it as well. So if you care
about SEO, you still need to have
server-rendered content.
Jeff Whelpley
Angular U conference, June 22-25, 2015, Hyatt Regency, San Francisco Airport
“Angular 2 Server Rendering”
ele.ph/angularU
59.
http://jsseo.expert/plain-external/test/
http://jsseo.expert/react-external/test/
http://jsseo.expert/jquery-external/test/
we found this URL from a link ca 3 weeks ago, but we haven't crawled it
we picked this one up ~19 days ago, and similar to above,
our systems just didn't feel like crawling it yet
picked up ~21 days ago, also not crawled yet.
60.
Thanks,
John!
You’re the
best,
Bartosz!*
*he didn’t say that
John Mueller’s feedback got me thinking…
61.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit
amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et netus et malesuada
fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce
posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus.
Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros
quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin
pharetra nonummy pede. Mauris et orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar
ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi
tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra
imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy
pede. Mauris et orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus
malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et
netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor
congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce
est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Lorem
ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet
commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac
turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere,
magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus.
Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros
quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin
pharetra nonummy pede. Mauris et orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar
ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi
tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra
imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy
pede. Mauris et orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus
malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et
netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor
congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce
JavaScript vs. crawler budget
Some JavaScript frameworks are indexable,
but there is a fine print…
82.
To execute JS for every page at
our scale [would] require
10,000-15,000 servers, and
we believe our customers are
not ready to pay for that yet”
Dmitry Gerasimenko, CEO of
Ahrefs
~ July 2017
88.
ele.ph/js-ahrefs
So earlier this
year Dmitry (our
Founder & CEO) decided that
Ahrefs has to be the first
among its rivals to crawl
JavaScript links.
Which we achieved with
ease last month.
91.
787622915746127654196745167546245246157964127432546
12794214512161504918805916076096067461350967619097
645684795464436557433443675698347856654756434587
6554364655437876954878796865645654456453212543321
5645466556762615655244675988799980879876424223314
003132425654342698754736755645654465474587698374
7876229 4322546
12794214512161504918805916076096067461350967619097
645684795464436557433443675698347856654756434587
6554364655437876954878796865645654456453212543321
5645466556762615655244675988799980879876424223314
003132425654342698754736755645654465474587698374
787622915746127654196745167546245246157964127432546
So how many JS links are out there?
95.
The setup for that is called
Isomorphic JavaScript on
React & Universal on
Angular. That's what I'd
recommend doing in general,
if you can.
Isomorphic JavaScript
ele.ph/Iso-John
101.
JS
Only Google and Ask
can handle JavaScript
Key takeways
102.
JS
Only Google and Ask
can handle JavaScript
Not all JavaScript
frameworks are indexable
Key takeways
103.
Not all JavaScript
frameworks are indexable
Indexing JavaScript
is only half the battle
Key takeways
104.
Indexing JavaScript
is only half the battle
JavaScript even when
rendered and indexed,
can kill crawler budget
Key takeways
105.
JavaScript even when
rendered and indexed,
can kill crawler budget
Use Chrome 41
to debug JS
Key takeways
106.
Use Chrome 41
to debug JS
If too late,
use prerendering
Key takeways
107.
If too late,
use prerendering
Key takeways
Isomorphic JS
=
perfect scenario
108.
Not all JavaScript
frameworks are indexable
Indexing JavaScript
is only half the battle
JavaScript even when
rendered and indexed,
can kill crawler budget
Use Chrome 41
to debug JS
JS
Only Google and Ask
can handle JavaScript
If too late,
use prerendering
Key takeways
Isomorphic JS
=
perfect scenario