Skip to content

Technical SEO for SaaS: 12 fixes that let Google and AI read your site

SaaS sites break technical SEO in their own ways: JavaScript-heavy marketing pages, app and docs subdomains, integration directories and frequent replatforms. Here are 12 problems we see most, how to check for each, and how to fix them, for Google and for AI crawlers.

Technical SEO · Oct 14, 2026 · 9 min read · By Click Sage

Click Sage cover: 12 fixes, covering rendering, crawlers, subdomains, migrations and 8 more.

A SaaS website isn't a typical website. It's usually a marketing site, a web app, a help center, docs, a changelog and a status page, often on different platforms and different subdomains, built by different teams. It gets redesigned every couple of years.

That's where technical SEO quietly breaks. The pages that should win never get crawled, rendered or trusted, by Google or by the AI assistants your buyers now ask for vendor shortlists.

This guide covers the 12 technical problems we see most on B2B SaaS sites. Each has what goes wrong, how to check it, and how to fix it. If you want the full program view, from research to pipeline, start with our SaaS SEO checklist. This article goes deep on the technical layer underneath it.

1. Marketing pages that only exist after JavaScript runs

What goes wrong: Many SaaS marketing sites are built as single-page apps, or with frameworks that render content in the browser. Google can render JavaScript, but rendering happens in a separate, later step, so content can be indexed late or incompletely. Several major AI crawlers fetch the raw HTML and don't run JavaScript at all. If your copy only appears after scripts run, those assistants see an empty page.

How to check: Open a key page, view the page source (not the inspector), and search for a sentence from the body copy. Then, in Google Search Console, use URL Inspection and "View crawled page" to see what Google rendered.

Fix: Serve marketing pages as server-rendered or statically generated HTML. Most modern frameworks, including Next.js, Nuxt and Astro, do this by default when configured correctly. Keep client-side rendering for the logged-in app, where SEO doesn't matter.

2. AI crawlers blocked by accident

What goes wrong: Robots.txt rules are often copied from templates, or added in a panic to block AI training. Blocking the wrong user agent can remove you from AI search answers entirely, not just from model training.

How to check: Read yoursite.com/robots.txt line by line. Know which agents do what. For example, OAI-SearchBot powers ChatGPT search, GPTBot collects training data, and PerplexityBot powers Perplexity. Google's AI Overviews use the regular Googlebot; the separate Google-Extended token controls use for Gemini training, not Search.

Fix: Decide training and search access separately, on purpose. A common position for a SaaS company that wants to be recommended: allow search crawlers, and make a deliberate business decision about training crawlers. Re-check whenever your CDN or security tool adds bot protection, because some block AI crawlers by default.

3. Content scattered across subdomains

What goes wrong: The blog sits on blog., docs on docs., the help center on help., and the app on app., each on a different platform. Google says it handles subdomains and subfolders fine, so this isn't about a penalty. It's about operations. Every subdomain needs its own sitemap and its own Search Console property, and internal links between them are easy to forget. Problems on one go unnoticed.

How to check: List every hostname that serves public pages; your DNS records are a good start. For each one, check it's verified in Search Console and has a sitemap.

Fix: Where you can, serve content the marketing team owns, such as the blog, guides and comparison pages, from subfolders on the main domain. Where a subdomain is unavoidable (docs platforms often are), verify it, give it a sitemap, link to it from the main navigation and footer, and link back.

4. The app, staging and preview environments are indexable

What goes wrong: Login pages, in-app URLs, staging sites and preview deployments show up in Google, competing with your real pages or exposing unfinished work. A common mistake is relying on robots.txt to keep them out: a URL blocked in robots.txt can still be indexed from links, just without its content.

How to check: Search Google for site:yourdomain.com and look for app, staging or preview hostnames. In Search Console, filter the Pages report by URL.

Fix: Put staging and previews behind authentication, which is the only reliable option, or send an X-Robots-Tag: noindex header on every response from them. For the app itself, noindex everything except the login and sign-up pages if you want those found. Remove any of these URLs from your sitemaps.

