# Google Ranking & AI Search Signals Explorer

Updated November 12, 2026 · Canonical: https://clickd.com/ranking-signals

Documented RankLab schemas list 305 signal sets (167 per result, 138 per query). Roughly 48 sets apply directly to standard web pages (31 scoring sets), alongside 34 sets for AI Overviews, AI Mode and source corroboration, and 17 page-query twin pairs.

> Signal diagnostics inspect only what your own HTML, links and site sections put on the page. Search engines and assistants do not publish weights, and passing every check does not promise rankings, traffic or citations.

## Run Signal Diagnostics Over MCP

- Whole scanned site (sitechunks, Orbit roles, priority fixes): `clickd_signals({ site: "example.com" })`
- Single live URL check: `clickd_signals({ url: "https://example.com/guides/a-page" })`
- MCP tool reference: https://clickd.com/docs/tools/signals.md
- Core 45-rule score (2,227,129 sites read): https://clickd.com/rulebook

## Four-Pass Ranking Pipeline

1. **Crawl & semantic retrieval** (`Googlebot / AI bots, PerDocData, RankEmbed` -> clickd Access (35%)): Fetches raw HTML, resolves canonicals, indexes passages as meaning vectors and pulls candidate pages into the pool.
2. **Base scoring & salient terms** (`Ascorer (Mustang), SalientTerm, ScoringBundle` -> clickd Understand (30%)): Scores lexical and structural relevance using title, main heading, passage structure and internal anchor text.
3. **Semantic re-rank & quality twiddlers** (`RankBrain, DeepRank, Orbit, Expertise, TopicAuthority, Sitechunk` -> clickd Trust (20%) & Act (15%)): Re-evaluates the top candidates against query intent, page category (including YMYL), section quality, originality and freshness need.
4. **AI synthesis & corroboration** (`magi, AimResultSignals, Corroboration, FoundInSource, WebGuide` -> clickd All four stages + citations): Selects retrieved web pages whose facts corroborate cleanly and lifts concise answers, tables and lists into AI Overviews and AI Mode.

## Signal Families

| Family | Sets | What it governs |
| --- | ---: | --- |
| Retrieval & crawl eligibility | 6 | Before any quality twiddler or AI summarizer sees a page, crawlers must fetch server-rendered HTML, obey canonicals, and retrieve passages by semantic embeddings and lexical terms. |
| Base rankers & salient terms | 9 | Mustang base scoring, salient term extraction from titles, headings, body copy and internal link anchors, plus multi-pass semantic re-ranking. |
| Quality, expertise & authority twiddlers | 13 | Separate post-retrieval adjustments for expertise, topic authority, first-hand human voices, hidden gems, authenticity, page category (Orbit) and YMYL scrutiny. |
| Site sections & citation originality | 8 | Index-level quality attributes attached per URL prefix (sitechunks) and citation-based originality that distinguishes primary data from derivative rewrites. |
| Page and query twins | 17 | Systems recorded on both the document and the query so a page is judged against what that specific search demands, such as topic authority or freshness. |
| AI Overviews, AI Mode & corroboration | 34 | Generative search sets (magi, AI Mode, FoundInSource and Web Guide) that ground answers on retrieved web results and check cross-source corroboration. |
| Demotions, spam & compliance | 7 | Site-wide and result-level demotions for scaled near-copy pages, hacked markup, unbacked review stars, copyright notices and explicit-content filters. |
| Language, locality & user context | 5 | Language profiles, geographic service fit and user topic affinity that match a page to who is asking and where they are. |

## 19 Page-Applicable Signal Systems

### Indexability & document envelope
- **Schema family:** `PerDocData / indexing envelope`
- **Pass:** Pass 1: Retrieval · **Control:** direct · **Page-query twin:** No
- **What it does:** Whether crawlers and AI search bots can fetch a clean 200 HTML document with self-referencing canonicals and real body words before client scripts run.
- **What moves it:** Serve complete HTML from the server, keep robots.txt open to search and AI crawlers, settle http/https/www to one origin, and set self canonicals.
- **clickd rules:** `robots-open`, `robots-open-to-ai`, `ai-crawlers-served`, `loads`, `indexable`, `canonical`, `content-in-html`, `one-address`
- **Agent prompt:** "Check example.com with clickd_signals and fix every retrieval or non-JS HTML blocker so search and AI crawlers read full server HTML."

