Discoverability
Can search engines — and AI systems — find, crawl and understand your pages at all?
0.20 of the composite scoreWhy does this matter — for rankings, traffic and trust?
Discoverability is the technical floor of every SEO result: before keywords, backlinks or content quality can matter, crawlers must be able to reach your pages, read them, and understand what each one is. A site with perfect content and a broken robots.txt, a missing sitemap, or duplicate titles across every page will simply not compete.
It is also your click-through-rate lever. The title tag and meta description are what Google actually renders in the result page — a missing, duplicated or oversized title quietly taxes every impression you earn. Canonical URLs and clean redirects decide which URL collects the ranking signals; without them you split your own equity across duplicates.
Since 2023 there is a second audience: AI answer engines (ChatGPT, Perplexity, AI Overviews) read robots.txt and sitemaps explicitly when they decide what to cite. Publishers who block everything lost a traffic channel overnight — discoverability now covers being reachable by machines that summarize, not just machines that index.
Every signal in this division — exactly what the engine checks
How to fix it
What commonly causes failures here
- A robots.txt that blocks all agents — often left behind from a staging/deployment workflow that escaped to production.
- No XML sitemap, or a stale one listing dead URLs while new pages are missing.
- The same <title> templated onto every page, or titles cut short / padded to spam lengths.
- Missing canonical tags on parameterized or paginated URLs → duplicate content dilution.
- Redirect chains (http→https→www→app) that leak link equity and slow first paint.
- An accidental <meta name="robots" content="noindex"> — usually from a forgotten staging flag in the CMS.
- Markup-heavy pages with almost no readable text (JS-rendered shells) and enormous DOM trees.
Best-practice setup
The three artifacts below cover most of this axis: a robots.txt that allows search and AI crawlers while keeping private areas out, a sitemap that always reflects reality, and a complete <head> on every page. Copy them and adjust.
User-agent: *
Disallow: /admin/
Disallow: /cart
Disallow: /*?sort=
# AI answer engines — decide deliberately, not by accident:
User-agent: GPTBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Google-Extended
Allow: /
Sitemap: https://example.com/sitemap.xml<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/</loc>
<lastmod>2026-10-01</lastmod>
<changefreq>weekly</changefreq>
<priority>1.0</priority>
</url>
<url>
<loc>https://example.com/pricing</loc>
<lastmod>2026-09-28</lastmod>
<priority>0.8</priority>
</url>
</urlset><head>
<title>Warehouse Automation Software | Acme Robotics</title> <!-- 30–60 chars, unique -->
<meta name="description" content="Cut picking time 40% with Acme's
warehouse automation. Deployed in 200+ fulfillment centers."> <!-- 70–160 chars -->
<link rel="canonical" href="https://example.com/warehouse-automation">
<meta property="og:title" content="Warehouse Automation Software">
<meta property="og:description" content="Cut picking time 40%.">
<meta property="og:image" content="https://example.com/og-cover.jpg">
<meta name="twitter:card" content="summary_large_image">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>server {
listen 80;
server_name www.example.com example.com;
return 301 https://example.com$request_uri; # single 301, never a chain
}Good vs bad, side by side
<head>
<meta name="robots" content="noindex, nofollow"> <!-- oops: on production -->
<title>Home</title> <!-- same on every page -->
</head><head>
<title>Warehouse Automation Software | Acme Robotics</title>
<meta name="description" content="Cut picking time 40% with Acme…">
<link rel="canonical" href="https://example.com/warehouse-automation">
</head>