Content analyzer
What is retrieval in AEO (and how does Seeklyn score it)?
Retrieval is the first of 3 stages in Seeklyn's citation funnel — a 0–100 score measuring whether your passages surface for the target query using BM25 keyword matching. A passage with zero query-term overlap scores 0 and is called an orphan. An orphan passage can never be cited no matter how well-written: no answer engine will find it.
The Retrieval score appears at the top of every Seeklyn content report alongside Citation and Overall — run your page free at /dashboard/content.
What is retrieval in AEO?
Retrieval is how an answer engine finds candidate passages before it writes an answer. Search engines like Google AI Overviews, Perplexity, and ChatGPT all begin with a retrieval step. Each engine scans an index for passages that overlap with the user's query, then passes the top candidates to a language model for synthesis. A passage that is never retrieved cannot be cited, even if perfectly written.
Seeklyn's Retrieval score (0–100) models this first gate using BM25, the industry-standard term-frequency/inverse-document-frequency retrieval algorithm. BM25 scores each chunk against the target query. A chunk with query-term overlap gets a positive score; a chunk with zero overlap is flagged as an orphan and scores 0. The Retrieval stage score is 70% coverage blended with 30% self-containment.
How is the Retrieval score calculated?
Retrieval = 0.7 × coverage + 0.3 × containment, then clamped to 0–100. Coverage is the fraction of chunks with a non-zero BM25 score. A single orphaned passage in a 10-chunk page lowers coverage to 0.9, reducing the score to roughly 87. Containment is the fraction of chunks marked self-contained (no pronoun opener, answer-first structure). Coverage dominates because finding the passage matters more than polish.
Retrieval is monotonic: adding query-relevant terms can only raise or hold the score. Each fix either improves the score or leaves it unchanged.
| Component | Weight | What it measures |
|---|---|---|
| Coverage (non-orphan fraction) | 70% | Share of chunks with BM25 score > 0 for the query |
| Containment (self-contained fraction) | 30% | Share of chunks with no pronoun opener and answer-first structure |
Frequently asked questions
What is an orphan chunk?
An orphan chunk is a passage with a BM25 score of 0 for the target query — no query terms appear in it. Orphans contribute nothing to Retrieval coverage, so they are scored 0 individually and drag down the page-level Retrieval score. The fix is to add at least 1 or 2 query-relevant terms naturally to the passage.
Does a high Retrieval score guarantee a citation?
No — Retrieval clears the first gate (being found), but the passage must still pass the Citation stage to be quoted. A page with Retrieval 95 and Citation 30 scores Overall 62. Both stages must be healthy for a citation to occur, which is why Seeklyn reports all 3 numbers.
Is BM25 the same algorithm real answer engines use?
Not necessarily — production systems like Perplexity and Google use learned dense retrievers alongside BM25. Seeklyn uses BM25 as a transparent, auditable measure of query overlap: it predicts whether query terms appear in your passages, which is the most actionable signal you can directly improve.
Can I raise Retrieval without changing my passage structure?
Yes. Retrieval responds to topical alignment — mention the target query phrase naturally in section headings and opening sentences. You do not need to change the structural format of the passage (that affects Citation, not Retrieval). The 2 stages have independent fixes.