{
  "slug": "indexability-flags",
  "name": "Indexability flags",
  "aliases": [
    "Indexable status",
    "Indexation reason"
  ],
  "definition": "Whether the crawler judged a URL indexable, and the reason when it did not, the noindex directive, the canonical state and the HTTP status it was served.",
  "category": "Crawl and logs",
  "type": "raw measure",
  "unit": "flag values and reason labels per URL",
  "direction": "neutral",
  "verification": "inferred",
  "aggregation": "Per-URL attributes, not aggregates. The diagnosis tool filters to URLs judged not indexable and returns the reason fields beside each one.",
  "grain": "One set of flags per crawled URL.",
  "dimensions": [
    "url"
  ],
  "requiredFilters": [],
  "sources": [
    "site-crawl"
  ],
  "reports": [
    "ai-bot-activity-report",
    "crawl-log-report",
    "internal-linking-report",
    "technical-seo-audit-report"
  ],
  "skills": [
    "technical-health-audit",
    "ai-crawler-readiness",
    "linking-opportunity-review"
  ],
  "verbs": [
    "indexation_gap_diagnosis",
    "orphan_pages"
  ],
  "rungs": [
    "R1"
  ],
  "levers": [
    "L1"
  ],
  "questions": [
    "What pages are blocked from indexing?",
    "Why is this page not indexed?"
  ],
  "interpretation": "The reason column that turns an indexation problem into a task. Read the indexable judgment and the reason together, a page can be non-indexable by directive, by canonical, or by status, and each has a different owner and a different fix.",
  "caveats": [
    "These are passthroughs of crawler-produced columns. The crawler's rules for deciding indexability are not readable in the semantic layer, so the flag is reported as the crawl's judgment rather than as a derived formula.",
    "The judgment is what the crawl found; it is not confirmation of what the search engine did. Crawl reachability and actual indexing are different claims.",
    "The list is capped, so it is the top non-indexable URLs rather than every one.",
    "A crawl is a snapshot on its own schedule and can disagree with a page changed since."
  ],
  "freshness": "per crawl schedule, cadence is set per site; the card names the crawl it read.",
  "failureModes": [
    "Reading a non-indexable flag as proof a page is absent from the index.",
    "Reporting the capped list as the complete set of blocked pages.",
    "Acting on a stale crawl for a page that was fixed after it ran."
  ],
  "notSameAs": [
    {
      "slug": "status-code-hits",
      "why": "Indexability flags are the crawl's assessment of a page; status-code hits are what your server actually returned to a real crawler. Assessment and observation, from different sources."
    }
  ],
  "related": [
    "incoming-internal-links",
    "crawl-depth",
    "status-code-hits",
    "crawler-readiness"
  ],
  "workflows": [],
  "lastVerified": "2026-08-04"
}