Technical SEO for SaaS Websites
SaaS websites often run on JavaScript frameworks, split marketing site, app and docs across subdomains, and ship changes weekly. Each creates technical SEO problems that no amount of content fixes.
What technical SEO does a SaaS website need?
A SaaS website needs pages Google can crawl, render and index: a clean robots.txt, an XML sitemap, server-rendered or pre-rendered HTML for important pages, real links between pages, one canonical URL per page, and good Core Web Vitals. Check them in Search Console’s page indexing report before anything else.
How do you check crawling and indexing?
Check the Page indexing report in Search Console for important pages marked as not indexed, and use URL Inspection to see what Google rendered. Common SaaS causes are staging noindex tags left on after launch, app pages blocked in robots.txt that also block marketing pages, and duplicate URLs from tracking parameters.
| Symptom | Common cause | Fix |
|---|---|---|
| Page not indexed | Leftover noindex, or blocked by robots.txt | Remove the tag or rule; request indexing |
| ‘Crawled, currently not indexed’ | Thin or duplicate content | Improve or merge the page |
| Wrong URL ranking | Duplicates without a canonical | Set one canonical URL |
| Content missing in rendered HTML | Content loaded only by JavaScript | Server-side or pre-rendering |
| New pages found slowly | Pages not linked or not in the sitemap | Add internal links and update the sitemap |
Does JavaScript hurt SaaS SEO?
JavaScript can hurt SEO when important content or links only appear after scripts run. Google crawls, renders and indexes in separate steps, and rendering can be delayed. Google still recommends server-side or pre-rendering, and links must be real anchor elements with href attributes (JavaScript SEO basics).
- Server-render or pre-render marketing pages, even if the app is a single-page application.
- Use real <a href> links, not click handlers, for navigation.
- Don’t use # fragments for routing.
- Check the rendered HTML in URL Inspection, not just the source.
Do Core Web Vitals matter?
Core Web Vitals matter as part of page experience, which Google says aligns with what its ranking systems reward, but they are not a standalone ranking factor. Good means Largest Contentful Paint within 2.5 seconds, Interaction to Next Paint under 200 milliseconds and Cumulative Layout Shift under 0.1 (Understanding Core Web Vitals).
| Metric | Measures | Good |
|---|---|---|
| Largest Contentful Paint (LCP) | Loading | Within 2.5 seconds |
| Interaction to Next Paint (INP) | Responsiveness | Under 200 milliseconds |
| Cumulative Layout Shift (CLS) | Visual stability | Under 0.1 |
Fix access before writing more.
New content won’t rank on a site Google can’t crawl or render. Technical fixes come first because they unblock everything else.
How should a SaaS site be structured?
Structure the site so every important page is a few clicks from the homepage and linked from related pages: product, use cases, integrations, comparisons, pricing and resources as clear sections. Keep the marketing site, docs and blog on one domain where you can, because separate subdomains are harder to manage and link together.
Moving sections or domains is covered in SaaS site migrations. AI crawler access is covered in AI crawlers and robots.txt.
Frequently asked questions
What is technical SEO?
Making sure search engines can crawl, render and index your pages, understand which URL is the main one, and load them quickly.
Is JavaScript bad for SEO?
Not always, but content and links that only appear after scripts run can be missed or delayed. Google recommends server-side or pre-rendering.
What are good Core Web Vitals?
LCP within 2.5 seconds, INP under 200 milliseconds and CLS under 0.1, according to Google.
Are Core Web Vitals a ranking factor?
They are part of page experience, which Google says aligns with what its ranking systems reward, not a standalone factor.
Should my blog be on a subdomain?
A subfolder on your main domain is usually easier to manage and link. Subdomains can work but need more care.
Why are my pages ‘crawled, currently not indexed’?
Often because Google judged them thin or duplicate. Improve, merge or remove them.
Sources & further reading
Google’s rules and thresholds are checked against Google Search Central. Studies are named with their source and date on each page.