--- title: "Technical SEO for SaaS: The Founder's Checklist" description: "The crawl, render, and Core Web Vitals work a B2B SaaS site needs before any content compounds — written for founders, not agency briefs." url: "https://serpnaut.xyz/playbook/technical-seo-for-saas" verifiedAt: "2026-06-09" canonical: "https://serpnaut.xyz/playbook/technical-seo-for-saas" --- # Technical SEO for SaaS: The Founder's Checklist > TL;DR — Technical SEO for SaaS is the rendering, crawl, and Core Web Vitals work that lets Google reliably index a B2B software marketing site. On the typical six-month-old SaaS site, fixing client-only rendering on pricing and landing pages and removing one runaway third-party script doubles indexed pages in under 30 days — without writing a single new post. In plain English: Technical SEO for SaaS makes a B2B software marketing site reliably crawlable, server-rendered, and fast on real-user Core Web Vitals. It is the foundation every other SEO discipline compounds on; without it new content earns a fraction of the ranking it deserves. ## Key takeaways - The single most common SaaS SEO bug is a pricing or comparison page that renders only in the browser — invisible to Google's index. - Search Console's URL Inspection 'View tested page → Rendered HTML' is the only reliable test for whether your content reaches Google. - Core Web Vitals are scored from real Chrome users (field data), not from PageSpeed Insights' lab score. - Sitemap.xml should contain only canonical, indexable, 200-status URLs — anything else trains Google to ignore it. - Fix CWV on the home, pricing, and top three landing pages first; ignore blog posts that get under 50 visits/month. ## Definition Technical SEO for SaaS is the discipline of making a B2B software marketing site reliably crawlable, server-rendered, indexable, and fast enough on real-user Core Web Vitals that search engines treat its content as candidate ranking material. ## Why it matters Most B2B SaaS sites ship on Next.js, Vite, or a marketing builder and inherit subtle rendering and indexation bugs the founders never see. A clean crawl is the cheapest 20% of your traffic ceiling — earned once, compounds forever. The fastest way to double organic traffic on a 6-month-old SaaS site is almost never new content; it's removing the technical friction between the content already published and Google's index. ## Crawlability and indexation Google has to find a URL, fetch it, render it, and decide it's worth indexing. Every step is where a SaaS site silently loses pages. Start in Search Console → Pages and read the 'Why pages aren't indexed' table. The two buckets that matter most are 'Discovered — currently not indexed' (Google saw the URL and never bothered fetching it) and 'Crawled — currently not indexed' (Google fetched it and decided it wasn't worth keeping). Confirm robots.txt does not block anything in production. Common landmines: blocking /api/ in a way that also matches a content path, blocking the JS bundle directory and breaking client-side rendering, or shipping a leftover Disallow: / from staging. Sitemap.xml should contain only canonical, indexable URLs that return 200. Including 404s, redirects, or noindex pages teaches Google your sitemap is unreliable and it starts ignoring the URLs that actually matter. Run a Screaming Frog or Sitebulb crawl quarterly. Filter for non-200 response codes, internal links to redirects, and duplicate titles. These three filters surface 80% of the crawl-budget waste on most SaaS sites. ## Rendering: SSR, SSG, or client-only Single-page apps that render content only in the browser still routinely get partial indexation. Google can render JavaScript, but it does so on a second pass and with a budget you don't control. Anything that genuinely needs to rank — pricing, comparison pages, landing pages, blog posts — should be server-rendered or static-generated. The reliable test is Search Console's URL Inspection tool. Run a URL through it, click 'View tested page', read the rendered HTML tab. If your H1 or product copy is missing from that view, your page is invisible to ranking regardless of what your browser shows. Client-only is fine for the app behind login. It's rarely fine for the marketing surface. ## Core Web Vitals Three thresholds: LCP under 2.5s, INP under 200ms, CLS under 0.1. Google measures these from real Chrome users (field data), not from lab tools. PageSpeed Insights shows both — the field-data card at the top is what ranks; the lab score is a diagnostic. Most SaaS marketing pages can hit all three with one round of discipline: serve hero images as WebP or AVIF sized to actual rendered dimensions, self-host critical fonts with font-display: swap, defer or remove non-critical third-party scripts, reserve space for elements that load after the page. Don't optimise pages that don't rank yet. Fix Core Web Vitals on the home page, pricing page, and top three landing pages first. ## Canonicalisation and duplicates Pick one canonical host — https://yourdomain.com or https://www.yourdomain.com — and 301 everything else to it. The four variants (http/https × www/apex) should resolve to a single URL. Audit trailing slashes, case sensitivity, and query parameters. /pricing and /pricing/ should not both return 200. /Pricing should not exist. /pricing?ref=twitter should canonical back to /pricing or Google indexes a dozen variants and ranks none. Emit a self-referencing on every indexable page as a safety net. ## JavaScript, hydration, and third-party scripts Every third-party script — analytics, chat, A/B tools, CDN fonts, cookie banners — costs LCP and INP budget. Audit the network tab on home and pricing. If a script loads on every page and is used on one, load it conditionally. Hydration mismatches in React-based stacks cause silent CLS and break interactivity for the first few hundred milliseconds. Watch production console for hydration warnings — they're a CWV problem dressed up as a dev warning. ## Quick answers ### How do you perform a technical SEO audit for a SaaS website? (https://serpnaut.xyz/playbook/technical-seo-for-saas#qa-audit) Open Search Console → Pages and read the indexation buckets, run one Screaming Frog crawl filtering for non-200s and duplicate titles, then check the home, pricing, and top three landing pages in URL Inspection's rendered-HTML view. Those three steps surface 80% of issues on a typical B2B SaaS site in under two hours. ### Why are my SaaS pages not getting indexed? (https://serpnaut.xyz/playbook/technical-seo-for-saas#qa-rendering) On most SaaS sites the cause is client-only rendering — the page works in Chrome but returns an empty shell to Googlebot. Confirm with URL Inspection → View tested page → Rendered HTML. If the H1 and product copy are missing there, the page is invisible to ranking regardless of how it looks in the browser. ### Do Core Web Vitals affect SaaS rankings? (https://serpnaut.xyz/playbook/technical-seo-for-saas#qa-cwv-rank) Yes, but as a tiebreaker, not a primary signal. Google uses field-data LCP, INP, and CLS from real Chrome users. Passing CWV on a low-relevance page won't rank it; failing CWV on an otherwise winning page can hold it just outside the top five. ### How do you balance content SEO and technical SEO for SaaS? (https://serpnaut.xyz/playbook/technical-seo-for-saas#qa-balance) Spend the first two sprints on technical — rendering, indexation, CWV on commercial pages — then run a topical-authority content cadence on the cleaned foundation. Publishing on broken tech produces a fraction of the ranking the same content would earn after a clean crawl. ## Sources 1. Core Web Vitals thresholds (LCP, INP, CLS) and field-data measurement. — web.dev — Core Web Vitals (https://web.dev/articles/vitals) 2. URL Inspection tool and the rendered-HTML view as the ground-truth indexation check. — Search Console help — URL Inspection (https://support.google.com/webmasters/answer/9012289) 3. Sitemap hygiene: include only canonical, indexable URLs. — Google Search Central — Sitemaps (https://developers.google.com/search/docs/crawling-indexing/sitemaps/overview)