Blog

0

min read

August 13, 2026

Build vs Buy: Why an LLM Alone Won’t Give You Accurate Customer Insights

Ronaldo Amá

CPTO

Comparison card: an LLM judging its own accuracy with no proof, versus Birdie showing an audited F-score of 95 against 65 for the LLM.

Every leadership team has heard the pitch by now: first, export your tickets, calls, reviews, and surveys - or just connect your favorite LLM / AI harness (Claude, ChatGPT, Gemini) to their MCP.  Then, ask it anything. Ship "customer intelligence" in a weekend, skip the vendor, keep the budget.

It is the most tempting idea in CX right now. Over the eleven posts of our Build vs Buy series, we took it apart one capability at a time. This wrap-up puts the whole argument in one place, with the receipts.

Here is the short version: accurate customer insights do not come from the model, they come from the customer context underneath it. When we tested a raw LLM against structured classification on 136,864 real customer reviews, the raw approach produced a different top issue on every run, scored 30 points lower on accuracy, and burned most of its compute redoing the same work. If a real decision rides on the output, as it often does, that is not a rounding error. In our study, the gap between two plausible readings of the same data was the difference between fixing a real problem and funding an expensive fix for a symptom.

That is the stakes. Now, let’s look at the evidence.

The test: 136,864 reviews, three approaches, three runs each

We wanted to know what actually happens when you point an LLM at raw customer signals at production scale. So we built the experiment most build-vs-buy debates skip.

We took 136,864 real marketplace reviews across six major marketplaces and asked the questions every CX and product leader asks: what are the top issues, how big is each one, and where should we act first. We ran three setups side by side:

  1. A structured customer context layer. Signals classified up front against a governed taxonomy, with the LLM reasoning on top of that structure. This is how Birdie works.
  2. An LLM handed the exact same taxonomy. No structure, but every advantage a smart internal team could give it, including our own category definitions.
  3. A raw LLM on raw data. The weekend project. Connect the data, write a good prompt, ask.

Every setup answered every question three times. We scored accuracy against held-out, ground truth labels from human experts. Same data, same questions, same model family. The only variable was structure.

Five ways the raw LLM route gets customer insights wrong

1. Ask the same question twice and you get two different answers

Reproducibility is the first thing to die. Across three runs, the structured approach returned the same top-10 issue list every time: 100% overlap. The LLM with the taxonomy managed 67%. The raw LLM managed 0%. Not "a little unstable." Zero overlap. A different number one issue on every single run, even when you play with model temperature, seeds and so on.

Think about what that means operationally. Monday’s board slide and Thursday’s board slide disagree, and both came from "the data." Whichever run you happen to trust becomes your strategy.

Comparison card: a raw LLM returns a different number one issue on each of three runs, while the structured approach returns the same top issue every run.

2. Coverage is not accuracy

LLMs sample because they have to. Your signals may not fit in a context window, so the model reads a slice and tells a confident story about the whole. You can engineer around the limit with chunking and data-savvy pipelines, and teams do. But then a subtler problem shows up: the labels themselves are wrong more often.

Comparison card: a raw LLM samples about 10% of customer signals and guesses, while Birdie classifies 100% of signals with no sampling.

Measured against expert-labeled ground truth, the structured layer scored an F-score of 95. The LLM working with the very same taxonomy scored 65. The F-score matters because it balances precision (how many answers were actually right) and recall (how many it missed). One score can look fine while hiding both failures, which is exactly why "LLM-as-judge" evaluations that report neither should not comfort anyone.

This is the coverage paradox: labeling more volume with a weaker classifier does not give you more truth. It gives you more wrongly labeled volume, delivered faster.

3. Even with your taxonomy in hand, the counts do not hold

The most surprising result was not the raw LLM failing. It was the well-equipped LLM failing. We handed it Birdie’s exact taxonomy, the same category definitions our structured pipeline uses, and asked it to size the issues.

The same issue, "delivery delay," was counted 1,385 times in one setup and 7,481 times in the other. That is a 5.4x difference in the size of the same problem, from the same data, using the same definitions. Prioritize by one count and delivery delay is a niche complaint. Prioritize by the other and it is the house on fire.

