Gatsby better than plain React for SEO?

I’m finished with the curriculum and I’m about to start making a photography business website for a family-member. There’s gonna be a lot of images and dynamic loading of parts of it, so I figured it was a perfect candidate for React, but then I heard about Gatsby. I read that it functions like a React single-page-application (SPA), but it’s also better for search engine optimization because it initially loads super fast along with full SEO content like a static HTML page, and then becomes a SPA.

I don’t know much about this stuff, but the concept sounds absolutely preferential since SEO is extremely important for what I want to do. Is this the case? Should I use Gatsby over making a plain React app? I would have to ofcourse learn Gatsby now which is why I ask.

The thing about React (and any other SPA app) is that the UI is built on the client, using JavaScript. Only Google’s search engine runs JS, and it runs a very old version of it. This is why most SPA’s don’t work well with SEO out of the box.

Gatsby takes a “hybrid” approach (to my knowledge) where you compile the site to static html/assets, and when the end user gets it, it loads up some JS. (I’ve heard there are plugins that make the site work even without JS :o) This allows it to provider much faster response times as the template is already “loaded”, while staying dynamic, and provide better SEO than an SPA app.

Generally if you care about scale, performance, run-time costs, more than handling dynamic UI, using Gatsby is a better bet than any of the three big frameworks, as Gatsby was built with those goals in mind :slight_smile: as its a static site generator.

Good luck!

PS. I don’t use Gatsby, so take my words with a little grain of salt, I’ve only read about it as a technology, how it works, and how it should be used. :slight_smile: