Most post-mortems on failed enterprise RAG deployments focus on the wrong layer. Teams audit their retrieval index, swap embedding models, or iterate on prompt templates, while the actual source of degraded answers sits upstream, in the ingestion pipeline that processed documents before any query was ever issued. The damage is structural, and by the time a query hits the retrieval layer, the signal has already been lost.
The Ingestion Layer Is Where Retrieval Quality Is Decided
Document ingestion is treated as plumbing in most RAG architectures. It is not. The quality of every chunk stored in a vector index is a direct function of how faithfully the ingestion pipeline preserved the semantic structure of the source document. A retrieval system built on corrupted text will return corrupted context, regardless of how well-calibrated the embedding model is.
Enterprise document libraries are heterogeneous by nature. PDFs, Word documents, PowerPoint decks, and scanned images each carry their content inside different structural containers. A rule-based extraction pipeline that treats all of these as text sources will flatten that structure, and the loss is permanent.
How Layout Destruction Degrades Retrieval Signal
Multi-Column Documents
Multi-column layouts are one of the most common failure modes in PDF extraction. When a text extractor reads a two-column page left to right without accounting for column boundaries, it interleaves sentences from adjacent columns. The resulting text is syntactically broken and semantically incoherent, which means any chunk derived from it will embed poorly and retrieve inconsistently.
The mechanism is straightforward: embedding models are trained on coherent prose. A vector representation of interleaved column text occupies an unstable region of the embedding space, far from the queries it should match. The retrieval failure looks like a relevance problem, but it is a representation problem caused at extraction time.
Tables and Structured Data
Tables present a different but equally serious problem. A naive text extraction of a table produces a sequence of cell values with no preserved relational context. A row that reads "Q3 revenue, $4.2M, up 12% YoY" in a table becomes meaningless fragments when extracted as a flat string. Downstream, a query asking about quarterly revenue performance will fail to retrieve it, not because the embedding model cannot understand the query, but because the chunk no longer contains a coherent statement.
The fix is not to embed tables as images. It is to convert them into self-contained prose statements that preserve the relational meaning of each row, a step that requires structural awareness at ingestion time, not at query time.
The Case for PDF Normalisation as a Universal First Step
One principled response to document heterogeneity is to normalise all input formats into a single canonical representation before any extraction occurs. PDF is the natural target because virtually every document format has a deterministic, layout-faithful PDF rendering path. Converting a DOCX or PPTX to PDF before extraction means the ingestion pipeline only needs to solve the layout problem once, for one format.
This approach also makes the ingestion pipeline auditable. When every document passes through the same normalisation step, failures are localised and reproducible. A pipeline that processes raw DOCX, PPTX, and PDF through separate extractors accumulates format-specific failure modes that are difficult to isolate in production.
Allu et al. (Hugging Face, 2026) formalise this approach in their D-RAC framework, which normalises all input formats to PDF and then applies a multimodal LLM pass to convert rendered pages into retrieval-optimised Markdown, preserving heading hierarchy and converting tables into coherent prose. Across a 236-document, 795-page benchmark corpus, this produced 1,748 retrieval-ready chunks with zero extraction errors.
Chunking Strategy Is a Retrieval Architecture Decision
Chunking is often treated as a preprocessing detail. It is an architecture decision with direct consequences for retrieval precision. A chunk that spans two unrelated topics will retrieve for both and answer neither well. A chunk that cuts a table in half loses the relational context that made the data meaningful.
Retrieval-aware chunking means designing chunk boundaries around semantic coherence, not character counts or paragraph breaks. The goal is that each chunk, in isolation, contains a complete and self-sufficient unit of information that can be matched to a query without requiring surrounding context to be interpretable.
The cost argument for doing this well is also material. Allu et al. (Hugging Face, 2026) report that their chunking approach, which uses an LLM to plan chunk boundaries by emitting identifiers rather than regenerating text, reduces chunking-stage output tokens by 95.7% compared to fully agentic approaches, cutting chunking cost by 77.8% under GPT-4.1 pricing. Semantic quality and operational cost are not in tension here; the more structured the approach, the cheaper it runs.
How to Audit Your Ingestion Pipeline
A practical audit of an enterprise RAG ingestion pipeline should work backwards from retrieval failures. When a query returns a low-relevance result, the first question is whether the relevant passage exists in the index in a coherent form. Retrieving the raw chunk text and inspecting it directly will reveal whether the failure is a retrieval problem or an ingestion problem.
Specific signals to look for include: interleaved text from multi-column layouts, fragmented table rows with no relational context, missing heading hierarchy that would otherwise provide topical context for a chunk, and chunks that begin or end mid-sentence because a fixed-size splitter cut across a semantic boundary.
A pipeline that cannot pass this inspection at the chunk level cannot be fixed by tuning the retrieval layer. The correct intervention is upstream, in the normalisation and chunking logic that determines what the index contains.
Where Vector Labs Fits
We design and build production retrieval systems for enterprises operating over complex, heterogeneous document libraries, with particular attention to the ingestion and normalisation stages where most retrieval quality is won or lost. In our RAG architecture analysis, we examined how structural assumptions in ingestion pipelines propagate into retrieval failures that appear to be model problems but are not. If you are auditing an existing RAG deployment or designing a new one, contact us at vector-labs.ai/contacts.
FAQs
The fastest diagnostic is to retrieve the raw chunk text for a failing query and read it directly. If the chunk text is incoherent, interleaved, or semantically incomplete, the problem is ingestion. If the chunk text is correct but the retrieval system failed to surface it, the problem is in the embedding or indexing layer. Most teams skip this step and go straight to model tuning, which is why ingestion failures persist.
For heterogeneous document libraries, yes. The alternative is maintaining separate extraction logic for each format, each with its own failure modes. A single normalisation step to PDF reduces the surface area of the ingestion problem significantly. The added complexity is a one-time engineering cost; the benefit is a pipeline that is easier to audit, test, and maintain at scale.
There is no universally correct chunk size. The right boundary is semantic, not metric. A chunk should contain one complete, self-sufficient unit of information. For narrative text, that often aligns with a section or subsection. For tables, it means a complete statement of the relational data in that table, not a row count. Fixed-size chunking by character count is a practical shortcut that consistently underperforms retrieval-aware approaches on complex documents.
Scanned documents require OCR as a first step, but OCR output alone is insufficient for retrieval. The OCR text needs to be passed through a layout-aware normalisation step that reconstructs reading order and identifies structural elements like headings and tables. A multimodal LLM pass over rendered page images, as used in approaches like D-RAC (Allu et al., Hugging Face, 2026), can recover structural context that pure OCR text extraction discards.
The impact is present at any volume, but it becomes operationally visible once a knowledge base contains enough documents that users begin noticing inconsistent retrieval. In practice, teams with libraries above a few hundred documents start to see systematic gaps in retrieval coverage that correlate with specific document types or layouts. The sooner ingestion quality is treated as a first-class engineering concern, the less remediation work is required later.