Comparison card: without governed structure the same issue is counted 5.4 times differently, while one governed taxonomy produces a single consistent count.

A taxonomy is not a document you attach to a prompt. It is a discipline you apply identically to every signal, every day, and govern as categories evolve so that this quarter stays comparable with last quarter. That governance is the part you cannot prompt your way into.

4. Cross-source questions compound the error

Real decisions rarely live inside one dataset. The questions that move budgets cross systems: do the customers complaining about onboarding also show up in churn, does the issue spiking in reviews match what agents hear on calls. Every join between an unstructured source and another system loses accuracy, and the losses multiply. In our study, cross-source accuracy landed near two-thirds end to end. The weakest link is always the unstructured step, and no amount of prompt engineering fixes it, because the problem is not the reasoning. It is the ground the reasoning stands on.

Comparison card: customer signals scattered across siloed tools so every team sees a different customer, versus one unified signal layer and one customer view.

5. You pay the model to redo the same work, forever

On raw data, an LLM spends 68-75% of its compute re-structuring the same signals on every single run, before it can even start answering your question. Structure once, and every question after that is cheap. In our measurements the structured approach came out up to 5.3x cheaper per analysis.

So the build route does not just cost you an engineering team to wire and babysit pipelines. It also rents the same understanding over and over, at inference prices.

Raw LLM vs. customer context layer, side by side

Running a raw LLM on your data compared with a structured customer context layer
What you need Raw LLM on your data Structured customer context layer
Same answer on every run 0% top-10 overlap across runs 100% overlap across runs
Accuracy vs. expert labels F-score 65, even with the taxonomy provided F-score 95
Coverage Samples a slice per query Classifies 100% of signals
Issue sizing Same issue counted up to 5.4x differently One governed count, comparable over time
Cost per analysis Re-structures on every run (68–75% of compute) Structures once, up to 5.3x cheaper
Audit trail “The model said so” Labels, definitions, and scores you can inspect

All figures come from the study above: 136,864 reviews, six marketplaces, three setups, three runs per question, scored against held-out expert labels.

It is not a model problem. It is a context problem.

None of this is an argument that LLMs are bad. The models are remarkable, and they are only getting better. It is an argument about what they are standing on.

An LLM answering questions about your customers is doing two jobs at once: understanding what each signal means, and reasoning about the pattern. When you feed it raw exports, you are asking it to redo the first job from scratch on every question, invisibly, with no ground truth, no consistency guarantees, and no memory of how it did it last time. Everything downstream inherits that instability.

A customer context layer does the first job once, properly. It pulls every signal your customers send, across tickets, calls, reviews, surveys, CRM notes, and product analytics, into one place. It classifies 100% of them, not a sample, against a governed taxonomy that means the same thing to every team and stays comparable as it evolves. It connects those signals to each other and to the numbers leadership acts on, like the ARR at risk behind an issue. And it keeps an auditable score: F-scores measured against expert labels, not a model grading its own homework.

Comparison card: keyword search piles billing, fraud, and pricing signals into one messy bucket, while Birdie labels split them into clean, consistent categories.

That structured foundation is what our customer intelligence product builds on, and it is why the answers hold still between Monday and Thursday. The loop we kept returning to throughout the series runs on it: Signal, Diagnose, Act, Prove, Learn. Signals come in from every source in your stack, get structured and quantified, drive an action, and the impact of that action gets measured against the same stable categories that surfaced it. That last step, proving a fix worked, is only possible when this quarter’s categories mean the same thing they meant last quarter.

And in an AI world this matters more, not less. Everyone can build fast now. Very few teams are building on coherent foundations. Structured context is becoming the scarce asset, because it is the one thing the model cannot generate for itself.

The answer is not build or buy. It is build on top of buy.

Here is where the series lands, and it is not "never build."

The teams getting the most out of AI are doing both. They buy the hard, specialized layer: ingestion at scale, full-coverage classification, taxonomy governance, accuracy measurement, the connection between signals and revenue. Then they build freely on top of it, because now their LLMs, agents, and internal tools have solid ground under them.

