The full answer
Query the billing system table, group the spend by SKU, workspace, compute and tags, and compare the two months until the increase sits in a few rows. Most Databricks cost surprises come from a short list: scheduled jobs running on all-purpose clusters, interactive clusters or warehouses that never shut down, a job that got slower or runs more often, and oversized compute. Then put guardrails in place so the next one shows up in days, not on the invoice.
1. Break down the spend
system.billing.usage has one row per usage record, with the SKU, date, quantity, tags and the IDs of the job, cluster or warehouse:
SELECT sku_name,
usage_metadata.job_id,
usage_metadata.cluster_id,
usage_metadata.warehouse_id,
date_trunc('month', usage_date) AS month,
SUM(usage_quantity) AS dbus
FROM system.billing.usage
WHERE usage_date >= '2026-08-01'
GROUP BY ALL
ORDER BY dbus DESC;
Join to system.billing.list_prices to turn DBUs into money, and compare month against month.
2. What to look for
| Finding | Likely cause | Fix |
|---|---|---|
| All-purpose compute SKU grew | Scheduled jobs or pipelines pointed at an interactive cluster | Move them to job compute, which costs significantly less for the same work |
| Cluster usage around the clock | No auto-termination, or a notebook keeping it alive | Auto-termination on every interactive cluster |
| SQL warehouse on all day | Classic warehouse left running for dashboards | Serverless warehouse with a short auto-stop |
| One job's DBUs doubled | It slowed down (data growth, skew, small files) or runs more often | Fix the job; check its schedule and triggers |
| Many large clusters from one team | No limits on what people can create | Compute policies with size limits |
A useful sign: job_id is empty for jobs that ran on all-purpose compute. A lot of all-purpose usage with no job ID but a job-like daily pattern is usually scheduled work on the wrong compute.
3. Guardrails
- Tags on clusters, warehouses and jobs (team, project, environment). Tags only apply from when they are added, so start now.
- Compute policies that cap worker counts, restrict instance types and require auto-termination.
- Budgets and alerts per team, with a weekly report from the billing table.
- Review the top 10 jobs by cost each month. Those few usually make up most of the bill, and Photon, serverless or a better layout often makes them both faster and cheaper.
What interviewers want: using the billing system table rather than guessing, the common causes (all-purpose vs job compute, idle compute, slowing jobs), and tags, policies and budgets as the lasting fix.
Last updated 16 October 2026
Sources