### Semantic passage retrieval (RankEmbed)
- **Schema family:** `RankEmbed / passage embeddings`
- **Pass:** Pass 1: Retrieval · **Control:** direct · **Page-query twin:** Yes
- **What it does:** Retrieves candidate pages and passages by vector meaning even when a searcher phrases the problem with different words than the page title.
- **What moves it:** Write clear, self-contained 80-to-150-word passages under specific subheadings so each section embeds cleanly around one concrete concept.
- **clickd rules:** `content-in-html`, `depth`, `question-headings`, `answer-first`
- **Agent prompt:** "Use clickd_signals on example.com to find thin or unfocused pages and restructure their sections into clear, self-contained passages."

### Base document scorer (Ascorer)
- **Schema family:** `mustang.servlets.approximate_ascorer.ApproxRanklabFeatures`
- **Pass:** Pass 2: Base & salience · **Control:** direct · **Page-query twin:** Yes
- **What it does:** Mustang computes each candidate page’s foundational query score from document zones (title, headings, body text), internal link graph depth and anchor text.
- **What moves it:** Keep important pages within three clicks of home, use one clear h1, write focused 15-to-65-character titles, and link related pages inside body prose.
- **clickd rules:** `title`, `one-h1`, `description`, `within-three-clicks`, `no-orphans`, `linked-in-context`
- **Agent prompt:** "Run clickd_signals on example.com and fix pages buried deeper than three clicks or missing contextual internal links."

### Salient terms & anchor coherence
- **Schema family:** `quality_salient_terms.SalientTerm`
- **Pass:** Pass 2: Base & salience · **Control:** direct · **Page-query twin:** Yes
- **What it does:** Summarizes what a page is truly about from its title, headings, body terms and the anchor words other pages use when linking to it.
- **What moves it:** Align your title tag, h1, opening paragraph and incoming internal link anchors on the same core subject terms instead of generic "learn more" links.
- **clickd rules:** `title`, `one-h1`, `linked-in-context`
- **Agent prompt:** "Run clickd_signals({ site: "example.com" }) to find pages whose title, h1 and incoming link anchors disagree on salient terms, then align them in code."

### Semantic re-rankers (RankBrain & DeepRank)
- **Schema family:** `quality_twiddler.RankBrainTwiddlerResultSignals / DeeprankScores`
- **Pass:** Pass 3: Quality twiddlers · **Control:** direct · **Page-query twin:** Yes
- **What it does:** Transformer and concept passes revisit the top 20 to 30 retrieved documents and score whether specific passages actually satisfy the question behind the search.
- **What moves it:** Phrase subheadings as real user questions and place a direct 25-to-90-word answer immediately underneath before expanding into edge cases.
- **clickd rules:** `question-headings`, `answer-first`, `answers-the-question`
- **Agent prompt:** "Check our guide pages with clickd_signals and rewrite slow openings so every question h2 starts with a direct 40-to-60-word answer."

### Final list ranker & relevance feedback
- **Schema family:** `ngs.web.for_loop.WebFlrResultSignals / RelevanceFeedbackResultSignals`
- **Pass:** Pass 3: Quality twiddlers · **Control:** indirect · **Page-query twin:** Yes
- **What it does:** Re-orders an already scored result set by comparing candidates against top-performing reference results and query-specific layout settings.
- **What moves it:** Cover the complete task a searcher expects for that intent (comparison table, clear pricing/steps, working action) so visitors do not pogo-stick back.
- **clickd rules:** `has-table`, `liftable-blocks`, `next-step`
- **Agent prompt:** "Compare our key landing pages against rivals with clickd_rivals and clickd_signals to add missing comparison tables and clear next steps."

### Page category & YMYL classifier (Orbit)
- **Schema family:** `quality_orbit.asteroid_belt.DocumentIntentScoresRanklab`
- **Pass:** Pass 3: Quality twiddlers · **Control:** direct · **Page-query twin:** Yes
- **What it does:** Classifies every document by format and risk level (tutorial, product, forum, local service, or YMYL health, finance and legal) so the right twiddlers fire.
- **What moves it:** Match your JSON-LD schema type and page structure to the page’s real job, and apply strict author and citation rigor on any YMYL money, health or legal page.
- **clickd rules:** `structured-data`, `schema-fits`, `named-publisher`, `sources-shown`
- **Agent prompt:** "Run clickd_signals on example.com to inspect each page’s Orbit role classification and fix every YMYL or commercial page missing its required trust signals."

