Перейти к содержимому
HublinkTech
AI & Engineeringby Babak Abedi

Why AI Fails on Your CRM and ERP Data

AI projects stall on data quality more often than on model choice. The specific defects in CRM and ERP records, and what to fix before adding AI.

Why AI Fails on Your CRM and ERP Data

A company adds an AI feature to its CRM. Ask it which deals are at risk and it produces an answer that is confident and wrong. The model is not the problem. The records it reads are inconsistent, incomplete and partly fictional, and no model can recover information that was never entered.

This is the most common reason enterprise AI underperforms, and it is rarely the reason given. It is easier to attribute a disappointing result to the model, because the model can be swapped and the data cannot.

The defects are specific and they are addressable. Here is what they look like in CRM and ERP systems, and what to do about each.

The defects

Free text where structure belongs

Someone needed to record information the system had no field for, so they put it in the notes. Delivery terms, the real decision maker, a discount agreed verbally, the reason a deal stalled.

A human reading that record understands it. A system cannot query it, aggregate it, or depend on it. Worse, the same information appears in different phrasings across thousands of records, so extracting it is a language problem rather than a query.

Fields that mean different things to different people

A CRM has a stage field with defined values. In practice, one team marks a deal as qualified after a discovery call, another after a budget conversation, a third when the manager asks for pipeline numbers.

The field is populated consistently and means nothing consistent. Any analysis built on it — forecasting, scoring, risk flagging — inherits the inconsistency and presents it as fact.

Duplicates

The same company exists as several records, created at different times by different people, each holding part of the history and each slightly differently spelled. Legal entity suffixes appear in some and not others. Transliteration differs. One record uses the trading name and another the registered name.

A model asked about that company sees whichever record was retrieved and answers on partial history. This is the defect that produces the most visibly wrong answers, because the system appears to be confidently ignorant of things the company knows.

Staleness

Records are created carefully and updated rarely. Contacts leave their companies, addresses change, statuses move on without anyone closing the record. The database holds a snapshot of various past moments presented as the present.

Nothing in the record indicates its age, so a model treats a five-year-old contact and a current one identically.

Missing data that is not missing at random

Some fields are empty because the information does not exist. Others are empty because the person entering the record was busy, and the busy ones are disproportionately the active, important records.

Any statistic computed over populated fields is therefore biased in a direction nobody measured, and a model trained or prompted on that data inherits the bias.

Process artefacts

Test records created during setup and never deleted. Placeholder entries. Records created to work around a permission issue. Deals marked closed-lost and recreated as new ones, so the history shows two opportunities where there was one.

These are invisible to the people who work in the system daily and highly visible in any aggregate the AI produces.

What each defect does to an AI feature

The failure modes map onto the defects directly, which is useful because it means the diagnosis is tractable.

Confident wrong answers come from duplicates and staleness. The model retrieves one record, has no way to know it is partial or old, and answers from it.

Answers that contradict what staff know come from free-text data the system cannot reach. The information exists in the notes; the retrieval never surfaced it.

Numbers that do not match the reports come from inconsistent field semantics and process artefacts. Both the AI and the report are counting the same field; they are interpreting it differently or including different junk.

Inconsistent behaviour across teams or regions comes from field semantics varying by who populates them. The feature works for one department and fails for another, and the difference is in the data rather than in the question.

Plausible invention comes from missing data. Asked a question the records do not answer, a model that has not been instructed and constrained to decline will produce something reasonable-sounding instead.

What to fix, in order

Not all of this needs fixing, and attempting a full data cleanup before starting any AI work is how projects die before delivering anything. The sequence that works:

1. Scope to the question. Decide which AI feature comes first and identify the fields it actually reads. A deal-risk feature touches a handful of fields across two or three objects. That is the scope of the cleanup, not the whole database.

2. Profile what is there. Run the counts before changing anything: how many records have each field populated, how many distinct values exist in fields that should be categorical, how many probable duplicates exist, what the age distribution of records looks like. This is unglamorous and it is where the real picture appears. Most teams are surprised by their own numbers.

