{
  "slug": "unique-pages",
  "name": "Unique pages",
  "aliases": [
    "Total pages",
    "Unique page count"
  ],
  "definition": "How many distinct pages of your site earned at least one impression in the period.",
  "category": "Search performance",
  "type": "raw measure",
  "unit": "distinct pages",
  "direction": "higher-better",
  "verification": "verified",
  "calculation": "`NULLIF(COUNT(DISTINCT page), 0)` on the keyword-and-page combined table.",
  "aggregation": "A distinct count, never summed across periods or slices.",
  "grain": "One date range × the whole site.",
  "dimensions": [
    "brand",
    "intent",
    "search type"
  ],
  "requiredFilters": [
    "date range"
  ],
  "sources": [
    "search-console"
  ],
  "reports": [
    "cannibalization-report",
    "content-decay-report",
    "content-performance-report",
    "internal-linking-report",
    "keyword-ranking-report",
    "weekly-search-report"
  ],
  "skills": [
    "weekly-search-report",
    "content-decay-refresh",
    "linking-opportunity-review"
  ],
  "verbs": [
    "search_performance"
  ],
  "rungs": [
    "R2"
  ],
  "levers": [
    "L4",
    "L5"
  ],
  "questions": [
    "How many pages of ours actually get impressions?",
    "How many unique pages earned non-brand impressions last month?"
  ],
  "interpretation": "How much of the published site is doing any work in search at all. Read beside the crawl's page count, the gap between published and appearing is the indexation and linking question rather than a ranking one.",
  "caveats": [
    "The measure is dead on the keyword-only rollup table, that table has no page column, so a branded or intent rollup of this count is routed to the keyword-and-page table and must never be redirected to the keyword-only one.",
    "It cannot be requested alongside clicks, impressions, CTR or position; the assembler refuses the mix.",
    "Pages that were crawled but never surfaced in a results page do not appear here at all."
  ],
  "freshness": "1 to 2 days behind, Google's own reporting lag. Any answer touching the last 48 hours says so on the card.",
  "failureModes": [
    "Reading a null as zero pages when the distinct count is empty.",
    "Comparing this count to a crawl's page count as if the two measured the same thing."
  ],
  "notSameAs": [],
  "related": [
    "unique-keywords",
    "impressions"
  ],
  "workflows": [],
  "lastVerified": "2026-08-04"
}