### Expertise twiddler
- **Schema family:** `twiddler.expertise.ExpertiseTwiddlerDocFeatures`
- **Pass:** Pass 3: Quality twiddlers · **Control:** direct · **Page-query twin:** No
- **What it does:** Adjusts rankings after base scoring using document-level signals of domain rigor: named authorship, verifiable primary citations and precise technical detail.
- **What moves it:** Name the author or publishing organization in visible bylines and Article schema, link primary external sources in body copy, and cut vague sales puffery.
- **clickd rules:** `named-publisher`, `sources-shown`, `plain-claims`, `claims-supported`, `depth`
- **Agent prompt:** "Find every article on example.com missing named authorship or visible primary sources using clickd_signals and wire both into our article template."

### Topic authority twiddler
- **Schema family:** `quality_twiddler.TopicAuthorityTwiddlerDocFeatures`
- **Pass:** Pass 3: Quality twiddlers · **Control:** indirect · **Page-query twin:** Yes
- **What it does:** Evaluates authority topic by topic rather than domain-wide, pairing the site’s depth on a subject cluster with the query’s topic settings.
- **What moves it:** Build tightly interlinked topic hubs with breadcrumbs and contextual cross-links instead of scattering orphan posts across unrelated subjects.
- **clickd rules:** `linked-in-context`, `no-orphans`, `breadcrumb`, `within-three-clicks`
- **Agent prompt:** "Use clickd_topics and clickd_signals on example.com to find unlinked topic clusters and connect every spoke page to its hub with contextual anchors."

### Authenticity, human voices & hidden gems
- **Schema family:** `AuthenticityTwiddlerResultLevelSignals / HumanVoiceResultInfo / NaturalPearls`
- **Pass:** Pass 3: Quality twiddlers · **Control:** direct · **Page-query twin:** Yes
- **What it does:** Boosts first-hand practitioner experience, real photographs, concrete measurements and genuine human writing over generic, mass-generated summaries.
- **What moves it:** Include real content images with descriptive alt text, concrete measured figures, and strip stock AI phrasing, hidden watermarks and unrendered markdown.
- **clickd rules:** `has-image`, `image-alt`, `plain-claims`
- **Agent prompt:** "Run clickd_tells and clickd_signals on example.com to strip stock AI filler and add real tables, measured examples and described images."

### Section-level site quality (NSR Sitechunks)
- **Schema family:** `QualityNsrNsrData / NsrSitechunkSignals`
- **Pass:** Index & sitechunks · **Control:** direct · **Page-query twin:** No
- **What it does:** Computes site quality scores by URL directory prefix (sitechunks) as well as domain-wide, so a bloated folder of thin or near-copy pages drags down that section.
- **What moves it:** Audit quality folder by folder (/blog, /locations, /integrations); merge or rewrite doorway templates that share over half their text.
- **clickd rules:** `pages-are-distinct`, `depth`, `no-orphans`
- **Agent prompt:** "Inspect sitechunk health on example.com with clickd_signals and consolidate or rewrite any URL directory weakened by near-copy or thin pages."

### Web health & citation-based originality
- **Schema family:** `twiddler.web_health.WebHealthTwiddlerResultSignals / CitationBasedOriginality`
- **Pass:** Pass 3: Quality twiddlers · **Control:** direct · **Page-query twin:** No
- **What it does:** Distinguishes pages that publish original figures, benchmarks, datasets and primary reporting from derivative pages that merely restate others.
- **What moves it:** Put original figures in HTML tables, show methodology and dates clearly, cite primary sources, and avoid duplicating your own pages.
- **clickd rules:** `has-table`, `liftable-blocks`, `sources-shown`, `pages-are-distinct`
- **Agent prompt:** "Use clickd_signals on example.com to find prose-only guides that lack structured data tables or original benchmarks, and add verifiable data tables."

