Building a Landing Page, the Hard Way

Building a Landing Page, the Hard Way

I was working on a simple landing page.
At first, I didn’t think too much about the stack, I just went with Vite + React. It’s fast, lightweight, and the tools feel familiar. The dev experience was smooth as always, and everything worked fine in the browser.

But then I started thinking: how will Google see this page?

That’s when the issue showed up.

Since the setup was CSR (Client-Side Rendering), the initial HTML that gets served is basically empty just a <div id="root">. The real content only appears after the JavaScript runs on the client side. When Googlebot or any crawler visits, it initially sees a blank page.

Sure, Google can render JavaScript to some extent, but it’s never perfect. For something like a marketing landing page, that delay can mean your content isn’t indexed properly or worse, not indexed at all.


Switching to SSG for Better Visibility

So I decided to migrate the page to SSG (Static Site Generation).
It wasn’t as simple as hitting a button or asking AI to “make it static.” Some parts still needed manual optimization.

I spent time tweaking a few things:

The difference was immediate. The page became lighter, faster, and most importantly, visible to search engines right from the start.

Now, when I check the source, I can see all the content without waiting for JavaScript. That’s how it should be.


Sometimes, using the “cool stack” isn’t the best choice.
Vite + React are great for apps, dashboards, or anything highly interactive. But when you’re building something meant to be found, like a landing page, SSG is the smarter move.

Fast doesn’t always mean effective.
And building something visible is better than building something fancy.

ദ്ദി ˉ͈̀꒳ˉ͈́ )✧ M.T.

© 2025

Instagram 𝕏 GitHub Linkedin