3. Fix definitions before fixing data. Write down what each field in scope means, with the condition that determines its value. Get the people who populate it to agree. Cleaning data against an undefined field produces a cleaner version of the same ambiguity.

4. Deduplicate. Match on the strongest available identifiers — tax number, registration number, domain — rather than on name similarity alone, which performs badly across languages and legal suffixes. Merge with history preserved, and record which records were merged so the operation can be audited.

5. Extract from free text where it matters. This is a legitimate use of AI itself, and a good first project: process the notes field, extract the handful of attributes that belong in structure, and write them to real fields with a confidence indicator and a review step. It delivers value directly and improves the substrate for everything after it.

6. Add provenance and recency. Every record should carry when it was last verified, not only when it was last touched by any process. A field that distinguishes confirmed-current from assumed-current is worth more than most cleanup work.

7. Prevent recurrence at entry. Validation, required fields where the information genuinely exists, controlled vocabularies, duplicate detection at creation. Without this step, the cleanup is a one-time expenditure that decays from the day it finishes.

Design the AI feature for imperfect data

Data will never be clean enough for the problem to disappear, so the feature has to be built for the data as it is.

Expose the source. Every answer should name the records it was derived from. A user who can see which three records produced an answer can tell immediately whether the system missed something, and that check is worth more than a marginal accuracy improvement.

Give the model the ability to decline. A system that answers every question will invent an answer when the data does not contain one. Instructing and evaluating for "the records do not contain this" is a feature, not a limitation.

Signal confidence from the data, not from the model. A model's expressed certainty is unrelated to whether the underlying records were complete. Confidence should be computed from what was actually available: how many records matched, how recent they are, whether the fields relied upon were populated.

Surface the gaps. When a feature cannot answer because a field is empty, log it. The accumulated log becomes a prioritised list of what to fix next, derived from actual demand rather than from a data audit.

The organisational part

Data quality degrades for a reason, and the reason is almost never carelessness.

People enter data badly when the system asks for information they do not have at that moment, when the required fields do not match how the work actually happens, or when nothing they receive back depends on what they entered. A salesperson who has never seen the stage field affect anything has no reason to apply it precisely.

This is why AI features can improve data quality rather than only consuming it. When a system visibly uses the data — producing a useful answer, a summary that saves time, a flag that turns out to be right — the incentive to enter it properly appears for the first time. The reverse is also true: a feature that produces obviously wrong answers teaches people that the data does not matter.

The practical implication is to deliver something that uses the cleaned fields and gives value back, early, rather than running a cleanup programme that asks for effort and returns nothing visible for months.

How we approach it

Clavix360, our AI CRM and ERP platform, covers sales, operations, human resources and finance in one system. That removes one layer of this problem rather than solving it: the same customer, the same order and the same invoice are one record rather than three records in three systems that have to be reconciled before anything can be asked of them. Cross-system duplication is a large share of the defect list above, and it does not arise when the systems are not separate.

The rest of the list still applies, and the platform is built on the assumptions in this post: answers name the records behind them, and a question the data does not answer returns that rather than a plausible invention.

Ara, the trade intelligence engine developed by HublinkTech, addresses a related version of the same problem across organisations rather than inside one. It decides whether two descriptions — written in different languages, under different naming conventions and customs codes — refer to the same product or company. Ara is in development.

The summary: an AI feature is a question asked of your records. If the records cannot answer it, no model will. Profile the data, fix the definitions, scope the cleanup to one feature, and build the feature to show its working.

“a system that answers every question will invent an answer” → /en/blog/evaluating-ai-output-llm-evaluation-methods “records in three systems that have to be reconciled” → /en/blog/connecting-ai-to-business-systems-integration “Ara” → /ara “Clavix360” → /platforms/clavix360 “Data and Intelligence” → /capabilities/data-and-intelligence

Теги#crm#erp#data quality#enterprise ai#applied ai#data management
Поделиться

Хотите больше от HublinkTech?

Скоро будут новые тексты. А пока посмотрите, что мы создаём, на /services или познакомьтесь с нами на /about.

Why AI Fails on Your CRM and ERP Data — HublinkTech