### Query-paired freshness
- **Schema family:** `freshness.DocSignals`
- **Pass:** Pass 3: Quality twiddlers · **Control:** direct · **Page-query twin:** Yes
- **What it does:** Pairs a document’s publish and update dates against whether the query actually demands recent information. Evergreen queries hold multi-year-old pages.
- **What moves it:** Show accurate visible update dates and matching Article dateModified schema when facts truly change; never auto-bump dates without updating substance.
- **clickd rules:** `dated`
- **Agent prompt:** "Check our guides with clickd_signals and clickd_traffic to refresh stale facts and set accurate visible <time datetime> and dateModified schema."

### Entity identity & cross-web profiles
- **Schema family:** `AuthorityData / DomainClassification / EndorsementData`
- **Pass:** Index & sitechunks · **Control:** direct · **Page-query twin:** No
- **What it does:** Ties a domain to a known organization, local business or publisher across the web so search engines and assistants resolve who stands behind the site.
- **What moves it:** Declare Organization, Person or LocalBusiness JSON-LD on the home page with sameAs links to official social profiles and link those profiles visibly.
- **clickd rules:** `structured-data`, `schema-fits`, `profiles-in-data`, `profiles-linked`
- **Agent prompt:** "Check entity signals on example.com with clickd_signals and wire Organization schema with verified sameAs profile URLs on the home page."

### AI Overviews & AI Mode rankers (magi)
- **Schema family:** `superroot.magi.MagiRanklabSignals / AimRanklabResultSignals`
- **Pass:** Pass 4: AI corroboration · **Control:** direct · **Page-query twin:** Yes
- **What it does:** Selects and orders retrieved web documents to ground AI Overviews and AI Mode answers, including dedicated list and shopping classifiers.
- **What moves it:** Pass web retrieval first (server HTML + open AI bots + top organic relevance), then structure facts in clean lists, tables and Product/Service JSON-LD.
- **clickd rules:** `robots-open-to-ai`, `ai-crawlers-served`, `content-in-html`, `answer-first`, `liftable-blocks`, `has-table`
- **Agent prompt:** "Run clickd_signals on example.com to find pages blocked from AI Mode grounding by missing server HTML, closed AI bots or unliftable prose."

### AI Mode corroboration & FoundInSource
- **Schema family:** `CorroborationRankingSignals / FoundInSourceRanklabSignals`
- **Pass:** Pass 4: AI corroboration · **Control:** direct · **Page-query twin:** No
- **What it does:** Checks whether specific claims in a generated answer are directly supported in the source page’s text and consistent with structured data and peer sources.
- **What moves it:** Keep visible numbers, prices, FAQs and reviews identical to JSON-LD fields, state unambiguous facts under question headings, and cite primary sources.
- **clickd rules:** `faq-matches-page`, `ratings-are-real`, `sources-shown`, `plain-claims`, `claims-supported`, `answer-first`
- **Agent prompt:** "Use clickd_signals to catch schema-to-page mismatches, unbacked claims or missing source links that weaken AI answer corroboration."

### Web Guide & cluster relevance oracle (Libra)
- **Schema family:** `quality.libra.proto.LibraResultSignals / RelevanceOracleTwiddlerResultInputSignals`
- **Pass:** Pass 4: AI corroboration · **Control:** direct · **Page-query twin:** No
- **What it does:** Groups results into sub-topic clusters for exploratory queries and runs a relevance oracle pass to drop pages that drift from their promised heading.
- **What moves it:** Keep each page focused on one clear intent, match title and h1 tightly to body sections, and use BreadcrumbList schema to expose hierarchy.
- **clickd rules:** `title`, `one-h1`, `breadcrumb`, `pages-are-distinct`
- **Agent prompt:** "Check topic and heading alignment on example.com with clickd_signals so every page stays tightly focused on one search sub-topic."

### Scaled content, fake review & compliance demotions
- **Schema family:** `FringeResultRanklabSignals / HackedsitesResultAnnotation / DmcaSiteTwiddlerSignals`
- **Pass:** Pass 3: Quality twiddlers · **Control:** direct · **Page-query twin:** Yes
- **What it does:** Demotes doorway template clones, self-serving rating stars with no visible reviews, deceptive claims and compromised markup.
- **What moves it:** Eliminate city-swapped doorway clones, remove AggregateRating schema where reviews are not shown on the page, and replace hype claims with checkable facts.
- **clickd rules:** `pages-are-distinct`, `ratings-are-real`, `plain-claims`, `direct-links`
- **Agent prompt:** "Audit example.com with clickd_signals for scaled near-copy templates, unbacked rating stars and unsupported sales claims, then clean them up."

