Technical SEO for Web Apps: Get Found on Google

Technical SEO for web applications: why SPAs don't rank, what SSR/SSG mean, Core Web Vitals, and a checklist to turn organic traffic into leads.

Deepyze Team··6 min read

You have a web application that works perfectly, but when you search for your brand on Google it barely shows up, and for the keywords that matter you never appear at all. The most frequent reason a web application doesn't rank is that it's built as a SPA (Single Page Application) that assembles its content with JavaScript in the browser. Google often sees an empty page or takes too long to render, and it won't index what it can't read quickly. The fix is to serve already-rendered HTML with SSR or SSG. Here's the technical SEO that separates an invisible app from one that captures organic traffic.

Why your SPA doesn't show up on Google

A SPA loads an almost-empty HTML file and then JavaScript "paints" the content into the browser. For a user it feels instant and smooth. For Google, it's a problem: its crawler has to download, queue and execute that JavaScript in a second pass that can take days or weeks, and very often it never sees the full content.

The result is the classic soft 404: Google sees a page that technically loads, but with no real content, and decides not to index it, or to index it as a low-quality page. If your public app depends on organic traffic, this is fatal.

SSR and SSG: the difference that gets you found

The solution is to hand Google the HTML already assembled. There are two ways to do it:

  • SSR (Server-Side Rendering): the server generates the HTML on every visit. Ideal for dynamic or personalized content.
  • SSG (Static Site Generation): the HTML is generated once, at build time. Ideal for content that doesn't change often: blog, landing pages, service pages.
Strategy What Google sees Speed When to use it
Pure SPA (CSR) Empty HTML, JS pending Good after loading Private apps behind login
SSR Full HTML per visit Good Dynamic public content
SSG Full pre-built HTML Excellent Blog, landings, catalogs
Hybrid (SSG + ISR) Full HTML, revalidated Excellent The 2026 standard

In 2026, the approach we recommend for most apps with public pages is a framework like Next.js that combines SSG for the static parts with SSR/ISR for the dynamic ones. We cover this in depth in React or Next.js for your project.

An intermediate variant is build-time prerendering: tools that crawl your SPA and save a static HTML version of each route. It works as a patch when you already have a SPA built and don't want to rewrite it, but it's fragile: if a route isn't in the list of pages to pre-render, Google sees it empty. That's why, for new projects, it's better to start from a framework with native SSR/SSG instead of patching things later.

Is your web app not showing up on Google and you don't know why? Book a 30-minute diagnostic and we'll tell you exactly what's blocking your indexing.

Core Web Vitals: speed as a ranking factor

Google doesn't just look at the content; it measures the real experience with the Core Web Vitals:

  • LCP (Largest Contentful Paint): how long the main content takes to load. Target: under 2.5 seconds.
  • INP (Interaction to Next Paint): how quickly your app responds to clicks and taps. Target: under 200 ms.
  • CLS (Cumulative Layout Shift): how much the content "jumps" while loading. Target: under 0.1.

An app that takes 6 seconds to paint its content on mobile loses twice over: the user leaves and Google ranks it lower. If you want to dig deeper into this, we break it down in web performance and speed.

Technical SEO checklist for your web app

What we review in every audit:

Indexability

  1. Rendered HTML: every public page serves content in the initial HTML, not only after running JS.
  2. Correct robots.txt: don't accidentally block what you want indexed.
  3. Sitemap.xml generated and submitted to Search Console.
  4. Canonical tags to avoid duplicate content.

Metadata

  1. Unique title and meta description per page, with the keyword up front.
  2. Open Graph so it looks good when shared.
  3. Structured data (JSON-LD): Organization, FAQ and Breadcrumb schema. This also helps LLMs cite you.

Architecture

  1. Clean, semantic URLs: /servicios/desarrollo-web and not /page?id=42.
  2. hreflang if you have versions in multiple languages.
  3. Consistent internal linking between related pages.

Performance

  1. LCP < 2.5s on real mobile (not just on your fiber connection).
  2. Optimized images in a modern format and with lazy loading.
  3. Split JavaScript (code splitting) so you don't ship everything at once.

Technical SEO mistakes we see all the time

