Skip to content
Fresh

ChatGPT Search Configuration

When ChatGPT searches the web, it passes results through a reranking model before generating a response. The model, key parameters, and filtering logic documented here were discovered through DevTools inspection of ChatGPT's network traffic during search-enabled conversations.


The Reranking Model: ret-rr-skysight-v3

ChatGPT uses a model internally labeled ret-rr-skysight-v3 to rerank search results before they are passed to the response-generating LLM.

This is not the same model that generates the response. It is a specialized retrieval reranker -- its only job is to decide which retrieved documents are most relevant to the query and in what order they should be presented to the generation model.

What We Know About Skysight-v3

  • It is a cross-encoder reranker (evaluates query-document pairs, not documents in isolation)
  • It processes the full text of retrieved snippets, not just titles and URLs
  • It produces a relevance score per document that determines citation priority
  • It appears to be a distilled model optimized for latency (sub-100ms inference per batch)

Key Parameters

The following parameters were observed in ChatGPT's search configuration:

Freshness Scoring

ParameterObserved ValueFunction
freshness_weightVariable by query typeMultiplier applied to recency signal
freshness_decayExponentialHow quickly freshness score drops with age
freshness_overrideBooleanTriggered for breaking news queries, overrides base relevance

Freshness is not a binary signal. It is a continuous decay function -- content published 1 hour ago scores higher than content published 1 day ago, which scores higher than content from 1 week ago. The decay rate depends on query type (fast decay for news, slow decay for informational).

Query Intent Classification

Intent TypeFreshness WeightSource DiversityCitation Count
InformationalLowHigh (multiple perspectives)3-6
NavigationalNoneLow (target site preferred)1-2
TransactionalModerateMedium2-4
News/Current EventsVery HighHigh (multiple sources)4-8
How-To/TutorialLowMedium2-4

Vocabulary Search Parameters

ParameterFunction
vocab_search_enabledWhether the reranker uses vocabulary-based matching in addition to neural scoring
vocab_match_boostBoost applied when query terms appear exactly in the document
min_vocab_overlapMinimum percentage of query terms that must appear in a document for it to remain in the candidate set

Vocabulary Matching Still Matters

Despite the neural reranker, ChatGPT's search still applies a vocabulary overlap filter. Documents that do not contain a minimum percentage of query terms can be filtered out before the reranker even scores them. Exact keyword matches are still load-bearing.


Multi-Layer Filtering

ChatGPT's search applies filters at multiple stages:

Layer 1: Query Processing

  • Query is decomposed into sub-queries (see RRF & AI Citations)
  • Intent is classified
  • Freshness requirements are determined
  • Language is detected

Layer 2: Retrieval Filtering

  • Web search API returns initial candidate set (typically 20-50 results per sub-query)
  • Duplicate URLs are removed
  • Domain diversity filter ensures no more than 2-3 results from the same domain per sub-query
  • Minimum content length filter removes thin pages

Layer 3: Reranking (Skysight-v3)

  • Cross-encoder scores each query-document pair
  • Freshness decay is applied
  • Vocabulary match boost is added
  • Results are re-sorted by combined score
  • Top-K results are selected (K varies by query complexity, typically 5-15)

Layer 4: RRF Fusion

  • Reranked lists from all sub-queries are fused using RRF (k=60)
  • Documents appearing in multiple lists get cumulative scores
  • Final ranked list is produced

Layer 5: Safety and Quality Gates

  • YMYL content triggers elevated fact-checking
  • Known misinformation domains are suppressed
  • Content with excessive ads or popup patterns is deprioritized
  • Paywall detection affects citation formatting

Layer 6: Citation Selection

  • Top-ranked documents from the fused list become citations
  • Citation count depends on query type and response complexity
  • Citations are ordered by relevance, not alphabetically
  • Each citation is linked to a specific claim in the response

Optimization Recommendations

For Maximum Relevance Score

  1. Include exact query terms in your content. The vocabulary overlap filter is a gate. If your content does not contain the words people search for, the neural reranker never gets a chance to evaluate it.

  2. Structure content for cross-encoder evaluation. The reranker evaluates query-document pairs. Make your content's relevance to potential queries immediately obvious -- clear topic statements, direct answers, explicit connections between concepts.

  3. Maintain topical focus per page. The reranker scores the retrieved snippet, not the whole page. Focused pages that dedicate their content to a single topic will produce higher-relevance snippets than broad pages covering many topics.

For Freshness Advantage

  1. Update content with genuine new information. Adding a current-year date without changing content does not improve freshness scoring. Add new data, updated statistics, or references to recent events.

  2. Publish time-sensitive content fast. For news and trending topics, the freshness decay is steep. Being first matters more than being comprehensive.

  3. Use dateModified schema accurately. ChatGPT's system reads structured data. An accurate dateModified value helps the freshness scorer.

For Citation Selection

  1. Build topic clusters. RRF fusion rewards domains that appear across multiple sub-queries. This is the single highest-leverage strategy. (See RRF & AI Citations for the math.)

  2. Produce content at a consistent pace. Domain diversity filters limit how many results from one domain appear per sub-query. But across 5-10 sub-queries, a domain with broad coverage can still accumulate significant RRF score.

  3. Make claims clearly attributable. ChatGPT links each citation to a specific claim. If your content makes clear, quotable statements backed by data, it is easier for the system to cite you for a specific point.

The Priority Stack

If you can only optimize for one thing: build topic clusters. If two things: clusters + exact keyword coverage. If three: clusters + keywords + freshness. Everything else is incremental.