I'm considering building a new website using react.js and am doing quite a bit of research before embarking into anything.

I have found quite a few articles stating that websites that have content generated through JavaScript frameworks (Such as React, Angular, Vue) cannot be crawled and indexed by certain search engines (like Bing, Yahoo, Duck Duck Go, etc).

SEO being very important, this is quite concerning to me. However, I have also noticed that all these articles date from 2018 and earlier.

Does someone have any up-to-date information on this topic?

1 Answer 1


If SEO is an important topic - i wouldn't recommend to use Javascript-based content loading.

Javascript-rendered pages ignore the basic paradigm of internet, used freely by Googlebot too. URL, unique resource locator, has no validity at Javascript-rendered sites. At Javascript-rendered sites any resource may have the same URL.

But, Googlebot needs an unique URL for crawling and indexing. That is why Javascript-rendered sites make heavy use of fallback techniques, like History API, server side pre-rendering and so on - with a single purpose - to make a document show to Googlebot a unique address, while it natively doesn't have one.

Frameworks for creation of Javascript-rendered sites, all the React, Angular, Vue and gazillion of similar, were invented for purposes, where proper content indexing wasn't a question, so-called SPAs, single page applications, like GMail. But, later hipster misappropriate these techniques and methods and began making everything with frameworks, invented for absolutely another things.

In my opinion, SLA frameworks should be used only for purposes, where indexing is not a task. And vise versa, where you care about indexing - use any technique, which creates native URL for each document.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.