5. Duplicate pages without a clear canonical

What goes wrong: SaaS sites generate near-duplicates easily: the same page with UTM parameters, trailing-slash and non-trailing-slash versions, http and https, www and the bare domain, and filtered views of integration or template directories. Signals get split, and Google may pick a canonical you didn't intend.

How to check: In Search Console's Pages report, look at "Duplicate without user-selected canonical" and "Duplicate, Google chose different canonical than user". Crawl the site with a tool like Screaming Frog to list canonical tags.

Fix: Every indexable page gets a self-referencing canonical that uses one consistent format. Redirect the other host and protocol variants to it permanently. Filtered or sorted directory views should canonicalize to the main view, unless a filter is a page you deliberately want to rank, like "Salesforce integrations".

What goes wrong: Each redesign renames URLs. Old redirects point to URLs that now redirect again, creating chains. Some point to pages that no longer exist. Internal links still use the old paths. Each hop wastes crawl effort and dilutes the signals passing through.

How to check: Crawl the site and export redirect chains and internal links that return 3xx or 4xx codes. Check your top linked-to URLs from other sites in Search Console's Links report, and make sure each one resolves in a single hop.

Fix: Point every redirect straight at its final destination, with a single permanent (301 or 308) hop. Update internal links to the final URLs, so they don't rely on redirects at all.

7. Migrations and replatforms without a redirect map

What goes wrong: Moving from one platform to another, for example WordPress to Webflow or Webflow to Next.js, is the single most common cause of sudden organic traffic loss on SaaS sites. URLs change, content is trimmed, metadata is lost, and nobody maps old to new.

How to check: Before a migration, export every URL that gets organic traffic or has backlinks. After it, test every one.

Fix: Build a one-to-one redirect map from old URLs to their closest new equivalents. Avoid sending everything to the home page. Carry over titles, meta descriptions, headings, structured data and body content. Launch, submit the new sitemap, watch Search Console daily for the first few weeks, and keep the redirects in place for at least a year.

8. Integration, template and directory pages that are thin

What goes wrong: Integration directories, template galleries and "X for [industry]" pages can be a strong source of bottom-of-funnel traffic, because they match exactly what evaluators search for. Generated at scale with almost identical text, they become thin pages that Google may crawl but choose not to index.

How to check: In Search Console, filter the Pages report to the directory's path and look at how many URLs are "Crawled – currently not indexed".

Fix: Give each page something specific: what the integration actually does, setup steps, use cases, and limitations. If you can't make a page genuinely useful yet, noindex it until you can, or merge similar ones. Fewer, better pages beat hundreds of near-copies.

9. Structured data that's missing, or claims too much

What goes wrong: Pages either have no structured data, or have markup copied from elsewhere that doesn't match the page. Fabricated ratings on product pages are the classic example.

How to check: Run key templates through Google's Rich Results Test and the Schema.org validator.

Fix: Mark up what's really there:

  • Organization and WebSite on the home page, with your real logo, URL and contact details.

  • Article on blog posts, with real publish and update dates.

  • BreadcrumbList for your hierarchy.

  • SoftwareApplication on product pages only if you can include genuine pricing and genuine ratings. Google requires both kinds of information for software rich results.

Consistent, accurate structured data also helps AI systems connect your brand to the right facts.

10. Slow templates and layout shift

What goes wrong: Marketing sites accumulate chat widgets, tag managers, A/B testing scripts, video embeds and heavy hero animations. Each one slows rendering or makes the layout jump.

How to check: Check the Core Web Vitals report in Search Console. It groups URLs by template, so you can find the worst offenders. Use PageSpeed Insights on a representative page from each group.

Fix: Aim for Google's "good" thresholds: Largest Contentful Paint at or under 2.5 seconds, Interaction to Next Paint at or under 200 milliseconds, and Cumulative Layout Shift at or under 0.1. The usual wins:

  • Load third-party scripts after the page is interactive.

  • Reserve space for images and embeds.

  • Serve modern image formats at the right size.

  • Remove tools nobody uses anymore.