### Local service & language fit
- **Schema family:** `UlpResultSignals / TopicAffinityTwiddlerResultSignals`
- **Pass:** Pass 3: Quality twiddlers · **Control:** direct · **Page-query twin:** Yes
- **What it does:** Matches language declarations, geographic service evidence and actionable local contact paths when a query carries local or language intent.
- **What moves it:** Declare accurate LocalBusiness schema, publish crawlable phone and address details, and provide working tap-to-call and quote forms.
- **clickd rules:** `phone-link`, `next-step`, `structured-data`, `schema-fits`
- **Agent prompt:** "Run clickd_signals and clickd_check({ kind: "locations", url: "example.com" }) to verify local business schema, phone links and contact paths."

## Page-Role Playbooks (Orbit)

### YMYL: health, money, tax & law
- **Examples:** Clinical guides, wealth & lending advice, tax rules, legal rights, safety standards
- **Activates:** Orbit YMYL classifier, Expertise twiddler, Fringe content check, Web health & citations, AI Mode corroboration
  - Named author or specialist organization in both visible byline and Article schema
  - Visible links to primary statutory, clinical or regulatory sources in the main copy
  - Direct, hedged factual answers with zero unsupported superlatives or guarantees
  - Accurate visible review/update date when regulations or thresholds change
- **Skip busywork:** Do not chase conversational slang or publish thin FAQ stubs without primary citations; YMYL queries weight institutional expertise and verifiable sources.
- **Rules:** `named-publisher`, `sources-shown`, `plain-claims`, `claims-supported`, `dated`, `answer-first`

### Practitioner & technical guide
- **Examples:** How-to tutorials, engineering deep dives, buying guides, industry benchmarks
- **Activates:** Topic authority twiddler, RankBrain & DeepRank, Salient terms, Citation-based originality, FoundInSource
  - Question-phrased h2 headings with a 25-to-90-word direct answer right beneath the first question
  - HTML comparison tables, numbered steps or specification lists that assistants can lift cleanly
  - Contextual internal links connecting the guide to its parent topic hub and sibling guides
  - Original measured numbers, code or worked examples rather than generic AI prose
- **Skip busywork:** Do not auto-bump dateModified every week if the guide’s facts did not change; evergreen technical pages rank for years when substance holds.
- **Rules:** `question-headings`, `answer-first`, `has-table`, `liftable-blocks`, `linked-in-context`, `sources-shown`

### Product, service & local landing page
- **Examples:** SaaS product pages, Shopify PDPs, contractor service pages, pricing & booking pages
- **Activates:** Ascorer base ranker, Shopping & Magi classifiers, Salient terms, Sitechunk quality, Local & action checks
  - Matching Product, Service or LocalBusiness JSON-LD whose prices, availability and ratings match visible HTML
  - Focused title and single h1 aligned with the exact service or product terms used in internal link anchors
  - Distinct, specific substance on every location or variant page (never city-swapped doorway templates)
  - Working conversion path: checkout, quote form with real action, or tap-to-call link for local trades
- **Skip busywork:** Do not stuff 2,000 words of blog fluff below a product grid or spin 50 near-identical town pages that drag down your /locations sitechunk.
- **Rules:** `schema-fits`, `pages-are-distinct`, `ratings-are-real`, `next-step`, `phone-link`, `title`

### First-hand case study, review & comparison
- **Examples:** Tested product reviews, /vs/ competitor pages, customer case studies, field notes
- **Activates:** Authenticity twiddler, Human voices, Hidden gems (Natural Pearls), For Loop Ranker, Web Guide
  - Real photographs, screenshots or charts in HTML img/figure tags with descriptive alt text
  - Side-by-side HTML comparison tables stating honest trade-offs, including when an alternative fits better
  - Specific tested versions, dates and measured outcomes instead of stock AI adjectives
