As I know ReactJs render at the client-side means when I fetch data from the API server need to wait until change title and meta tags. So does google wait to run JS? In other words is React with dynamic routes friendly with google/search engines?
2 Answers
In general, CSR (Client side rendering) < SSR (Server side rendering) in term of SEO. You and your competitor have the same site an your site is running in CSR then you will be less likely to get to the top Google Search Result.
There is a budget while google bot crawling your site. With SSR it takes a minimum amount of that budget crawling contents of your pages, on the other hand. With CSR, bots have to spend more time and resources for your pages to fully rendered, thus it takes more budget to do that.
At the moment, there is a very popular method to have the best of both worlds (SSR - CSR) is to applying a hibrid approach where SSR in first render and CSR for the 2nd navigation and so on.
You can take a look at such framework like Nextjs or craft your own masterpiece.
From the Google Search Central docs:
Googlebot processes JavaScript web apps in three main phases:
Crawling Rendering Indexing
Googlebot crawls, renders, and indexes a page.
So while Googlebot will process JavaScript, using server-side rendering will improve page load speed and help with your search ranking. You can also use a library like React Helmet to manage changes to the document head, which also supports server-side rendering.