Don't chase a perfect PageSpeed score at the expense of the content; pass the thresholds, then move on.

11. Sitemaps that don't match reality

What goes wrong: Sitemaps list redirected, noindexed or deleted URLs, and miss new pages. Search engines learn to trust them less.

How to check: Compare the URLs in your sitemap against a crawl. Every sitemap URL should return 200, be indexable and be canonical to itself.

Fix: Generate sitemaps automatically from your CMS or framework, so they update when content does. Include only canonical, indexable URLs, with accurate last-modified dates. Submit them in Search Console, and reference them in robots.txt.

12. US and Canada: hreflang you don't need, or currency you do

What goes wrong: Teams selling into the US and Canada sometimes add hreflang tags for en-US and en-CA pointing at identical pages, or create near-duplicate country pages that compete with each other.

How to check: Ask whether the Canadian page is actually different: different pricing, currency, legal terms or content.

Fix: If you have one English site for both markets, you don't need hreflang. One page serves both. Use hreflang only when you maintain genuinely different versions, for example Canadian pricing in CAD or French-language pages for Quebec. In that case each version must reference all the others and itself.

What to fix first

If you only have a sprint, prioritize by what blocks revenue pages:

  1. Rendering (1) and crawler access (2). If Google or AI assistants can't read your pages, nothing else matters.

  2. Indexation hygiene (4, 5). Make sure the right pages, and only those, are in the index.

  3. Redirects (6, 7). Recover the authority you already earned.

  4. Directory pages (8) and structured data (9). These turn a clean foundation into rankings and citations.

  5. Speed, sitemaps and international (10–12). Important, but rarely the reason a SaaS site can't grow.

Frequently asked questions

Is technical SEO different for SaaS companies?

The principles are the same, but SaaS sites have specific failure points: JavaScript-heavy marketing pages, several subdomains on different platforms, indexable app and staging environments, large integration directories and frequent replatforms. Those deserve most of the attention.

Should a SaaS blog be on a subdomain or a subfolder?

Google says it can handle either. A subfolder is usually simpler to run, with one Search Console property, one sitemap and internal links in one place. That's why we recommend it for content your marketing team owns.

Do AI search engines need different technical SEO?

Mostly the same foundations, with two differences that matter. Several AI crawlers don't run JavaScript, so server-rendered content is essential. And robots.txt rules for AI user agents decide whether you can appear in their answers at all. See our AI SEO service for the content side.

How often should a SaaS site get a technical SEO audit?

Do a full audit once a year, plus targeted checks before and after every redesign, migration or platform change. Monitor Search Console's Pages and Core Web Vitals reports monthly.


Need a technical audit before your next redesign or migration? Our technical SEO service covers crawlability, rendering, structured data and migration support, working directly with your developers. Book a strategy call to talk it through.

Want this applied to your pipeline?

A 30-minute strategy call: we look at where you show up in AI answers and search today, and what would move it.

SaaS PPC: how to run paid ads that create pipeline, not just leads

Paid media · Oct 17, 2026 · 6 min read

Most SaaS PPC accounts are optimized for cheap leads and judged on cost per lead, so they buy plenty of form fills and little pipeline. Here's how to run paid search and paid social for B2B SaaS that's measured, and bid, on the opportunities it creates.

A SaaS content strategy built on buyer questions

Content · Oct 17, 2026 · 6 min read

Most SaaS content calendars are lists of topics someone thought were interesting. This strategy starts from the questions your buyers actually ask, gives each one a single page, puts that page to work across search, AI answers, email, social and sales, and measures it in pipeline.

Brand mentions in ChatGPT: how to track them, and what they're worth

Measurement · Oct 14, 2026 · 7 min read

ChatGPT has no Search Console. To know whether it recommends your brand, you have to measure it yourself, and one answer tells you almost nothing. Here's a 5-step, tool-neutral method for B2B SaaS: clean, repeated runs, Answer Share scoring, accuracy audits and pipeline attribution.