- **Skip busywork:** Never fabricate AggregateRating schema or write one-sided /vs/ hit pieces; unbacked claims fail both user trust and corroboration checks.
- **Rules:** `has-image`, `image-alt`, `has-table`, `plain-claims`, `ratings-are-real`

### Documentation, API & specification
- **Examples:** /docs/*, API endpoints, CLI flags, integration setup guides, changelogs
- **Activates:** RankEmbed, Salient terms, FoundInSource, Breadcrumb hierarchy
  - Server-rendered HTML (not an empty client-rendered docs shell) and an up-to-date /llms.txt index
  - Exact parameter tables, copyable code blocks and one unambiguous h1 per endpoint or concept
  - BreadcrumbList schema and clean canonical URLs without duplicate version or trailing-slash traps
- **Skip busywork:** Do not pad concise API reference pages to hit arbitrary blog word counts; reference pages win by precision, tables and clean structure.
- **Rules:** `content-in-html`, `one-h1`, `liftable-blocks`, `breadcrumb`, `canonical`, `llms-txt`

## Frequently Asked Questions

### Does Google really use 300+ ranking factors on every web page?

No. Documented RankLab schemas list 305 signal sets across Google's wider search stack (167 per result and 138 per query), including video, maps, shopping, news and query-understanding modules. Roughly 48 signal sets apply directly to standard web pages (31 scoring sets), alongside 34 sets for AI Overviews, AI Mode and source corroboration.

### Does this signal lens change clickd’s 0-to-100 score?

No. clickd’s 45-rule 0-to-100 score remains stable across Access (35%), Understand (30%), Trust (20%) and Act (15%). Ranking signal diagnostics sit alongside the rulebook as a companion lens (via clickd_signals) to inspect URL-prefix sitechunks, Orbit page-role fit, salient term alignment and AI corroboration.

### What is a sitechunk and why can one folder drag down rankings?

Quality systems such as NSR compute quality attributes by URL directory prefix (for example /blog, /locations or /integrations) as well as domain-wide. When a folder accumulates dozens of city-swapped doorway clones, thin stubs or unedited AI prose, that section’s sitechunk weakens even if your home page is strong.

### What are page-query twins in modern search ranking?

At least 17 signal families record matching structures on both the document and the query, including topic authority, freshness and category intent. A page is not scored in a vacuum: freshness boosts matter only when the query demands recent facts, while YMYL expertise checks fire hardest when the query touches health, money or law.

### How do AI Overviews and AI Mode decide which pages to cite?

Generative search pipelines retrieve candidate pages from the core web index first, then run dedicated ranking and corroboration passes (such as magi, Corroboration and FoundInSource) that check whether concise claims, numbers, tables and JSON-LD fields match visible source text and peer sources.

### How can my coding agent check these signals on our site?

Connect your agent to clickd over MCP at clickd.com/mcp/all (or install the open skills with npx skills add subinternal/clickd) and call clickd_signals with { site: "example.com" } for a full sitechunk and page-role audit, or { url: "https://example.com/page" } to test any single live URL.

## Sources

- [In-depth guide to how Google Search works](https://developers.google.com/search/docs/fundamentals/how-search-works) (Google Search Central): How crawl, indexing, semantic retrieval and ranking passes evaluate web pages
- [AI features and your website](https://developers.google.com/search/docs/appearance/ai-features) (Google Search Central): How AI Overviews and AI Mode ground answers on retrieved web pages and citations
- [Creating helpful, reliable, people-first content](https://developers.google.com/search/docs/fundamentals/creating-helpful-content) (Google Search Central): How expertise, first-hand experience and people-first substance are evaluated
- [Spam policies for Google web search](https://developers.google.com/search/docs/essentials/spam-policies) (Google Search Central): Scaled content abuse, doorway pages and misleading structured data policies
- [Understand JavaScript SEO basics](https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics) (Google Search Central): Why complete server-rendered HTML matters before client scripts run
- [Introduction to structured data markup](https://developers.google.com/search/docs/appearance/structured-data/intro-structured-data) (Google Search Central): How JSON-LD helps search engines classify page entities and verify visible facts
- [RFC 9309: Robots Exclusion Protocol](https://www.rfc-editor.org/rfc/rfc9309) (IETF): How search and AI crawlers evaluate robots.txt rules path by path
