Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Javascript Indexing
and SEO:
The Naked Truth
@bart_goralewicz
Bartosz Góralewicz
linkedin.com/in/goralewicz
Why is JavaScript SEO such a complex topic?
DATANO
Why is JavaScript SEO such a complex topic?
DATANO
Making JavaScript SEO easy
JS SEO
JS SEO
What is the problem with JavaScript?
HTML
JS
What is the problem with JavaScript?
HTML
JS
What is the problem with JavaScript?
HTML
HTML
What is the problem with JavaScript?
HTML
HTML
JavaScript
and JavaScript
JavaScript & SEO
50 shades of JavaScript
*more about it later
not as “forgiving” as HTML*
It has all with…
Reverse
engineering
algorithms is
no longer an
option.
Times have changed. Today, as
long as you're not blocking
Googlebot...
ele.ph/scotch
ele.ph/scotch
Can this backfire?
Hulu.com
JavaScript & SEO backfire
-37%
ele.ph/hulu
Hulu case study
Google and JavaScript – difficult relationship
Google and JavaScript – difficult relationship
The only solution…
Java Script Experiment
Kamil
Grymuza
http://jsseo.expert
Content!
OK.
ele.ph/AI
Inspect Element
vs.
View Source
Inspect element
Inspect element
View source
First JavaScript rendering issues
Timeout, GSC bug or real ?
/test/
JavaScript links were
not parsed by Googlebot
Google
kept us
waiting…
Fail?
Re-fetched all URLs via GSC
/html/test/ (duh!)
/plain-inline/test/
/jquery-inline/test/
/jquery-ajax/test/
/vue/test/
/react-inline/test/
And… that’s ...
Let’s start with JS frameworks created by
Version 1
Checklist
Check if ”framework/test/” URL was crawled
Search for unique content from framework’s page
Is URL indexed by Goo...
Fetch and render test (GSC)
Is URL indexed by Google?
Search for unique content from framework’s page
Check if ”framework/test/” URL was crawled
V2 Inline
GSC
fetch
URL
Indexed?
Content
Indexed?
Test
URL
Inline Inline
GSC
fetch
URL
Indexed?
Content
Indexed?
Test
URL
External Ajax callInline
GSC
fetch
URL
Indexed?
Content
Indexed?
Test
URL
Inline External
GSC
fetch
URL
Indexed?
Content
Indexed?
Test
URL
Inline External
Inline vs. External JS makes a huge difference
Not all JavaScript frameworks are crawled
and indexed in the same way
Mindb...
ele.ph/angularU
Also…
Regardless of what your
developers say, Angular JS 2
always has to be server
rendered…
according to
...
If you search for any competitive
keyword terms, it’s always going
to be server rendered sites. And
the reason is because ...
?How about Search Engines other than
63,4%
22,8%
11,7%
1,3% 0,8%
Google Bing Yahoo! Ask AOL
Search Engine market share
Source: https://www.statista.com/statist...
83,5%
11,1%
3,8% 0,8% 0,6%
Google Bing Yahoo! MSN DuckDuckGo
Search Engine market share
Source: https://www.statista.com/s...
ele.ph/beyondgoogle
ele.ph/jsforum
Tell me
why I
can’t…
Clear your
mind of
questions
*not the actual conversation
GSC
fetch
URL
Indexed?
Content
Indexed?
Test
URL
External Ajax callInline
http://jsseo.expert/plain-external/test/
http://jsseo.expert/react-external/test/
http://jsseo.expert/jquery-external/test...
Thanks,
John!
You’re the
best,
Bartosz!*
*he didn’t say that
John Mueller’s feedback got me thinking…
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvin...
JavaScript
BUT…
HTML
Do you already know where I am going with this?
Kamil
Grymuza
Crawler budget experiment (early beta)
We repeated this experiment a few times and
the results were always the same.
JavaScript,
even when indexable,
can kill your crawler budget…
JS is less
effective than
HTML
JavaScript is not
bad for SEO, if
done right*
*he said exactly that
Ilya Grigorik
“I think if you actually look at
why, and fix the underlying
JavaScript errors... you won't see
any practical difference. ...
Debugging JavaScript – Ilya’s style
“It's throwing JS errors on ES6
syntax, which is not supported
in M41. You can use the debug
snippet we provided in the bl...
How to make ANY* JS indexable?
*I’m not 100% sure about it, but it sounds cool. Right?
JS is less
effective than
HTML
JavaScript is not
bad for SEO, if
done right*
*he said exactly that
Ilya Grigorik
After tal...
and a lot of
investigation
We’ve managed to get
Angular 2 indexed by Google
How?
There was an error in
Angular 2’s source code
in official repository
team fucked up
Search
Angular
’s
April 26th: error was fixed
ele.ph/ang-fix
For other frameworks
Polyfills
Transpilers
What are
Transpilers
ele.ph/transpiler
What are
ele.ph/polyfill
Polyfills
(n) 1. A shim that mimics a future API,
providing fallback functionality to older
browe...
So…
Every JS framework is indexable…
HTML is very
forgiving,
JS less so.
Ilya Grigorik
But
Is there a perfect JavaScript SEO scenario?
YES
The setup for that is called
Isomorphic JavaScript on
React & Universal on
Angular. That's what I'd
recommend doing in gen...
ele.ph/iso
What if it’s too late?
Prerender.io
user
server
middleware
Prerendering
crawlers
JS
HTML
JS
?
?
Understanding technology behind
ele.ph/ilya
ele.ph/chrome41
ele.ph/chrome41
Download Chrome 41 here:
Using Chrome 41
for debugging JS indexing
http://jsseo.expert/angular2/
in Chrome 41
http://jsseo.expert/angular2/
in up-to-date Chrome
Chrome 41
1. Open:
JSSEO.EXPERT
2. Open:
/
3. Open:
Chrome Developer Tools
cmd ctrl shift+ + i
4. Show this sh*t to your developers
Polymer
No ES5 to ES6 compilation
Wrong application build
Polymer-cli related issues (whatever that means)
anyways… it wor...
Polymer
No ES5 to ES6 compilation
Wrong application build
Polymer-cli related issues (whatever that means)
anyways… it wor...
Experiments continue…
JS
Only Google and Ask
can handle JavaScript
Key takeways
JS
Only Google and Ask
can handle JavaScript
All JavaScript
frameworks are indexable
Key takeways
All JavaScript
frameworks are indexable
Indexing JavaScript
is only half the battle
Key takeways
Indexing JavaScript
is only half the battle
JavaScript even when
rendered and indexed,
can kill crawler budget
Key takeways
JavaScript even when
rendered and indexed,
can kill crawler budget
Use Chrome 41
to debug JS
Key takeways
Use Chrome 41
to debug JS
If too late,
use prerendering
Key takeways
If too late,
use prerendering
Key takeways
Isomorphic JS
=
perfect scenario
All JavaScript
frameworks are indexable
Indexing JavaScript
is only half the battle
JavaScript even when
rendered and inde...
@bart_goralewicz
/in/goralewicz/
Thanks! :*
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Javascript Indexing and SEO: The Naked Truth - State of Search 2017
Próxima SlideShare
Cargando en…5
×

