Your Data Isn't Ready for AI (And Why That's Actually Good News)
Your data isn't ready for AI, and that's good news. It means you found the problem before you built on it. What LoginRadius, GrackerAI, and LogicBalls taught me about the gap between organized data and AI-ready data, plus the 2025 numbers on why it sinks most projects.

Every founder I talk to thinks their data is "mostly clean." I thought the same thing at LoginRadius. I was wrong, and it nearly sank our first AI project.
"Our data is clean," a CTO told me last year. "Three years of user behavior in the warehouse, structured, consistent schemas. We're ready for AI." Months and a six-figure prep budget later, he messaged me: "We're still not ready to train anything. What did we miss?"
He had confused organized data with AI-ready data. They are not the same thing, and the gap between them is where most AI projects quietly die.
Here is the part nobody says out loud: discovering your data is not ready is good news. It means you found the problem before you built on top of it. The companies in real trouble are the ones who assumed they were ready and shipped anyway.
The numbers are worse than you think
This is not a me problem or a your-company problem. It is an industry problem, and the 2025 data is brutal.
Gartner predicts that through 2026, organizations will abandon 60% of AI projects that are not supported by AI-ready data. In a Gartner survey of data management leaders, 63% said they either lacked the right data management practices for AI or were not sure whether they had them. Informatica's 2025 CDO survey found that only 12% of organizations report data quality high enough to support AI, and that data quality is the single biggest obstacle to AI success.
It shows up in abandonment rates too. S&P Global Market Intelligence found that 42% of companies scrapped most of their AI initiatives in 2025, up from 17% the year before. RAND has pegged the AI project failure rate around 80%, well above ordinary IT projects. The through-line in almost every post-mortem is not the model. It is the data feeding it.
So if your data is not ready, you are not behind. You are in the honest majority. The question is whether you admit it early or discover it expensively.
What "clean" data actually hid at LoginRadius
During our scale-up years at LoginRadius, I was sure we had exemplary data. We ran a customer identity platform serving over a billion identities, with detailed authentication logs, behavior tracking, and full analytics. Organized, backed up, accessible. By every traditional database measure, it was clean.
Then we tried to use it for AI, and the floor gave way:
- Successful logins were captured perfectly. Failed attempts had inconsistent error categorization, so the model could not learn what failure looked like.
- Web tracked page views cleanly. Mobile used a completely different event schema, and API-only customers had no behavioral data at all.
- Customer records lived across several systems with different identifiers. Some users had multiple profiles, and consistency checks turned up meaningful duplication.
- Time zones were handled differently across sources. Historical migrations had introduced quiet formatting drift.
None of this broke LoginRadius. The platform did its job flawlessly for identity and access. But for training a model, this "clean" data was nearly unusable. That is the lesson I keep relearning: data that works for an application often fails completely for AI. An application queries known rows. A model tries to learn patterns, and every inconsistency becomes noise it cannot tell from signal.
"Clean data" is a myth. Solvable data is the real goal
After LoginRadius, GrackerAI, and LogicBalls, I stopped chasing clean data. All data is dirty in ways that matter for AI. The useful question is not "is my data clean" but "are my data problems solvable for this specific use case."
Most teams think they have clean data because they measure the wrong things: schema compliance, referential integrity, whether dates parse, what percentage of fields are populated. All necessary. None of it tells you what AI needs, which is label consistency, whether the available features actually predict the outcome, whether patterns hold across time, and whether the data reflects reality or a sampling artifact.
At GrackerAI I assumed security and marketing data would be cleaner than average, because security tools are built for precision. Wrong again. Threat categorization varied wildly between publications. Timestamps reflected when something was published, not when the threat was found. Social engagement was gamed by bots. Author expertise was recorded nowhere. The fix was not to scrub all of it to perfection. We built models that weighted sources by measured reliability instead of trusting everything equally. Working with the mess beat waiting for it to disappear.
This is also why retrieval-augmented generation disappoints so many teams. RAG does not clean your data, it retrieves it. Point it at outdated, contradictory, or badly structured documents and it surfaces and amplifies those problems, just with a confident tone on top. Garbage in, garbage out, now at machine speed.
Start on imperfect data on purpose
Here is the rule I run now: most of your AI value comes from a small slice of usable data, not from perfecting everything. Data scientists already lose a large share of their time to prep. Anaconda's survey puts it near 45% of the workday. If you insist on cleaning the entire warehouse before you train anything, you can burn a year and still have nothing in production.
When we launched LogicBalls, we needed training data for many different AI agents across domains. Perfecting all of it would have taken years, so we inverted the order:
- Weeks, not quarters: find the slice of data that is already usable, train on that subset, and ship basic functionality to real users.
- Let performance set priorities: measure which quality problems actually hurt model output, fix those, and ignore the ones that do not move outcomes.
- Improve in parallel: keep collecting cleaner data from live interactions instead of pausing everything for a cleanup project.
Shipping early did more than save time. Real usage told us which data problems mattered, which is information you cannot get from a spreadsheet audit. "Good enough" data is consistent enough for pattern recognition, representative of the cases you actually need to handle, sufficient in volume for that narrow use case, and readable by your pipeline. You can build real AI on imperfect data. You cannot build any AI while waiting for perfect data.
Dirty data is a security problem, not just a quality one
My security background makes me see one more thing most teams miss: bad data is a risk surface, not just a performance drag.
- Leakage: inconsistent labeling and weak governance can push sensitive fields into model outputs and leave audit gaps you cannot explain to a regulator.
- Poisoning: if you cannot trace where training data came from, you cannot tell clean inputs from malicious ones, and you cannot detect anomalous records before they teach the model something you did not intend.
- Compliance: when data is scattered across systems, proving you honored a deletion request or tracked consent correctly becomes very hard, which is exactly the question an auditor asks first.
At LoginRadius, data quality gaps created real security blind spots. Behavioral anomalies slipped through because the baseline was inconsistent, and fraud detection weakened where historical data had holes. Treat data validation as a security control, keep clear lineage on anything you train on, and build deletion that reaches into every training set. Same discipline, two payoffs.
What to actually do this month
You do not need a year-long data program to start. You need an honest audit and a small first move.
- Run a reality check first. Ask the questions that expose the truth: how long would it really take to pull everything one use case needs into one place, who is the only person who can interpret each source, and how would you delete one user's data from a training set today. If you cannot answer confidently, that is your finding, and it is better to have it now.
- Find your cleanest slice. Identify the portion of data that is already usable and the most recent 6 to 12 months, which is almost always higher quality because collection improved over time. Train there.
- Score instead of scrub. Rather than fixing everything, tag data by source reliability, completeness, and recency, and let the model weight it. Spend cleanup effort only where it demonstrably changes output.
- Borrow good data to start. Validate your approach on high-quality external datasets while you improve internal sources, so learning does not wait on cleanup.
- Keep a human in the loop. Ship with oversight while quality climbs. The corrections become both better output today and better training data tomorrow.
Why this is actually good news
Finding out your data is not AI-ready feels like a setback. It is an advantage, for a simple reason: most of your competitors are making the exact assumption you just stopped making. They are either building on a bad foundation or freezing while they chase perfect data. Neither ships.
You get to move faster by designing for reality instead of an ideal. You end up with more durable systems, because models built for messy inputs tend to hold up better in production than ones trained on artificially pristine sets. And you build better data practices as a side effect, because AI forces you to confront the quality problems your organization has been routing around for years.
The teams that win the next few years are not the ones with the cleanest data. They are the ones honest enough to start before it is clean. Your data is not ready for AI. Good. Now you know where to begin.
What is the biggest "we thought this was clean" surprise you have hit in an AI project? I have yet to meet a team that does not have one, and the story usually changes how they think about readiness.
Get the newsletter
New writing on identity, AI security, and building software, delivered when it ships. No tracking pixels, no funnels, unsubscribe with one click.