{"id":3573,"date":"2024-08-22T20:12:26","date_gmt":"2024-08-23T01:12:26","guid":{"rendered":"https:\/\/frontendmasters.com\/blog\/?p=3573"},"modified":"2024-08-22T20:12:27","modified_gmt":"2024-08-23T01:12:27","slug":"how-google-handles-javascript-throughout-the-indexing-process","status":"publish","type":"post","link":"https:\/\/frontendmasters.com\/blog\/how-google-handles-javascript-throughout-the-indexing-process\/","title":{"rendered":"How Google handles JavaScript throughout the indexing process"},"content":{"rendered":"\n<p><a href=\"https:\/\/vercel.com\/blog\/how-google-handles-javascript-throughout-the-indexing-process#methodology\">Vercel published an article<\/a> with research on how Google Bots deal with client-side JavaScript. People assume that sites that are JavaScript-rendered only are worse for SEO and worry about that. Which is entirely reasonable, as <a href=\"https:\/\/developers.google.com\/search\/docs\/crawling-indexing\/javascript\/dynamic-rendering\">Google themselves warns you<\/a> that there are limitations with client-side rendering and &#8220;some pages may encounter problems with content not showing up in the rendered HTML. Other search engines may choose to ignore JavaScript and won&#8217;t see JavaScript-generated content.&#8221;<\/p>\n\n\n\n<p>Their testing idea makes sense. If the page is hit with a Google Bot, wait for the page to <em>entirely finish loading<\/em> (regardless of rendering method), and only then send tracking data back to store and analyze.<\/p>\n\n\n\n<p>Their findings are mostly <em>&#8220;this is fine&#8221;<\/em> and literally every page was rendered in full, including pages with complex JS and dynamic content, although <a href=\"https:\/\/vercel.com\/blog\/how-google-handles-javascript-throughout-the-indexing-process#moving-forward-with-new-information\">the comparisons of rendering strategies<\/a> show that client-side rendering is still clearly the worst. <\/p>\n\n\n\n<p>This was also testing directly on <code>nextjs.org<\/code>, which I imagine Google sees as a pretty highly trafficked and important site, and perhaps willing to send it&#8217;s most robust bots. Does your brand new site for Jimbob&#8217;s Bakery get the same treatment? <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vercel published an article with research on how Google Bots deal with client-side JavaScript. People assume that sites that are JavaScript-rendered only are worse for SEO and worry about that. Which is entirely reasonable, as Google themselves warns you that there are limitations with client-side rendering and &#8220;some pages may encounter problems with content not [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":3649,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"sig_custom_text":"","sig_image_type":"featured-image","sig_custom_image":0,"sig_is_disabled":false,"inline_featured_image":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[29],"tags":[3,227,64],"class_list":["post-3573","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-the-beat","tag-javascript","tag-seo","tag-server-side-rendering"],"acf":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/frontendmasters.com\/blog\/wp-content\/uploads\/2024\/08\/image-1.png?fit=1792%2C1024&ssl=1","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/posts\/3573","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/comments?post=3573"}],"version-history":[{"count":2,"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/posts\/3573\/revisions"}],"predecessor-version":[{"id":3650,"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/posts\/3573\/revisions\/3650"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/media\/3649"}],"wp:attachment":[{"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/media?parent=3573"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/categories?post=3573"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/frontendmasters.com\/blog\/wp-json\/wp\/v2\/tags?post=3573"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}