Inside LinkedIn's Semantic Search Overhaul: Two-Tower Retrieval and Two-Stage Ranking
Blogger jaydeepkarale published a series of posts on November 6, drawing on LinkedIn's official engineering materials to give a full breakdown of how the company migrated its content search from keyword matching to semantic matching. The motivation came from two pain points the team identified with pure keyword search: either queries returned no results (no post contained all the keywords), or the returned posts contained every keyword yet failed to answer the question. Content analysis showed that the index often did contain posts that correctly answered the query — they just didn't include all the keywords — which pushed the team toward semantic matching.
Confirmed
- Search is validated in two layers: a recall layer (Token recall + Embedding two-tower recall) and a multi-stage ranking layer, filtering the final results from billions of posts.
- Both the Embedding retriever and the ranker use a two-tower architecture (a text embedding model + an MLP), encoding the query and the post separately.
- Multi-stage ranking consists of two rankers, L1 and L2, with essentially the same architecture but different scales and input features; after L1, candidates shrink from thousands to hundreds.
- Each ranking stage outputs two scores — on-topicness (relevance of content to user intent) and long-dwell (time spent) — and the final ranking is decided by fusing these multi-objective scores.
- Post quality is measured solely by these two metrics, not by likes.
Why it matters
This case shows how a large platform uses a "semantic recall + multi-stage ranking" systems engineering approach to fix the recall and relevance weaknesses of keyword search, and notably evaluates quality by relevance and dwell time rather than social engagement signals — offering direct reference value for search and recommendation system design.
2026-11-06 ~ 2026-11-06 · 6 related posts
Primary sources
- [source] Case study: how LinkedIn rebuilt search with semantic embeddings and 2-stage ranking — _jaydeepkarale · 2026-11-06
- [source] Why LinkedIn added semantic matching: keyword-only search missed relevant posts — _jaydeepkarale · 2026-11-06
- Inside LinkedIn's L1/L2 rankers: twin MLP models scoring topic fit and dwell time — _jaydeepkarale · 2026-11-06
- [source] LinkedIn ranks posts by on-topic rate and dwell time, ignoring likes entirely — _jaydeepkarale · 2026-11-06
- How LinkedIn search works: dual-tower embedding recall feeding multi-stage ranking — _jaydeepkarale · 2026-11-06
1 near-duplicate retellings: _jaydeepkarale