Reciprocal rank fusion: why combining search results is harder than it looks
Blog post from Redis
Reciprocal rank fusion (RRF) is a rank-based method for combining results from multiple retrieval systems, such as BM25 keyword search and vector similarity search, without directly mixing their incompatible raw scores. Introduced in 2009, it assigns each document a score based on its position in every ranked list, typically summing values of 1 divided by a constant such as 60 plus the document’s rank, which favors documents supported by multiple retrievers while retaining contributions from lower positions. RRF avoids the normalization, weighting, and score-distribution drift problems that arise when combining BM25 scores, which vary by corpus and query, with bounded cosine-similarity scores. It is widely used in hybrid search, retrieval-augmented generation, and recommendation systems, where keyword, semantic, recency, popularity, or personalized rankings can be merged without training data. Although RRF cannot account for differences in score confidence and may be surpassed by tuned weighted models when labeled evaluation data is available, it offers a robust default for systems lacking such infrastructure. The fusion calculation itself is inexpensive, while the primary engineering challenge is retrieving candidates quickly through parallel keyword and vector searches, particularly in latency-sensitive interactive and agentic applications.
Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.