How Daangn Cut Recurring BigQuery Costs by 41% With Automation
Kristóf Horváth
4 min read
Daangn, operator of Karrot, is one of the fastest-growing community-driven marketplaces in Asia, connecting tens of millions of users to neighbors, goods, and local services. Recommendation engines, fraud detection, and platform monitoring all run on BigQuery, which made it one of Daangn’s largest infrastructure line items as usage scaled. This post retells how Daangn’s engineering team found and closed that gap; the full case study has the complete record.
The challenge wasn’t only the bill. Managing slot allocations, catching anomalies, and reconciling commitments by hand had turned into a recurring operational burden on top of the cost itself. The team needed a way to see where the spend was actually going, not just a bigger number at the end of the month.
Where the slot waste was hiding
On the surface, BigQuery’s native autoscaler looked like it was doing its job: queries ran fast, workloads scaled without friction. What wasn’t visible was how that scaling was billed. Per Google’s documentation on slot autoscaling, you’re billed for the slots BigQuery scales up to, not for the slots your query ends up using, and scale-up happens in fixed 50-slot increments. A short, spiky workload can trigger a scale-up that then sits largely idle for the rest of that burst.
At Daangn’s query volume, that pattern compounded fast. The waste wasn’t a mystery once engineers could see it; it simply hadn’t been visible before, because a project-level billing export doesn’t show which specific job triggered which scale-up.
The fix: visibility before automation
Daangn brought in Rabbit to replace high-level billing exports with job-level cost intelligence, rolled out without re-architecting pipelines or any downtime. Three pieces did the work:
- Query-level cost attribution: every BigQuery job mapped to its actual slot consumption and cost, so engineers could separate exploratory ad-hoc queries from latency-sensitive production pipelines and see which ones were driving disproportionate spend.
- Near real-time anomaly detection: proactive alerts on runaway queries, anomalous job retries, or reservation imbalances as they happened, instead of a delayed billing review surfacing them days later.
- Automated max-slot tuning: once the waste was visible, Rabbit’s Max Slot Optimizer took over adjusting the reservation’s maximum slot setting continuously, so capacity followed real demand instead of sitting at one static number.
Daangn’s engineering team described the result plainly: Rabbit’s automation kept BigQuery usage tightly aligned with demand, cutting unnecessary capacity and saving hundreds of millions of won every month.
The results
The impact showed up fast. Within the first 23 days of a free proof of concept, Daangn saw a 22% reduction in BigQuery spend. From there, Rabbit’s automated optimization improved utilization by 37-46% across three major reservations, unlocking 41% in recurring monthly savings.
| Lever | What it did | Result |
|---|---|---|
| Query-level cost attribution | Mapped every job to slot consumption and cost | Made the waste visible for the first time |
| Real-time anomaly detection | Proactive alerts on runaway queries and reservation imbalances | Caught cost issues as they happened, not on the bill |
| Max Slot Optimizer | Continuously adjusted max slots to match demand | 37-46% utilization improvement across three reservations |
| Together | 41% recurring monthly BigQuery savings; 22% within the first 23 days |
The financial result was half the story. Automating anomaly detection, query-level attribution, and spend reconciliation freed up the equivalent of nearly a full engineering team’s worth of time every month, time that had been going into manual SQL auditing and billing review instead of product work.
What other teams can borrow from Daangn’s use case
Daangn’s sequence doesn’t need the company’s scale to work:
- Get job-level visibility before you try to fix anything. A project-level billing total can’t tell you which query is driving a scale-up.
- Treat detection and automation as separate steps. Visibility tells you where the waste is; automation is what keeps it from coming back.
- Alert on the pipeline, not the invoice. A cost issue caught the day it happens is a different problem than the same issue found three weeks later in a billing export.
- Expect the right max-slot setting to drift. A number sized for last month’s traffic doesn’t stay right as workloads change, which is the case for automation over a one-time sizing exercise.
For a similar story with a different starting point, see how Nordstrom cut its BigQuery spend by 47%:
Post-migration BigQuery at Nordstrom: From rising slot waste to 47% lower spend
Want to see what Rabbit’s BigQuery optimization features would do on your estate? Book a demo and we’ll walk through your own usage data. If you’d like a first estimate before talking to anyone, try the BigQuery Savings Calculator.


