RevOpsXL
GTM Diagnostic Request the audit

Why most AI pilots fail on CRM data

Alexandra-Emily Kokova

Alexandra-Emily Kokova

Published 30 June 2026 - 8 min read

The number everyone quotes is that most corporate AI pilots go nowhere. When we trace one back, we find the data underneath it: duplicate records, stale fields, and systems that never fully synced.

In short

Most AI pilots that stall were pointed at data they could not use - duplicate records, stale fields, half-synced systems, fields nobody had agreed the meaning of. A model trusts all of it, acts on it at volume and bills you per call, so the data layer gets fixed before the pilot runs.

On this page

Every few weeks a company tells us a version of the same story. They ran an AI pilot, it looked sharp in the demo, and then it never made it into the daily work. The tool got shelved, the budget got written off, and the account that went round internally was that the technology was not ready yet.

The number that gets passed around is that the large majority of corporate AI pilots never reach production. Nobody quoting it can tell you the exact figure, and neither can we, but the pattern is real and we keep finding the same thing underneath it: the data the tool was pointed at.

That matters more in revenue operations than almost anywhere else, because the data an AI tool needs to be useful - who the customer is, what stage the deal is at, what happened on the last call - lives in the CRM, and the CRM is usually the least trustworthy system in the building.

Where the post-mortem goes wrong

When a pilot dies, the post-mortem tends to blame the tool. The tool hallucinated, people say, or it fell over on the edge cases. That can be true and still miss the point, because a model can only reason over what it is handed, and what it was handed was a picture of the business that was already wrong before any AI touched it.

Picture what the tool was reading. A contact record carrying three versions of the same company. A deal stage that means something different to every rep. A last-activity field that stopped syncing back in March. Ask a person to make a good call from that and they would push back and ask questions. The model does not push back. It answers confidently from bad inputs, and the wrong answer arrives dressed in a clean, trustworthy-looking interface.

Most AI plans skip the line between automation and AI, and it explains a lot of this. A workflow rule does the same thing every time it sees the same input, so you can test it and prove it works. A model is right most of the time, which is fine on clean data. Give it five records for one company and it reasons about five companies; give it a source field a rep overwrote from memory and it explains a pipeline that never existed, in complete sentences.

Picking the model rarely decides it

The frontier models sit close enough in quality that the choice between them is seldom what decides a project. They have all read the same internet. None of them has read how your deals close or which of your fields the team trusts, and that knowledge is what makes an AI tool worth having. You cannot buy it off the shelf.

We went into this at length in teach the model your deals, not the internet. Your own data is the part that decides it.

What breaks a pilot

When we trace a stalled pilot back to its inputs, the same handful of problems keep turning up.

  • Duplicate records. The same company sitting under three slightly different names, so the model reads one account as three, splits the history across them, and never sees the whole relationship it is supposed to reason about.
  • Stale and empty fields. A field that looks authoritative and has not been touched since the person who owned it left. We once audited a portal with 722 custom properties, 203 of them empty (the story is in you have 722 CRM properties, you need about 200). A model reads an empty field as a fact and a stale one as current.
  • Half-synced systems. The product database says one thing, the CRM says another, billing says a third, and no one ever agreed which is right. The integration moves rows between them; it does not reconcile what they mean.
  • No agreed definition. Five people give five definitions of qualified, or of a given pipeline stage. If the humans have not agreed what the field means, the model has no chance of using it well.

Even a clean import does not stay clean. MarketingSherpa measured B2B contact data going out of date at about 2.1% a month, which HubSpot works out to roughly 22.5% a year, with nobody touching a record. Nobody tells the model which of those records went stale since March.

Why pilots pass the demo and fail the rollout

This is why so many pilots sail through the demo and stall on the rollout. A demo runs on a small, clean, hand-picked slice of data, the ten records someone chose because they show the tool at its best. Production runs on all of it, the fifteen thousand messy records nobody has looked at in two years. The demo only tested the model. The rollout is where the data gets tested, and nobody had made that part ready.

Anyone who lived through the analytics wave has seen this before. Someone built a beautiful dashboard, with real budget behind it and every metric the leadership team asked for, colour-coded and live, and the sales team kept their real numbers in a spreadsheet. The charts reported the data faithfully. The data was wrong, so people stopped opening it, and it still sits there and still loads. An AI pilot runs the same experiment with a bigger budget and a language model where the charts used to be.

