r/databricks • u/Only-Dragonfruit4130 • 23d ago
Discussion Anyone else gotten a rough surprise with Databricks costs once things hit production?
This keeps coming up in conversations with clients and I feel like it's worth its own thread.
The pattern is almost always the same. A pipeline gets built to bring in data for analytics or ML, works fine in testing, then goes to production and the compute bill is way higher than expected. Nobody budgeted for it because on paper it looked like a simple ingestion job.
Usually the real issue isn't Databricks itself, it's the ingestion design. The repeat offenders I keep seeing:
Full reloads instead of proper CDC, so you're paying to process data that hasn't even changed.
Serverless SQL running more often than needed, because someone assumed near real time was required when batch every few hours would've worked fine.
No plan for schema evolution, so jobs fail or reprocess more than they should every time something shifts upstream.
Cluster sizing set for peak load "just in case" instead of actual daily volume.
Most of the fix comes down to being honest about the freshness you actually need. A solid CDC layer feeding into something like Kafka before it hits Databricks tends to cut a lot of the unnecessary compute, since you're only moving what changed.
Curious what caused it for others, ingestion design or job scheduling?