Beyond the underlying SPA problem, audits keep surfacing the same oversights that sabotage indexing:

  • Blocking resources in robots.txt: in an attempt to "hide" folders, people end up blocking the JavaScript or CSS that Google needs to render.
  • Content behind an interaction: key information that only appears after clicking a tab or an accordion. Google doesn't click; if it's not in the HTML, it doesn't index it.
  • Pagination or filters that generate endless URLs: catalogs with filter combinations create thousands of near-identical URLs that dilute the crawl budget.
  • The same title and description on every page: copying a generic metatag across the whole app makes Google treat the pages as duplicates.
  • No HTML version of dynamic content: product or article listings that load only via API stay invisible if there's no SSR.

None of these require rebuilding the app: they're targeted fixes, but their combined effect is enormous. An app with good content and these errors corrected can go from zero to hundreds of indexed pages in just a few weeks.

When technical SEO is NOT your priority

Let's be honest: not every application needs technical SEO.

  • If your app is an internal tool or a dashboard behind login, you don't need Google to index it. There, what matters is speed for the user, not ranking. That's the case for an internal-use custom software build.
  • If your product grows through direct sales or paid advertising, organic is secondary and you should invest in conversion first.
  • If you haven't validated the product yet, optimizing SEO is premature: first confirm that the idea works.

Technical SEO pays off when your model depends on new people discovering you while searching for a solution you offer.

GEO: getting LLMs to cite you too

There's a new layer in 2026 that rests on the same foundation. More and more people search through AI assistants like ChatGPT, Claude or Perplexity instead of Google directly. These models read your page's HTML just like a crawler does, and they cite sources they understand clearly.

The good news: what optimizes for LLMs is almost exactly what optimizes for Google. Rendered HTML, content structured with clear headings, direct and self-contained answers to specific questions, and structured data (FAQ and Organization schema). An app built with good technical SEO is already halfway to being cited by AI. A SPA that not even Google can read won't be read by an LLM either.

From traffic to leads: the missing step

Showing up on Google means nothing if the visitor bounces. Technical SEO brings the visit; the page architecture converts it. That's why we treat them together: pages that are fast, indexable and designed to get the reader to take the next step.

At Deepyze we build web applications and websites with SSR/SSG from the design stage, not patched afterward. We audit your current app, identify what's blocking your indexing, and fix it with a fixed price and a team in your time zone. Tell us about your case and within 24 hours you'll have a proposal with a diagnosis and a concrete plan.

Frequently asked questions

Why doesn't my web application show up on Google?+

The most common cause is that your app is a SPA (Single Page Application) that renders content with JavaScript in the browser. Google can take a long time to run that JS, or it simply sees an empty page, so it never indexes your content. The fix is to serve already-rendered HTML with SSR or SSG.

What's the difference between SSR and SSG for SEO?+

SSR (server-side rendering) generates the HTML on every visit, ideal for dynamic content. SSG (static generation) generates the HTML once at build time, ideal for content that doesn't change often. Both deliver HTML that's ready for Google to read, unlike a pure SPA.

What are Core Web Vitals and why do they matter for SEO?+

Core Web Vitals are Google metrics that measure real user experience: LCP (how fast the main content loads), INP (how responsive the page is to interactions) and CLS (visual stability). Google uses them as a ranking factor, so a slow app ranks worse even when the content is good.

Is React bad for SEO?+

React isn't bad for SEO in itself; the problem is using it as a pure SPA with no server-side rendering. With a framework like Next.js that provides SSR/SSG, a React app ranks perfectly well because it serves pre-rendered HTML that Google reads without executing JavaScript.

Can a web application attract organic traffic like a regular website?+

Yes, as long as its public pages serve indexable HTML, have correct metadata, clean URLs and good performance. The private sections behind login aren't indexed and don't need to be, but your app's marketing pages, blog and landing pages should be optimized for technical SEO.

Want this working in your company?

At Deepyze we turn manual processes into systems that work on their own: AI automation, web and mobile apps, and custom software. Tell us your case and you will have a concrete proposal within 24 hours.

Sin compromiso · Respuesta en 24 hs · Equipo en tu mismo huso horario

Keep reading