Javascript Indexing and SEO: The Naked Truth - State of Search 2017

2.758 visualizaciones

Publicado el

Results of my JavaScript SEO experiments and our latest research of how to make any JS framework indexable!

Publicado en: Tecnología

Javascript Indexing and SEO: The Naked Truth - State of Search 2017

  1. 1. Javascript Indexing and SEO: The Naked Truth @bart_goralewicz Bartosz Góralewicz linkedin.com/in/goralewicz
  2. 2. Why is JavaScript SEO such a complex topic?
  3. 3. DATANO Why is JavaScript SEO such a complex topic?
  4. 4. DATANO Making JavaScript SEO easy
  5. 5. JS SEO
  6. 6. JS SEO
  7. 7. What is the problem with JavaScript? HTML JS
  8. 8. What is the problem with JavaScript? HTML JS
  9. 9. What is the problem with JavaScript? HTML HTML
  10. 10. What is the problem with JavaScript? HTML HTML
  11. 11. JavaScript
  12. 12. and JavaScript
  13. 13. JavaScript & SEO
  14. 14. 50 shades of JavaScript
  15. 15. *more about it later not as “forgiving” as HTML*
  16. 16. It has all with…
  17. 17. 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
  18. 18. ele.ph/scotch
  19. 19. ele.ph/scotch
  20. 20. Can this backfire?
  21. 21. Hulu.com JavaScript & SEO backfire
  22. 22. -37%
  23. 23. ele.ph/hulu Hulu case study
  24. 24. Google and JavaScript – difficult relationship
  25. 25. Google and JavaScript – difficult relationship
  26. 26. The only solution… Java Script Experiment
  27. 27. Kamil Grymuza
  28. 28. http://jsseo.expert
  29. 29. Content! OK.
  30. 30. ele.ph/AI
  31. 31. Inspect Element vs. View Source
  32. 32. Inspect element
  33. 33. Inspect element
  34. 34. View source
  35. 35. First JavaScript rendering issues
  36. 36. Timeout, GSC bug or real ?
  37. 37. /test/
  38. 38. JavaScript links were not parsed by Googlebot Google kept us waiting…
  39. 39. Fail?
  40. 40. Re-fetched all URLs via GSC
  41. 41. /html/test/ (duh!) /plain-inline/test/ /jquery-inline/test/ /jquery-ajax/test/ /vue/test/ /react-inline/test/ And… that’s it! /test/
  42. 42. Let’s start with JS frameworks created by
  43. 43. Version 1
  44. 44. 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)
  45. 45. Fetch and render test (GSC)
  46. 46. Is URL indexed by Google?
  47. 47. Search for unique content from framework’s page
  48. 48. Check if ”framework/test/” URL was crawled
  49. 49. V2 Inline GSC fetch URL Indexed? Content Indexed? Test URL Inline Inline
  50. 50. GSC fetch URL Indexed? Content Indexed? Test URL External Ajax callInline
  51. 51. GSC fetch URL Indexed? Content Indexed? Test URL Inline External
  52. 52. GSC fetch URL Indexed? Content Indexed? Test URL Inline External
  53. 53. 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
  54. 54. 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.
  55. 55. 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
  56. 56. ?How about Search Engines other than
  57. 57. 63,4% 22,8% 11,7% 1,3% 0,8% Google Bing Yahoo! Ask AOL Search Engine market share Source: https://www.statista.com/statistics/267161/market-share-of-search-engines-in-the-united-states/
  58. 58. 83,5% 11,1% 3,8% 0,8% 0,6% Google Bing Yahoo! MSN DuckDuckGo Search Engine market share Source: https://www.statista.com/statistics/280269/market-share-held-by-search-engines-in-the-united-kingdom/
  59. 59. ele.ph/beyondgoogle
  60. 60. ele.ph/jsforum
  61. 61. Tell me why I can’t… Clear your mind of questions *not the actual conversation
  62. 62. GSC fetch URL Indexed? Content Indexed? Test URL External Ajax callInline
  63. 63. 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.
  64. 64. Thanks, John! You’re the best, Bartosz!* *he didn’t say that John Mueller’s feedback got me thinking…
  65. 65. 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…
  66. 66. JavaScript
  67. 67. BUT… HTML
  68. 68. Do you already know where I am going with this?
  69. 69. Kamil Grymuza
  70. 70. Crawler budget experiment (early beta)
  71. 71. We repeated this experiment a few times and the results were always the same.
  72. 72. JavaScript, even when indexable, can kill your crawler budget…
  73. 73. JS is less effective than HTML JavaScript is not bad for SEO, if done right* *he said exactly that Ilya Grigorik
  74. 74. “I think if you actually look at why, and fix the underlying JavaScript errors... you won't see any practical difference. HTML is very forgiving, JS less so. JavaScript is not bad for SEO, if done right.” Ilya Grigorik Is there a way to improve JS crawling?
  75. 75. Debugging JavaScript – Ilya’s style
  76. 76. “It's throwing JS errors on ES6 syntax, which is not supported in M41. You can use the debug snippet we provided in the blog post to log out the error into the DOM to see it.” Ilya Grigorik Let’s start from decoding Ilya’s words
  77. 77. How to make ANY* JS indexable? *I’m not 100% sure about it, but it sounds cool. Right?
  78. 78. JS is less effective than HTML JavaScript is not bad for SEO, if done right* *he said exactly that Ilya Grigorik After talking to Ilya
  79. 79. and a lot of investigation
  80. 80. We’ve managed to get Angular 2 indexed by Google
  81. 81. How?
  82. 82. There was an error in Angular 2’s source code in official repository
  83. 83. team fucked up Search Angular ’s
  84. 84. April 26th: error was fixed ele.ph/ang-fix
  85. 85. For other frameworks Polyfills Transpilers
  86. 86. What are Transpilers ele.ph/transpiler
  87. 87. What are ele.ph/polyfill Polyfills (n) 1. A shim that mimics a future API, providing fallback functionality to older browers. e.g. geolocation polyfill
  88. 88. So… Every JS framework is indexable… HTML is very forgiving, JS less so. Ilya Grigorik But
  89. 89. Is there a perfect JavaScript SEO scenario?
  90. 90. YES
  91. 91. 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
  92. 92. ele.ph/iso
  93. 93. What if it’s too late?
  94. 94. Prerender.io
  95. 95. user server middleware Prerendering crawlers JS HTML JS ? ?
  96. 96. Understanding technology behind
  97. 97. ele.ph/ilya
  98. 98. ele.ph/chrome41
  99. 99. ele.ph/chrome41 Download Chrome 41 here:
  100. 100. Using Chrome 41 for debugging JS indexing
  101. 101. http://jsseo.expert/angular2/ in Chrome 41
  102. 102. http://jsseo.expert/angular2/ in up-to-date Chrome
  103. 103. Chrome 41 1. Open:
  104. 104. JSSEO.EXPERT 2. Open:
  105. 105. / 3. Open: Chrome Developer Tools cmd ctrl shift+ + i
  106. 106. 4. Show this sh*t to your developers
  107. 107. Polymer No ES5 to ES6 compilation Wrong application build Polymer-cli related issues (whatever that means) anyways… it works now.
  108. 108. Polymer No ES5 to ES6 compilation Wrong application build Polymer-cli related issues (whatever that means) anyways… it works now.
  109. 109. Experiments continue…
  110. 110. JS Only Google and Ask can handle JavaScript Key takeways
  111. 111. JS Only Google and Ask can handle JavaScript All JavaScript frameworks are indexable Key takeways
  112. 112. All JavaScript frameworks are indexable Indexing JavaScript is only half the battle Key takeways
  113. 113. Indexing JavaScript is only half the battle JavaScript even when rendered and indexed, can kill crawler budget Key takeways
  114. 114. JavaScript even when rendered and indexed, can kill crawler budget Use Chrome 41 to debug JS Key takeways
  115. 115. Use Chrome 41 to debug JS If too late, use prerendering Key takeways
  116. 116. If too late, use prerendering Key takeways Isomorphic JS = perfect scenario
  117. 117. All JavaScript frameworks are indexable Indexing JavaScript is only half the battle JavaScript even when rendered and indexed, can kill crawler budget JS Only Google and Ask can handle JavaScript Use Chrome 41 to debug JS If too late, use prerendering Isomorphic JS = perfect scenario Key takeways
  118. 118. @bart_goralewicz /in/goralewicz/ Thanks! :*

×