Hybrid Search
How hybrid search combines keyword (BM25) and vector (semantic) retrieval, fuses the two rankings with Reciprocal Rank Fusion, and reranks the top results — the retrieval pattern behind modern search and AI answers.
Hybrid search runs two retrieval methods at once — keyword/lexical search (BM25 over an inverted index, which matches exact terms) and vector/semantic search (embedding similarity, which matches meaning) — then merges the two result lists into a single ranking. Because the two produce differently-scaled scores, the merge is usually done with Reciprocal Rank Fusion (RRF), which fuses by rank position rather than raw score using a constant and candidate depth that are configurable system parameters, not fixed values; many stacks then rerank the fused top-k with a cross-encoder. The reason it wins: each method catches recall the other misses — keyword nails exact strings (SKUs, error codes, proper nouns), vector catches synonyms and paraphrase — though the size of that gain is corpus- and query-dependent, not a guaranteed win on every benchmark. It's the standard production retrieval pattern (Microsoft, Google, Weaviate, and Elastic all ship it) and the retrieval layer inside modern RAG. For SEO there's no hybrid-search knob: keyword presence still matters for exact-match recall AND topically coherent, self-contained passages matter for semantic recall — you need both, which is exactly what hybrid retrieval rewards.
TL;DR — Hybrid searchHybrid search runs keyword (lexical/BM25) search and vector (semantic) search together, then merges the two result lists into one ranking — commonly with Reciprocal Rank Fusion — so it catches both exact-term matches and meaning-based matches that either method alone would miss. runs two kinds of search at the same time and blends the results: old-school keyword search (match the exact words) and modern vector searchVector search finds content by comparing the meaning of a query against stored content as numerical vectors, retrieving the closest ones in a high-dimensional embedding space. At scale it uses approximate nearest neighbor (ANN) algorithms — not exact comparison — to search billions of vectors in milliseconds. (match the meaning). Keyword search is great at exact things like product codes and brand names; vector searchVector search finds content by comparing the meaning of a query against stored content as numerical vectors, retrieving the closest ones in a high-dimensional embedding space. At scale it uses approximate nearest neighbor (ANN) algorithms — not exact comparison — to search billions of vectors in milliseconds. is great at understanding what you meant even when you used different words. Doing both and merging the answers usually beats doing either one alone — which is why nearly every serious search system, and the AI answers built on top of them, works this way. (How well it wins depends on your content and your searchers’ queries — there’s no single number that holds for every site.)
What hybrid search is
Hybrid search combines lexical and vector retrieval signals, often merging or rerankingReranking is the second stage of a retrieval pipeline: after a cheap, broad first pass pulls a candidate set of documents or passages, a slower, more precise model re-scores and reorders that shortlist by true relevance before the results are served or handed to an LLM. their result sets. Evidence for this claim Hybrid search can combine lexical and vector retrieval in one search workflow. Scope: Elastic's documented implementation; available retrievers and scoring controls vary by engine. Confidence: high · Verified: Elastic: Hybrid search Fusion method and weights are system choices, not universal constants. Evidence for this claim Reciprocal rank fusion can merge separately ranked text and vector result lists without requiring their raw scores to share a scale. Scope: Azure AI Search's documented hybrid ranking implementation; fusion choices differ across systems. Confidence: high · Verified: Microsoft: Hybrid search scoring
There are two very different ways to find content.
The old way is keyword search: the engine looks for pages that contain the words you typed. It’s precise about exact terms — if you search a specific error code or a part number, it finds pages with that exact string. But it’s literal. Search “how to fix a slow website” and a page titled “improve site performance” might get missed, because the words don’t line up even though the meaning does.
The newer way is vector search, which matches by meaning instead of exact words. It turns your query and every page into a list of numbers (a vector) that captures what the text is about, then finds the closest matches. So “fix a slow website” and “improve site performance” land near each other, and it finds the match. But vector search can fumble the literal stuff — an exact SKU or a rare proper noun can slip past it.
Hybrid search just does both at once and merges the two lists of results. You get the exact-match precision of keyword search and the meaning-matching of vector search, in one ranking.
Why not just pick one?
Because each method has a blind spot the other covers:
- Keyword search catches exact terms — error codes, SKUs, brand and product names, that one specific phrase — but misses synonyms and paraphrases.
- Vector search catches meaning — synonyms, rephrasings, the same idea in different words — but can miss an exact literal string.
Run them together and the misses cancel out. That’s the whole pitch.
How the results get merged
Here’s the tricky part. The two searches score results on totally different scales — keyword search gives one kind of number, vector search gives another — so you can’t just add them up. The standard trick is Reciprocal Rank Fusion (RRF): instead of comparing the raw scores, it looks at where each result ranked in each list (1st, 2nd, 3rd…) and blends those positions. A page that ranks high in both lists rises to the top. It’s a clean way to combine two rankings that don’t speak the same numeric language.
Why this matters for you
This is the retrieval pattern behind modern search and behind AI answers — the step where an AI tool finds the passages it’s going to write its answer from usually runs hybrid retrieval under the hood.
The practical takeaway is reassuring: there’s no special “hybrid search” trick to chase. Keyword presence still matters (so your exact terms should actually appear in your content), and clear, genuinely-on-topic writing matters (so the meaning-based side can find you). Hybrid search rewards content that’s strong on both — which is just good content. You’re not gaming a formula; you’re making sure both halves of the system can find you.
Want the real mechanics — BM25Semantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it., dense vs. sparse vectors, how RRF actually works, rerankingReranking is the second stage of a retrieval pipeline: after a cheap, broad first pass pulls a candidate set of documents or passages, a slower, more precise model re-scores and reorders that shortlist by true relevance before the results are served or handed to an LLM., and how Google and Bing use this? Switch to the Advanced tab.
TL;DR — Hybrid searchHybrid search runs keyword (lexical/BM25) search and vector (semantic) search together, then merges the two result lists into one ranking — commonly with Reciprocal Rank Fusion — so it catches both exact-term matches and meaning-based matches that either method alone would miss. runs lexical retrieval (BM25Semantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it. over an inverted indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. — exact-term matching, sparse representations) alongside dense vector retrieval (embeddingEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords. similarity via ANN — semantic matching), typically in parallel though exact orchestration is product-specific, then fuses the two result lists into one ranking. Because the two produce incompatibly-scaled scores, fusion is usually rank-based — Reciprocal Rank Fusion (RRF), with its constant and candidate depth set as configurable system parameters, not universal values — rather than score-based, though normalized weighted fusion (Weaviate, OpenSearch) is a documented alternative; many stacks then rerank the fused top-k with a cross-encoder for precision. It wins because the two methods have complementary recall: lexical nails exact strings (SKUs, codes, proper nouns), dense catches paraphrase and synonymy — but that gain is corpus- and query-dependent, not a guaranteed win over either method alone on every benchmark. It’s the standard production retrieval pattern (Microsoft, Google, Weaviate, Elastic all ship it) and the retrieval layer of modern RAGRAG is the retrieve-then-generate pattern behind AI search: the system retrieves relevant passages from an external index at query time, injects them into the model's context, and generates an answer grounded in those sources — without changing the model's weights.. There’s no “hybrid-search optimization” — keyword presence still drives exact-match recall and topical, self-contained passages drive semantic recall. You need both.
Where hybrid search sits
Official implementations document several hybrid patterns, so the term does not identify one fixed architecture. Evidence for this claim Hybrid search can combine lexical and vector retrieval in one search workflow. Scope: Elastic's documented implementation; available retrievers and scoring controls vary by engine. Confidence: high · Verified: Elastic: Hybrid search Claims about a particular consumer search product require product-specific evidence. Evidence for this claim Reciprocal rank fusion can merge separately ranked text and vector result lists without requiring their raw scores to share a scale. Scope: Azure AI Search's documented hybrid ranking implementation; fusion choices differ across systems. Confidence: high · Verified: Microsoft: Hybrid search scoring
Keyword search and vector searchVector search finds content by comparing the meaning of a query against stored content as numerical vectors, retrieving the closest ones in a high-dimensional embedding space. At scale it uses approximate nearest neighbor (ANN) algorithms — not exact comparison — to search billions of vectors in milliseconds. are usually presented as rivals — the “old way” vs. the “new way.” In production they’re not rivals; they’re teammates. Hybrid search is the arrangement that puts them on the same team.
To be precise about the pieces:
- Lexical (keyword) retrieval — the classic inverted index, scored with BM25 (the probabilistic ranking function that’s been the retrieval baseline since 1994). It matches terms. Its representation of a document is sparse — a huge vector that’s mostly zeros, with weights on the specific words present.
- Dense (vector) retrieval — the vector-searchVector search finds content by comparing the meaning of a query against stored content as numerical vectors, retrieving the closest ones in a high-dimensional embedding space. At scale it uses approximate nearest neighbor (ANN) algorithms — not exact comparison — to search billions of vectors in milliseconds. side. It compares embeddingEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords. vectors with a distance metric (usually cosine similarity), finding the nearest neighbors in a high-dimensional space using approximate nearest neighbor (ANN) algorithms. Its representation is dense — every dimension carries meaning. This is the mechanism most people mean when they say semantic searchSemantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it., though semantic searchSemantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it. is the goal and vector searchVector search finds content by comparing the meaning of a query against stored content as numerical vectors, retrieving the closest ones in a high-dimensional embedding space. At scale it uses approximate nearest neighbor (ANN) algorithms — not exact comparison — to search billions of vectors in milliseconds. is one method for it.
Hybrid search runs both and reconciles them. (Some systems generalize the idea: Google’s Vertex AI Vector Search, for instance, supports dense, sparse, and hybrid embeddingsEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords. — hybrid being the two combined.)
Lexical search retrieves exact words with BM25 while dense search retrieves semantic matches with vectors. Reciprocal Rank Fusion combines the two rank lists rather than adding incompatible raw scores. A reranker then makes a final precision pass over the merged candidates. Implementations vary, so this is a common production pattern rather than a universal fixed architecture.
© Patrick Stox LLC · CC BY 4.0 ·
Why hybrid beats either method alone
The argument is about complementary recall. Each retriever fails in a way the other doesn’t:
- Pure keyword search misses semantic variants. “How to fix a leaky faucet” and “repairing a dripping tap” share almost no words but mean the same thing — BM25 scores them as unrelated; a vector model scores them as near-identical.
- Pure vector search misses exact literals. Ask for a specific error code, a part number, a rare proper noun, or a precise phrase, and dense retrieval — which is built to generalize meaning — can smear right past the exact tokenA token is the smallest unit of text (or image/audio/video) an LLM processes — roughly 4 characters, or about ¾ of an English word. A context window is the maximum number of tokens (input plus output) a model can hold at once, like its short-term memory. you needed. This is a well-known failure mode: dense retrievers are weak on out-of-vocabulary terms and exact-match queries.
Combine them and the blind spots cover each other — for a mixed query workload, on a corpus where both exact terms and paraphrase matter. Microsoft’s Azure AI SearchAI search uses large language models and retrieval-augmented generation (RAG) to synthesize an answer from multiple sources rather than returning a ranked list of links. Examples include Google AI Overviews, ChatGPT Search, and Perplexity. team frames hybrid as the default because “vector and keyword retrieval methods… are combined so that you get the best of both approaches.” On the research side, the paper that kicked off the dense-retrieval era — Dense Passage RetrievalChunking is splitting a document into smaller passages so AI systems can embed, index, and retrieve the single most relevant piece — not the whole page — in response to a query. It's a foundational step in RAG pipelines and the conceptual cousin of Google's passage ranking. (DPR, Karpukhin et al., EMNLP 2020) — beat a strong Lucene-BM25 baseline by 9–19% absolute on top-20 passage retrieval accuracy, and the same literature repeatedly finds that combining dense with BM25 beats either alone on mixed query workloads.
Two caveats keep that from becoming a universal claim. First, those figures are bounded by the datasets, retrievers, candidate depths, metrics, and tuning protocol each paper tested — evidence that combining methods can help, not a guarantee it beats every lexical or vector baseline on every corpus and metric. Second, the heterogeneous-benchmark literature (BEIR, for one) shows lexical and dense models trading places across datasets — no single architecture wins every task. The direction of the field settled on evaluating and usually shipping both, not on hybrid being an automatic win: measure it on your own corpus and query mix before assuming published gains transfer.
The merge problem: why you can’t just add the scores
This is the part that makes hybrid search genuinely tricky, and it’s worth getting right.
BM25 and vector similarity produce scores on completely different scales. A BM25 score might be 14.7; a cosine similarity is between −1 and 1. You can’t add them, and naive normalization (min-max scaling each list, then summing) is fragile — it’s sensitive to outliers and to how many results each retriever returns. So the robust, widely-adopted answer is to fuse by rank, not by score.
Reciprocal Rank Fusion (RRF)
Reciprocal Rank Fusion takes each result’s position in each list and scores it
as the sum, across lists, of 1 / (k + rank) — where rank is the position (1, 2,
3…) and k is a constant (commonly 60) that dampens the influence of very
low-ranked results. A document that appears near the top of both the keyword list
and the vector list accumulates the highest fused score and wins. A document that’s
#1 in one list but absent from the other still does well, but not as well as one both
retrievers agree on.
k, along with how many candidates each retriever contributes to the fusion before
it runs, are system parameters you or your search vendor set — not universal
optimal values. Elastic’s implementation, for example, exposes both a configurable
rank_constant and a rank_window_size rather than fixing them; a wider candidate
window can improve recall but costs more compute. If you’re tuning a hybrid stack,
treat 60 as a sane default to start from, not a number to leave unquestioned.
Why RRF caught on: it needs no score normalization and no tuning of relative
weights between the two retrievers — it only needs the rank orders, which are always
comparable. Microsoft describes its hybrid ranking exactly this way — “Azure AI
Search uses Reciprocal Rank Fusion (RRF) to rank the results of the hybrid query” —
and Elastic, Weaviate, and OpenSearch ship RRF as a first-class fusion option too.
(Weaviate also offers a relativeScoreFusion alternative that does normalize and
add the scores, for cases where you’d rather weight by score magnitude, and OpenSearch
ships its own score normalization and combination processors for the same
weighted approach — so RRF is a common default, not the only fusion method in
production use.)
Reranking: the precision pass
Fusion gives you a good candidate set fast. Many production stacks add one more stage: take the fused top-k (say, top 50–100) and rerank them with a cross-encoder — a heavier model that reads the query and each candidate together and scores true relevance, rather than comparing two independent vectors. It’s too slow to run over the whole corpus, which is exactly why it runs after retrieval, on a small fused set. Microsoft’s semantic ranker is described as capabilities that “improve the quality of an initial BM25-ranked or RRF-ranked search result” — i.e., rerank what hybrid retrieval already narrowed down. So the full production shape is often: retrieve (BM25) + retrieve (vector) → fuse (RRF) → rerank (cross-encoder) → top results.
Sparse, dense, and “learned sparse”
A useful nuance: the “keyword” half doesn’t have to be plain BM25. There’s a middle category — learned sparse retrieval (e.g., SPLADE) — where a model produces a sparse, term-weighted vector that includes expanded terms the document didn’t literally contain, giving you some semantic reach while staying in the exact-match, invertible-index world. Many “hybrid” systems are really combining a dense retriever with either BM25 or a learned-sparse retriever. For SEO purposes the distinction rarely matters, but it’s why you’ll see “sparse vs. dense” language: sparse = term-based (BM25 or learned-sparse), dense = embedding-based. Hybrid = both.
How Google and Bing use it
Be careful here — this is where confident-sounding claims outrun what’s been confirmed. What’s on the record:
- Google’s ranking is a hybrid, not a pure-semantic system. Embedding-based retrieval (Neural Matching / RankEmbed, and RankEmbedBERT) supplements the classic inverted index rather than replacing it. Pandu Nayak’s DOJ-testimony framing was that “RankEmbed identifies a few more documents to add to those identified by the traditional retrieval” — that’s lexical-plus-semantic in spirit, which is the hybrid idea. Google’s Vertex AI Vector Search product explicitly supports dense, sparse, and hybrid modes.
- Bing / Azure AI SearchAI search uses large language models and retrieval-augmented generation (RAG) to synthesize an answer from multiple sources rather than returning a ranked list of links. Examples include Google AI Overviews, ChatGPT Search, and Perplexity. ship hybrid + RRF as a documented product feature — the cleanest first-party confirmation of the exact pattern, even if it’s the cloud product rather than the consumer engine internals.
- The AI-answer stacks are hybrid. Perplexity’s retrieval is built on hybrid (BM25 + dense) via Vespa; production RAG guidance from every major vendor recommends hybrid over vector-only.
What’s industry theory, not confirmed fact: the exact fusion method, weights, and whether consumer Google Search specifically uses RRF internally. Google has confirmed it blends lexical and embedding retrieval; it has not published “we use RRF with k=60 in web ranking.” Treat the RRF specifics as how the tooling works and a reasonable model for the concept — not as a disclosed detail of Google’s core ranking.
What hybrid search means for SEO
Strip away the mechanics and the guidance is refreshingly non-exotic — because hybrid retrieval rewards being good at both halves, and there’s no third trick.
- Keyword presence still matters — for the exact-match half. The lexical retriever is still there, still running BM25, still catching literal terms. If your page never contains the actual words, phrases, product names, or entities people search, you forfeit the recall the keyword side would have given you. “Keywords are dead” is wrong; hybrid search is why they’re not.
- Semantic coherence matters — for the meaning half. The dense retriever finds you by meaning, and it operates on chunksChunking is splitting a document into smaller passages so AI systems can embed, index, and retrieve the single most relevant piece — not the whole page — in response to a query. It's a foundational step in RAG pipelines and the conceptual cousin of Google's passage ranking., not whole pages. Self-contained, topically coherent passages embed cleanly near the queries they should answer; thin, scattered, keyword-stuffed content embeds into a fuzzy nowhere.
- You can’t optimize the fusion. RRF and rerankingReranking is the second stage of a retrieval pipeline: after a cheap, broad first pass pulls a candidate set of documents or passages, a slower, more precise model re-scores and reorders that shortlist by true relevance before the results are served or handed to an LLM. happen inside the engine. There’s no markup, no tag, no signal you send to influence how the two lists get merged. Your only levers are the two inputs: be findable by exact term and be findable by meaning.
- The upshot is “do both well.” Old-school on-page keyword hygiene (the words are actually on the page) plus modern topical depth and clear structure (the meaning is unmistakable) is precisely the content hybrid retrieval is built to surface. As the embeddingsEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords. and vector-searchVector search finds content by comparing the meaning of a query against stored content as numerical vectors, retrieving the closest ones in a high-dimensional embedding space. At scale it uses approximate nearest neighbor (ANN) algorithms — not exact comparison — to search billions of vectors in milliseconds. pieces put it: there’s largely nothing to “optimize for” beyond making genuinely clear, comprehensive content — hybrid search just means you can’t lean only on keywords or only on vibes.
Hybrid search is the retrieval engine underneath RAGRAG is the retrieve-then-generate pattern behind AI search: the system retrieves relevant passages from an external index at query time, injects them into the model's context, and generates an answer grounded in those sources — without changing the model's weights. and AI answers, the reconciliation of semantic searchSemantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it. with old-fashioned keyword matching, and the stage before passage rankingPassage ranking is a Google AI system that scores individual sections ('passages') of a page so a single page can earn multiple relevance scores for different queries. Google still indexes whole pages — only the ranking changed. does its final scoring. And none of it happens if a page can’t be crawledSearch works in three stages — crawling, indexing, and serving (ranking). A page has to clear each one to appear in results: getting crawled doesn't mean you're indexed, and getting indexed doesn't mean you rank. and indexed first — retrieval only ever sees what made it into the index. For the wider pipeline, see How Search WorksSearch works in three stages — crawling, indexing, and serving (ranking). A page has to clear each one to appear in results: getting crawled doesn't mean you're indexed, and getting indexed doesn't mean you rank..
AI summary
A condensed take on the Advanced version:
- Hybrid searchHybrid search runs keyword (lexical/BM25) search and vector (semantic) search together, then merges the two result lists into one ranking — commonly with Reciprocal Rank Fusion — so it catches both exact-term matches and meaning-based matches that either method alone would miss. = keyword retrieval + vector retrieval, typically run in parallel (exact orchestration is product-specific), then merged into one ranking. Keyword/lexical = BM25Semantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it. over an inverted indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. (exact terms, sparse representations); vector/dense = embeddingEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords. similarity via ANN (meaning, dense representations).
- It wins on complementary recall — for a mixed query workload. Keyword nails exact strings (SKUs, error codes, proper nouns) but misses synonyms; vector catches paraphrase and synonymy but can miss exact literals. Together the blind spots cancel, but the size of the win depends on the corpus and query mix.
- The merge is rank-based, not score-based. BM25 and cosine scores are on
incompatible scales, so the standard fusion is Reciprocal Rank Fusion (RRF) —
sum of
1/(k+rank)across lists (k commonly 60, but k and candidate depth are configurable system parameters, not universal values — Elastic exposes both directly). It needs no score normalization and no relative-weight tuning. Weaviate and OpenSearch also ship score-normalizing weighted-fusion alternatives. - Many stacks rerank after fusion. Take the fused top-k and rescore with a cross-encoder (reads query + candidate together) for precision — too slow to run over the whole corpus, so it runs on the narrowed set.
- Evidence, with limits. DPR (2020) beat BM25 by 9–19% on passage retrievalChunking is splitting a document into smaller passages so AI systems can embed, index, and retrieve the single most relevant piece — not the whole page — in response to a query. It's a foundational step in RAG pipelines and the conceptual cousin of Google's passage ranking., and combining dense with BM25 beats either alone on the tested workloads — but those figures are bounded by the datasets, retrievers, and tuning protocol each paper used, and heterogeneous benchmarks like BEIR show lexical and dense models trading wins across datasets. No architecture wins every task; measure on your own corpus. Microsoft ships hybrid + RRF as a documented feature; Google’s ranking blends embedding retrieval with the inverted index (RankEmbed “adds a few more documents”); Perplexity uses hybrid via Vespa.
- Confirmed vs. theory: that engines blend lexical + semantic is confirmed; the exact fusion method/weights in consumer Google Search are not published — treat RRF specifics as how the tooling works, not a disclosed ranking detail.
- SEO: no fusion knob to turn. Keyword presence still matters (exact-match half) AND self-contained, topically coherent passages matter (semantic half). Hybrid search rewards content strong on both.
Official documentation
Primary-source documentation on hybrid searchHybrid search runs keyword (lexical/BM25) search and vector (semantic) search together, then merges the two result lists into one ranking — commonly with Reciprocal Rank Fusion — so it catches both exact-term matches and meaning-based matches that either method alone would miss. and its fusion methods, from the search engines and the retrieval-platform providers.
- Vector Search overview (Vertex AI) — supports dense, sparse, and hybrid embeddingsEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords.; the recall definition.
- A guide to Google Search ranking systems — BERTSemantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it., Neural Matching, and Passage RankingPassage ranking is a Google AI system that scores individual sections ('passages') of a page so a single page can earn multiple relevance scores for different queries. Google still indexes whole pages — only the ranking changed. in Google’s own words (the embedding-plus-inverted-indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. picture).
Microsoft / Bing / Azure
- Hybrid search — Azure AI Search — the definition of hybrid as vector + keyword in one request, executed in parallel and merged.
- Hybrid search ranking (RRF) — Azure AI Search — how Azure AI SearchAI search uses large language models and retrieval-augmented generation (RAG) to synthesize an answer from multiple sources rather than returning a ranked list of links. Examples include Google AI Overviews, ChatGPT Search, and Perplexity. uses Reciprocal Rank Fusion to combine the two result sets.
- Semantic ranking in Azure AI Search — the cross-encoder rerank stage over a BM25-ranked or RRF-ranked result.
- Vector Search overview — Azure AI Search — the dense-retrieval half of the pair.
Retrieval platforms
- Weaviate — Hybrid search —
rankedFusion(RRF) vs.relativeScoreFusion, and thealphakeyword/vector balance. - Elastic — Reciprocal rank fusion — RRF as a built-in way to combine result sets from different queries.
- OpenSearch — Hybrid search — combining lexical and neural queries with normalization/combination techniques.
- OpenAI — Vector embeddings — the embedding side; why distance choice rarely matters for normalized vectors.
Foundational research
- Reciprocal Rank Fusion outperforms Condorcet and individual rank learning methods — Cormack, Clarke & Buettcher (SIGIR 2009); the original RRF paper.
- Dense Passage Retrieval for Open-Domain Question Answering — Karpukhin et al. (EMNLP 2020); dense retrieval beating BM25, the blueprint for the dense half of hybrid.
Quotes from the source
On-the-record statements from Microsoft/Bing and Google, plus the foundational research. Deep links jump to the quoted passage where the page exposes stable text fragments.
Microsoft / Bing — hybrid searchHybrid search runs keyword (lexical/BM25) search and vector (semantic) search together, then merges the two result lists into one ranking — commonly with Reciprocal Rank Fusion — so it catches both exact-term matches and meaning-based matches that either method alone would miss. and RRF
- “Hybrid search is a combination of full text and vector queries that execute against a search indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. that contains both searchable plain text content and generated embeddingsEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords.. For query purposes, hybrid search is: A single query request that includes both search and vectors query parametersThe `?key=value` data tacked onto the end of a URL after a question mark — used for tracking, sessions, filtering, sorting, and search — and one of the biggest sources of duplicate URLs and wasted crawling in SEO..” — Azure AI SearchAI search uses large language models and retrieval-augmented generation (RAG) to synthesize an answer from multiple sources rather than returning a ranked list of links. Examples include Google AI Overviews, ChatGPT Search, and Perplexity. documentation. Read the doc
- “Azure AI SearchAI search uses large language models and retrieval-augmented generation (RAG) to synthesize an answer from multiple sources rather than returning a ranked list of links. Examples include Google AI Overviews, ChatGPT Search, and Perplexity. uses Reciprocal Rank Fusion (RRF) to rank the results of the hybrid query.” — Azure AI Search documentation. Read the doc
- “Semantic ranking is a collection of query-related capabilities that improve the quality of an initial BM25Semantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it.-ranked or RRF-ranked search result for text-based queries.” — Azure AI Search documentation (the rerank stage over hybrid results). Read the doc
Google — embedding retrieval supplements the inverted index (the hybrid idea)
- “RankEmbed identifies a few more documents to add to those identified by the traditional retrieval.” — Pandu Nayak, VP of Search, Google, describing embedding retrieval as an addition to classic (lexical) retrieval (DOJ v. Google testimony coverage). Read the coverage
The original RRF paper — why rank fusion works
- “We demonstrate that Reciprocal Rank Fusion (RRF), a simple method for combining the document rankings from multiple IR systems, consistently yields better results than any individual system, and better results than the standard method Condorcet Fuse.” — Cormack, Clarke & Buettcher, SIGIR 2009. Read the paper
Dense Passage RetrievalChunking is splitting a document into smaller passages so AI systems can embed, index, and retrieve the single most relevant piece — not the whole page — in response to a query. It's a foundational step in RAG pipelines and the conceptual cousin of Google's passage ranking. — dense beating BM25
- “Our dense retriever outperforms a strong Lucene-BM25 system greatly by 9%-19% absolute in terms of top-20 passage retrieval accuracy.” — Karpukhin et al., EMNLP 2020. Read the paper
#:~:text= fragments — confirm
against the live docs before treating any as final. The Pandu Nayak line is a
secondary-sourced relay of DOJ-trial testimony and should be confirmed against the
primary transcript. The RRF and DPR quotes are from the original papers (stable
PDFs). Which retrieval should you reach for?
If you’re actually building retrieval (a site search, a RAGRAG is the retrieve-then-generate pattern behind AI search: the system retrieves relevant passages from an external index at query time, injects them into the model's context, and generates an answer grounded in those sources — without changing the model's weights. app, an internal knowledge tool), the “keyword vs. vector vs. hybrid” choice has a fairly clean decision path. If you’re an SEO, read this as a map of how the systems you’re optimizing for make the same choice.
Start: what do your queries look like?
-
Mostly exact-match, literal queries — SKUs, error codes, part numbers, precise names, code snippets, legal citations. → Keyword / BM25Semantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it. alone can be enough. Dense retrieval adds little and can even hurt by smearing exact literals. (Rare in practice for open-ended content.)
-
Mostly natural-language, meaning-heavy queries — questions, paraphrases, conversational phrasing, “the thing where you…”. → Vector searchVector search finds content by comparing the meaning of a query against stored content as numerical vectors, retrieving the closest ones in a high-dimensional embedding space. At scale it uses approximate nearest neighbor (ANN) algorithms — not exact comparison — to search billions of vectors in milliseconds. is the strong retriever, but don’t drop keyword entirely — users still occasionally paste an exact term, and you’ll want that recall.
-
A realistic mix of both (almost every real corpus). → Hybrid searchHybrid search runs keyword (lexical/BM25) search and vector (semantic) search together, then merges the two result lists into one ranking — commonly with Reciprocal Rank Fusion — so it catches both exact-term matches and meaning-based matches that either method alone would miss.. Run BM25 + vector, fuse the lists. This is the default for a reason.
If you chose hybrid — how do you merge?
-
You don’t want to tune weights or normalize scores (most people). → Reciprocal Rank Fusion (RRF). Rank-based, no normalization, robust default.
-
You want to weight one retriever by score magnitude / have well-calibrated scores. → A score-normalizing fusion (e.g., Weaviate’s
relativeScoreFusion, or a tunedalphabetween keyword and vector). More control, more tuning burden.
Do you need a final precision pass?
-
Recall-first, latency-sensitive, or small candidate set is fine. → Stop at fused top-k.
-
Precision matters and you can afford the latency. → Add a cross-encoder rerankerReranking is the second stage of a retrieval pipeline: after a cheap, broad first pass pulls a candidate set of documents or passages, a slower, more precise model re-scores and reorders that shortlist by true relevance before the results are served or handed to an LLM. over the fused top-k (say top 50–100). This is the extra quality stage Microsoft’s semantic ranker occupies.
The SEO translation of all of this: you don’t pick the path — the engine does, and it almost always picks hybrid. So your job isn’t to bet on keyword or semantic. It’s to make sure the exact terms are present (for the BM25 branch) and the passage is a clean, self-contained semantic match (for the vector branch). Optimizing for one branch and ignoring the other leaves recall on the table.
The mental models
1. Two retrievers, one ranking. Hybrid searchHybrid search runs keyword (lexical/BM25) search and vector (semantic) search together, then merges the two result lists into one ranking — commonly with Reciprocal Rank Fusion — so it catches both exact-term matches and meaning-based matches that either method alone would miss. is not a new algorithm — it’s an arrangement. Lexical retrieval (BM25Semantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it.) and dense retrieval (vectors) each run, each produces a ranked list, and a fusion step reconciles them into one. Picture two scouts searching the same territory with different instruments, then comparing notes.
2. Complementary blind spots. Keyword search is blind to synonyms; vector searchVector search finds content by comparing the meaning of a query against stored content as numerical vectors, retrieving the closest ones in a high-dimensional embedding space. At scale it uses approximate nearest neighbor (ANN) algorithms — not exact comparison — to search billions of vectors in milliseconds. is blind to exact literals. The entire justification for hybrid is that these blind spots don’t overlap — so covering both gives you recall neither could reach alone. When a query “should have” matched but didn’t, ask which retriever would have caught it, and whether it was in the mix.
3. Fuse by rank, not by score. BM25 scores and cosine similarities live on incompatible scales; adding them is a category error. RRF sidesteps it by combining positions (1st, 2nd, 3rd…), which are always comparable. If you remember one implementation fact about hybrid search, make it this one.
4. Retrieve wide, rerank narrow. Retrieval (BM25 + vector + fusion) is tuned for recall — cast a wide net cheaply. RerankingReranking is the second stage of a retrieval pipeline: after a cheap, broad first pass pulls a candidate set of documents or passages, a slower, more precise model re-scores and reorders that shortlist by true relevance before the results are served or handed to an LLM. (cross-encoder) is tuned for precision — read query and candidate together, but only over the small fused set because it’s expensive. Recall first, precision second.
5. Sparse vs. dense is the real axis. Forget “old vs. new.” The useful distinction is sparse (term-based: BM25 or learned-sparse like SPLADE — mostly zeros, matches tokensA token is the smallest unit of text (or image/audio/video) an LLM processes — roughly 4 characters, or about ¾ of an English word. A context window is the maximum number of tokens (input plus output) a model can hold at once, like its short-term memory.) vs. dense (embeddingEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords.- based — every dimension carries meaning). Hybrid = one of each.
6. The SEO decision rule. There’s no fusion knob you can reach. Your only two levers are the two inputs: be retrievable by exact term (words are on the page) and retrievable by meaning (passage is coherent and self-contained). Winning at hybrid = winning at both, which is just good content.
Hybrid search — cheat sheet
What it is in one line Run keyword (BM25Semantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it.) and vector (embeddingEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords.) retrieval in parallel, fuse the two ranked lists into one — usually with Reciprocal Rank Fusion — optionally rerank the top-k.
Keyword vs. vector vs. hybrid
| Keyword (lexical) | Vector (dense) | Hybrid | |
|---|---|---|---|
| Matches on | Exact terms | Meaning | Both |
| Representation | Sparse (BM25) | Dense (embeddingsEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords.) | Both |
| Great at | SKUs, codes, proper nouns, exact phrases | Synonyms, paraphrase, intent | The realistic mix |
| Blind to | Synonyms / rephrasings | Exact literals / rare tokensA token is the smallest unit of text (or image/audio/video) an LLM processes — roughly 4 characters, or about ¾ of an English word. A context window is the maximum number of tokens (input plus output) a model can hold at once, like its short-term memory. | Fewer things |
| Scale of score | BM25 (e.g. ~0–30+) | Cosine (−1 to 1) | — (fused by rank) |
The pipeline, end to end
query → [BM25 retrieval] + [vector/ANN retrieval] → fuse (RRF) → (optional) cross-encoder rerank → top results → (in RAG) LLM generates
Reciprocal Rank Fusion (RRF), in brief
- Score each doc as the sum over lists of
1 / (k + rank);kcommonly 60. - Uses rank position, not raw score → no normalization, no weight tuning.
- Docs ranked high in both lists rise to the top.
- Alternative: score-normalizing fusion (Weaviate
relativeScoreFusion;alphato weight keyword vs. vector).
RerankingReranking is the second stage of a retrieval pipeline: after a cheap, broad first pass pulls a candidate set of documents or passages, a slower, more precise model re-scores and reorders that shortlist by true relevance before the results are served or handed to an LLM. (the precision stage)
- A cross-encoder reads query + candidate together and scores true relevance.
- Too slow for the whole corpus → runs on the fused top-k only.
- This is the stage Microsoft’s semantic ranker occupies over BM25/RRF results.
Who ships it
- Azure AI SearchAI search uses large language models and retrieval-augmented generation (RAG) to synthesize an answer from multiple sources rather than returning a ranked list of links. Examples include Google AI Overviews, ChatGPT Search, and Perplexity. — hybrid + RRF documented; semantic ranker for the rerank.
- Google Vertex AI Vector SearchVector search finds content by comparing the meaning of a query against stored content as numerical vectors, retrieving the closest ones in a high-dimensional embedding space. At scale it uses approximate nearest neighbor (ANN) algorithms — not exact comparison — to search billions of vectors in milliseconds. — dense, sparse, hybrid modes.
- Weaviate / Elastic / OpenSearch / Vespa — hybrid + RRF as first-class features.
- Perplexity — hybrid (BM25 + dense) via Vespa.
Fast facts
- DPR (2020) beat Lucene-BM25 by 9–19% absolute on top-20 passage retrievalChunking is splitting a document into smaller passages so AI systems can embed, index, and retrieve the single most relevant piece — not the whole page — in response to a query. It's a foundational step in RAG pipelines and the conceptual cousin of Google's passage ranking..
- RRF originates in Cormack, Clarke & Buettcher, SIGIR 2009.
- Confirmed: engines blend lexical + embedding retrieval. Not confirmed: that consumer Google Search uses RRF specifically, or its fusion weights — treat those as tooling behavior / industry model, not disclosed ranking detail.
- No hybrid-search knob for SEO: keyword presence drives the BM25 branch; coherent, self-contained passages drive the vector branch. You need both.
Resources worth your time
My related writing
- Semantic Search Is the Only Search That Matters Now — the Ahrefs piece on how meaning-based retrieval works alongside keyword matching (the “fix a leaky faucet” / “repairing a dripping tap” similarity example lives here).
- Semantic SEO: The Definitive Guide — Despina Gavoyannis, reviewed by me — why doing SEO properly already covers most of “semantic” SEO, with the practitioner quotes.
- The Beginner’s Guide to Technical SEO — where retrieval sits in the crawl → indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. → rank pipeline.
My speaking
- How Search Works (SlideShare) — my walkthrough of crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor., renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM., indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed., and ranking, including how retrieval feeds ranking. (My standing disclaimer applies: “This is my understanding of systems… not going to be 100% complete or accurate.”)
Official
- Hybrid search — Azure AI Search and Hybrid search ranking (RRF) — the clearest first-party description of the exact pattern.
- Vector Search overview (Vertex AI) — Google’s dense/sparse/hybrid embeddingEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords. support.
From around the industry
- Reciprocal Rank Fusion outperforms Condorcet and individual rank learning methods (Cormack, Clarke & Buettcher, SIGIR 2009) — the original RRF paper; the source of the method every hybrid stack now uses.
- Dense Passage Retrieval for Open-Domain Question Answering (Karpukhin et al., EMNLP 2020) — the dense-retrieval blueprint; dense beating BM25Semantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it. by 9–19%.
- Weaviate — Hybrid search —
rankedFusion(RRF) vs.relativeScoreFusionand thealphabalance, explained clearly for practitioners. - Elastic — Reciprocal rank fusion — RRF as a built-in query feature, with worked examples.
- OpenSearch — Hybrid search — an open-source implementation of lexical + neural combination with normalization techniques.
- How Perplexity uses Vespa.ai — Vespa’s first-party account of Perplexity’s hybrid BM25 + dense retrieval architecture.
- r/TechSEO — the community for how-search-works and retrieval debugging.
Test yourself: Hybrid Search
Five quick questions on how hybrid searchHybrid search runs keyword (lexical/BM25) search and vector (semantic) search together, then merges the two result lists into one ranking — commonly with Reciprocal Rank Fusion — so it catches both exact-term matches and meaning-based matches that either method alone would miss. combines and merges two kinds of retrieval. Pick an answer for each, then check.
Hybrid Search
Hybrid search runs keyword (lexical/BM25) search and vector (semantic) search together, then merges the two result lists into one ranking — commonly with Reciprocal Rank Fusion — so it catches both exact-term matches and meaning-based matches that either method alone would miss.
Related: Vector Search, Semantic Search, Embeddings
Hybrid Search
Hybrid search is an information-retrieval approach that combines two different retrieval methods in a single query: lexical (keyword) search — the classic inverted indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. scored with BM25Semantic search is meaning-based retrieval — matching what a user means, not just the words they typed. Search engines detect entities, expand synonyms, infer intent, and rank by conceptual relevance, which is why keyword stuffing lost its power and topical depth gained it., which matches exact terms — and vector (semantic) search, which compares embeddingEmbeddings are dense numerical vectors — lists of floating-point numbers — that represent the meaning of text in a high-dimensional space. Semantically similar content lands close together, so search and AI systems can match by meaning, not just keywords. vectors to match meaning even when the words differ. Each method catches recall the other misses: keyword search nails exact strings (error codes, SKUs, proper nouns) but is blind to synonyms; vector searchVector search finds content by comparing the meaning of a query against stored content as numerical vectors, retrieving the closest ones in a high-dimensional embedding space. At scale it uses approximate nearest neighbor (ANN) algorithms — not exact comparison — to search billions of vectors in milliseconds. understands meaning but can miss a literal term match.
Because the two methods produce two separately-scored result lists on incompatible scales, hybrid search fuses them into one ranking. The most common fusion method is Reciprocal Rank Fusion (RRF), which combines results by their rank position rather than their raw scores, sidestepping the scale-mismatch problem. Many production stacks then rerank the fused top candidates with a cross-encoder for a final precision pass. Microsoft, Google, Weaviate, and Elastic all ship hybrid search, and it’s the standard retrieval pattern inside modern RAGRAG is the retrieve-then-generate pattern behind AI search: the system retrieves relevant passages from an external index at query time, injects them into the model's context, and generates an answer grounded in those sources — without changing the model's weights. pipelines — including the retrieval that grounds AI answers.
Related: Vector Search, Semantic Search, Embeddings
Build-time retrieval analysis plus live signals for this exact article. The automatic chunk report includes a deterministic readiness score and is ready without a model download.
Search Console
sampleGA4 traffic (28d)
sampleCloudflare traffic (7d)
sampledCrUX field data (28d, phone)
sampleGoogle NLP entities
localChangelog
Updated Jul 18, 2026.
Editorial summary and recorded change details.Summary
Qualified the RRF-parameter and fusion-superiority claims flagged in review: exposed RRF's constant and candidate depth as configurable system parameters rather than fixed values, named weighted-fusion alternatives (Weaviate, OpenSearch) alongside RRF, and bounded the DPR/hybrid-superiority figures to their tested datasets instead of implying a universal win.
Change details
-
Added that RRF's k constant and candidate-list depth are configurable system parameters (Elastic exposes rank_constant/rank_window_size directly), not universal optimal values.
-
Scoped the DPR 9-19% and hybrid-beats-either-alone claims to their tested datasets/retrievers/protocol, and noted BEIR shows lexical vs. dense results trading wins across datasets — no architecture wins every task.
Full comparison unavailable — no prior snapshot was archived for this revision.