Content analyzer

What is content chunking (passages)?

Content chunking is the process of splitting a page into 100–300-word passages so each one can be individually retrieved and scored. Answer engines like Google AI Overviews and Perplexity retrieve individual passages, not whole pages, so the 100–300-word range is the unit of competition. Seeklyn chunks your content the same way retrieval does, with an ideal band of 134–167 words, so you can see exactly which passages are retrieved and which are orphaned.

Every passage shown in a Seeklyn content report is a chunk — the word count and ideal-band badge appear on each passage card at /dashboard/content.

Why do answer engines use chunks instead of whole pages?

Answer engines retrieve 100–300-word passages because whole pages are too large to rank and quote directly. When Google AI Overviews, Perplexity, or ChatGPT search synthesizes an answer, it first runs retrieval over millions of passage-level documents, then ranks the top candidates, then generates an answer quoting the most relevant ones. A 3,000-word article is split into roughly 15–20 passages; each passage competes on its own for retrieval and citation.

The practical implication is that a single weak passage cannot drag down a strong one, and a single strong passage cannot rescue a page of weak ones. Citation is earned at the passage level, not the page level. A page that is well structured overall but buries its key fact in a section that fails the answer-first rule will have that specific passage orphaned while others rank fine.

How does Seeklyn chunk content?

Seeklyn chunks content in 3 steps, mirroring how retrieval indexers process documents. First, it splits the page on blank lines and markdown headings — each heading starts a new chunk boundary. Second, it accumulates words across consecutive paragraphs under the same heading, merging short paragraphs to reach the minimum 100-word threshold. Third, if accumulated words exceed 300, the block is split at word boundaries so no chunk exceeds the 300-word ceiling.

The constants in the Go codebase are: minWords = 100, maxWords = 300, idealLow = 134, idealHigh = 167. The ideal band of 134–167 words is where a passage is long enough to carry a complete argument with facts, attribution, and context, yet short enough to be extracted cleanly. Seeklyn marks each passage with an ideal-band badge so you can see at a glance which ones hit the sweet spot.

What counts as an ideal-sized passage?

134–167 words is the ideal passage band — long enough for a direct answer, a supporting fact, an attributed source, and a named entity, yet short enough to be lifted verbatim. Passages shorter than 100 words are typically too thin to be self-contained; they may lack enough context to stand alone or may not have room for the attribution that makes a fact citable. Passages over 300 words are chunked by Seeklyn rather than counted as a single passage, because retrieval indexes cap passage size at similar thresholds.

In practice, a well-structured section of 150 words — opening declarative sentence, 1–2 supporting sentences with a concrete number, a named source, and a named entity (a product, company, or standard) — consistently hits the ideal band and clears most of Seeklyn's 8 extractability flags. The ideal-band badge is not required for a high citability score, but it correlates with it.

How does chunking interact with BM25 retrieval?

Chunking determines what gets scored by BM25: each chunk becomes 1 document in Seeklyn's retrieval simulation. A heading boundary always starts a new chunk, which means a heading that introduces a new topic also starts a fresh competitive unit — the passage under it is judged independently of the passages above.

A practical consequence: if your target query terms appear in a long section that gets split into 2 chunks at the 300-word boundary, each resulting chunk is scored separately. The half that contains more query terms will rank higher; the half that gets fewer may become an orphan. Keeping key query terms present in each natural section — rather than front-loading them in a preamble — helps every chunk compete.

Evidence:strong

Frequently asked questions

Does chunking split on every paragraph break?

No — Seeklyn merges short paragraphs under the same heading to reach the 100-word minimum, so a section with 3 short paragraphs becomes 1 chunk. Heading boundaries always force a split, and a single block over 300 words is also split at word boundaries. The result is retrieval-realistic chunks, not one-paragraph-per-chunk fragmentation.

What happens to a passage under 100 words?

Seeklyn keeps it as a chunk and scores it, but a sub-100-word passage is flagged as outside the ideal band. It may still pass self-containment and carry some citability score, but it is less likely to be cited because it typically lacks the depth for a complete attributed answer. The fix is usually to merge it with the following paragraph under the same heading.

Can I control how my page is chunked?

Yes — heading structure is the main lever. Each markdown or HTML heading starts a new chunk, so adding a heading where you want a passage boundary gives you control over what competes as a single unit. Keeping each heading section between 134 and 167 words puts every passage in the ideal band.

Run it on your own page — free.

No signup, no card. Score your headlines and passages against the same rules this page explains.