That is exactly what the MCP layer is for. Anyone on your team can ask a question in plain language and get an answer grounded in 100% of your structured signals, not a sample of raw text. Your analysts, your agents, and yes, your LLMs, all query the same governed context. The weekend project becomes viable, because the part that made it dangerous is handled underneath.

DIY the workflows. Do not DIY the context.

Comparison card: climbing an org chart to get an answer from dashboards and queues, versus asking Birdie MCP in plain language and getting an answer grounded in 100% of signals.

"Can’t we fix this with better prompts, RAG, or fine-tuning?"

This is the objection we hear most, and it deserves a real answer.

Prompting, retrieval, and fine-tuning all improve the reasoning job. None of them create ground truth. RAG retrieves chunks of the same unstructured text and inherits the same ambiguity. Fine-tuning teaches the model your tone and your domain, not a consistent, governed count of what happened last month. Better prompts reduce variance; they do not eliminate it, and you will not know when it bites, because there is no audited score telling you.

The second objection is quieter: "our data team can build the structured layer too." They can, and some should. But be clear-eyed about the scope. It is not a pipeline, it is a product: classification quality measured continuously against human labels, a taxonomy governed through every reorganization and product launch, joins maintained across every source as formats change, at millions of signals a month. Wiring it up takes a weekend. Making it return the same answer twice, at 95 accuracy, for years, is a company’s worth of work. We know because it is the company we built.

Stop betting strategy on a coin flip

Eleven posts, one conclusion. Any LLM can produce customer insights. Only structured context can make them accurate, reproducible, and worth acting on.

__wf_reserved_inherit

If your top issue would not survive a second run, it is not an insight yet. See what your signals look like on a real foundation: book a demo.

Get started

Unlock the power of CX intelligence with our Voice of Customer and Quality Management platform.

Book a demo

What is a customer context layer?

Plus

A customer context layer is infrastructure that collects every customer signal, such as tickets, calls, reviews, surveys, and CRM notes, into one place and structures it against a governed taxonomy before any analysis happens. It classifies 100% of signals rather than sampling, keeps categories consistent across teams and over time, and links signals to business outcomes. AI tools then reason on top of that structure instead of re-interpreting raw text on every question.

Why is customer context important?

Plus

Customer context is what makes AI answers about your customers accurate, repeatable, and auditable. Without it, every question forces the model to re-interpret raw signals from scratch, so answers drift between runs and teams act on noise. With structured context, the same question returns the same answer, issues are sized consistently, and insights can be traced back to the signals that produced them.

How do you get accurate customer insights from an LLM?

Plus

Structure the data before the model sees it. Classify all of your signals against one governed taxonomy, measure that classification against human-labeled ground truth, and then let the LLM reason over the structured result rather than the raw text. In our testing on 136,864 reviews, this approach scored an F-score of 95 versus 65 for an LLM working from raw data, and returned identical top-10 issue lists across repeated runs.

What is the difference between using ChatGPT on customer feedback and a customer intelligence platform?

Plus

ChatGPT on raw feedback reads a sample of the text and generates a plausible narrative, which can change on every run. A customer intelligence platform first classifies every signal into stable, governed categories, quantifies them, and tracks them over time, then applies AI reasoning on top. The practical difference is reproducibility and auditability: one gives you a story, the other gives you numbers that hold still and can be verified.

How accurate are LLMs at analyzing customer feedback?

Plus

Less accurate than they sound. In our study of 136,864 marketplace reviews, a raw LLM’s top-10 issue list had 0% overlap with itself across three runs, and even an LLM given our exact taxonomy scored an F-score of 65 against expert labels, versus 95 for structured classification. The same issue was also counted 5.4x differently by the same model using the same definitions.

Should we build or buy customer intelligence?

Plus

Both, in the right order. Buy the context layer, meaning the ingestion, full-coverage classification, taxonomy governance, and accuracy measurement that are expensive to build and brutal to maintain. Then build your own workflows, agents, and analyses on top of that structured foundation, where your team’s speed becomes an advantage instead of a liability.

See Birdie in action.

See how Birdie turns customer signals into retention, expansion, and adoption decisions. 30 minutes. Live demo with outcomes.

Book a demo