---
type: "Article"
title: "BM25 | topical authority content"
description: "What Okapi BM25 is, how BM25F weights titles and anchor text, what the DOJ trial did and did not reveal, and what it means for on-page copy."
resource: "https://www.laurelinlabs.com/search-systems/bm25"
tags: ["bm25", "topical-authority-content", "okapi-bm25-ranking-function"]
generated: { by: "laurelin-site-build/2026-09-02", at: "2026-09-02T12:00:00+00:00" }
status: "stable"
stale_after: "2027-03-02T00:00:00+00:00"
---
# Okapi BM25

Okapi BM25 is a ranking function from the probabilistic relevance framework developed by Stephen Robertson, Karen Spärck Jones and others. It scores documents on query term matches, with term frequency saturation and document length normalisation, and its BM25F variant weights fields such as title, body and anchor text. Google has never said it uses BM25, and the US v. Google opinions we reviewed do not name it. For sites, the lesson is that lexical matching still matters: the words a searcher uses should appear in the title, headings and body.

## What is BM25?

Okapi BM25 is a ranking function that estimates how relevant a document is to a query from the query terms it contains. BM stands for best matching, and Okapi is the name of the first system to use it, built at City University London in the 1980s and 1990s ([Wikipedia](https://en.wikipedia.org/wiki/Okapi_BM25)).

It comes from the probabilistic relevance framework set out by Stephen Robertson and colleagues. The standard reference is Robertson and Zaragoza's 2009 review, [The Probabilistic Relevance Framework: BM25 and Beyond](https://www.staff.city.ac.uk/~sbrp622/papers/foundationsbm25review.pdf).

## How does BM25 score a page?

BM25 keeps the core of TF-IDF, rewarding rare query terms more than common ones, and adds two corrections. Term frequency saturates: the fifth mention of a word adds far less than the first, so repetition quickly stops paying. Length normalisation stops long documents winning simply because they contain more words. Two tunable parameters, usually written k1 and b, control those effects.

BM25F extends the model to documents with fields. Each field, such as title, body or incoming anchor text, gets its own weight before the scores are combined. That is the part most relevant to web pages, because it formalises why a term in a title or in the anchor text of links pointing at a page counts differently from the same term deep in body copy.

- IDF: rare query terms carry more weight.
- Saturation (k1): repeated terms give diminishing returns.
- Length normalisation (b): long pages are not rewarded for length alone.
- BM25F: separate weights per field, including anchor text.

## What evidence is there that Google uses BM25?

This page is labelled **General theory**. Google has not said it uses BM25. In the US v. Google case, Judge Mehta's [2024 liability opinion](https://storage.courtlistener.com/recap/gov.uscourts.dcd.223205/gov.uscourts.dcd.223205.1033.0.pdf) lists a Google signal called Term Weighting among the ranking signals retrained in Google's data reduction experiment, alongside NavBoost, QBST, RankBrain, DeepRank and RankEmbedBert, but it does not describe how Term Weighting is calculated. We searched the text of that opinion and the [2025 remedies opinion](https://storage.courtlistener.com/recap/gov.uscourts.dcd.223205/gov.uscourts.dcd.223205.1436.0.pdf) and found no mention of BM25 or TF-IDF.

So the trial confirms that Google has a term weighting signal, which is unsurprising, and does not reveal its formula. Google's own public framing is that early Search relied on matching words and later layered machine learning on top ([Pandu Nayak, Google, February 2022](https://blog.google/products/search/how-ai-powers-great-search-results/)).

## What does BM25 mean for your pages?

Lexical retrieval is still how many systems, including many retrieval augmented AI pipelines, build their first candidate set, so a page that never uses the searcher's words can miss the shortlist entirely. Put the core query terms in the title element, the H1 and the opening paragraph, in natural phrasing.

Saturation is the other lesson. Under BM25, extra repetitions add little, so once a term is present in the fields that matter, effort is better spent on coverage and clarity than on frequency. A falsifiable test: add a missing core term to the title and H1 of a page that ranks beyond page two for that term and compare impressions in Search Console over the following four weeks against a matched control page.

## Which Laurelin audit checks test for BM25?

BM25 is a scoring model, not something visible on a site, so these checks measure its on-page inputs. The new check [Core query terms missing from title, H1 and opening copy](https://www.laurelinlabs.com/audit/topical-content/379-core-query-terms-missing-from-title-h1-and-opening-copy) looks for lexical gaps in the highest weighted fields.

Related checks: [Title doesn't match content intent](https://www.laurelinlabs.com/audit/topical-content/137-title-doesn-t-match-content-intent) covers the most heavily weighted field. [Missing H1](https://www.laurelinlabs.com/audit/topical-content/150-missing-h1) removes a strong field entirely. [Generic anchor text](https://www.laurelinlabs.com/audit/topical-content/183-generic-anchor-text) wastes the anchor text field that BM25F models. [Very low content to boilerplate ratio](https://www.laurelinlabs.com/audit/topical-content/178-very-low-content-to-boilerplate-ratio) dilutes the body field. [Keyword stuffing and over-optimisation](https://www.laurelinlabs.com/audit/topical-content/167-keyword-stuffing-over-optimisation) is where saturation makes repetition pointless.

## What are the key dates for BM25?



- 2009: Robertson and Zaragoza publish The Probabilistic Relevance Framework: BM25 and Beyond ([source](https://www.staff.city.ac.uk/~sbrp622/papers/foundations_bm25_review.pdf))
- 2024-08-05: US v. Google liability opinion names a Term Weighting ranking signal without describing it ([source](https://storage.courtlistener.com/recap/gov.uscourts.dcd.223205/gov.uscourts.dcd.223205.1033.0.pdf))
- 2025-09-02: US v. Google remedies opinion filed; no mention of BM25 found in its text ([source](https://storage.courtlistener.com/recap/gov.uscourts.dcd.223205/gov.uscourts.dcd.223205.1436.0.pdf))


## FAQ

### Does Google use BM25?

Google has not said so. The US v. Google liability opinion names a Term Weighting signal but does not describe its formula, and neither opinion mentions BM25.

### What is the difference between BM25 and TF-IDF?

BM25 builds on the same idea of weighting rare terms but adds term frequency saturation and document length normalisation, which make it more robust than plain TF-IDF.

### What is BM25F?

BM25F is a variant that scores fields such as title, body and incoming anchor text separately with their own weights before combining them.


Hub: [Topical Content](/topics/topical-content.md)