Why bad data costs more with AI

A bad dashboard is cheap. It gets ignored and costs you a licence. A model on bad data keeps working: you pay for every call it makes, and it scores leads and updates records at a volume no person was ever going to match. A rep entering bad data makes bad rows one at a time, where a model reasoning over bad data makes bad decisions in bulk and explains each one fluently. When it writes back to the CRM, the next run reads those decisions as fact.

Fix the data first

We build AI into revenue systems for a living, so read this as a point about order. The data work comes before the build. When a client asks us to help with an AI project, the first stretch of the work usually has no AI in it at all.

  1. Audit what the model will read rather than the whole CRM. Most of what matters lives in a couple of hundred objects and fields, so we scope the audit to the ones the tool depends on.
  2. Deduplicate on something stable. Company name is why the duplicates came back the last three times; a registry number or an email domain holds where a name drifts. We wrote the order that sticks in how to clean up a messy HubSpot CRM.
  3. Fix the definitions before the fields. Agree what qualified means and what each stage is, write it down, then make the field enforce it rather than invite opinion.
  4. Keep it clean with a light rule set instead of a project. A few rules, one owner, a weekly check, along the lines of data governance for teams too small to have a data team.
  5. Then pilot, on real data, at real scale, where the demo and the rollout are finally the same test.

Where this sits, and who owns it

The reason this keeps happening is that the AI project and the data it depends on belong to different people. The tool gets bought by someone excited about the tool. The data it runs on belongs to whoever owns the CRM, and the two conversations rarely meet in one room. Revenue operations is where they are meant to meet, the function that owns the data layer the whole go-to-market runs on.

Most messy CRMs were built one reasonable request at a time, a field here and a pipeline there, none of it wrong on the day (we collected a few in RevOps confessions). If nobody was accountable for the shape of that system before the pilot, nobody is after it, and the model now quotes the mess back with more confidence. The owner has to be a named person who decides what a stage means and what counts as qualified, which is a different job from the admin who looks after the settings.

That is the work we do. Before anyone builds, we run a read-only look at whether the data can hold the thing you want to put on top of it, the check we describe in is your CRM ready for AI. Then we fix the data layer, and only then is there a pilot worth running. Our custom AI build work starts at the data every time, and a diagnostic session is a fast way to find out whether yours is ready.

The pilots that made it into daily work rarely had a cleverer model than the ones that got shelved. Someone had spent the time on duplicates and definitions before the tool was switched on.

Alexandra-Emily Kokova

Hands-on practitioner, ecosystem architect and GTM strategist, in and around HubSpot since 2014, building the systems B2B revenue runs on across the EU, UK, Nordics, the Gulf and North America.

Published 30 June 2026

Contact me on LinkedIn

Common questions

Rarely because of the model. In the large majority of stalled pilots we see, the tool was pointed at data it could not use: duplicate records, stale or empty fields, systems that were only half synced, and fields nobody had agreed the meaning of. A model answers confidently from whatever it is given, so bad inputs produce confident, wrong output with a clean interface on top.

Audit only the objects and fields the tool will read, rather than the whole CRM. Deduplicate on something stable like a registry number or domain instead of company name. Agree what each field and each stage means before you trust it, and keep it clean with a light set of rules and one owner. Then run the pilot on real data at real scale.

Almost always the data. The leading models are close enough in quality that the choice between them rarely decides a project. What decides it is whether your own data - who the customer is, what stage the deal is at, what happened last - is clean and agreed. That part cannot be bought off the shelf.

A demo runs on a small, hand-picked, clean slice of records chosen to show the tool at its best. Production runs on everything, including the thousands of messy records nobody has reviewed in years. The demo tests the model; the rollout tests the data, and the data is usually the part that was never ready.

They fail for the same reasons - data nobody cleaned and a model of the business nobody owned - but a dashboard on bad data just gets ignored. A model on bad data acts on it, scoring leads and updating records at volume, and you pay for every call it makes. The same weak foundation costs more and does damage sooner.

Get the next field note by email

New field notes twice a month. One short email when one goes up, nothing else.