Databricks Apps run 24/7 with no native scale-to-zero. ~$350/mo per app (720 hrs), but internal dashboards/admin tools only get used a few hours/day. You pay for 100%, use ~15%.
We had a test app run idle for 69 days before anyone noticed. ~$800 wasted.
Fix โ two scheduled jobs hitting the Apps REST API:
- Notebook wraps the start/stop endpoints (params: app_name, app_command; supports all to target every app)
- Job 1 โ start: 0 0 9 ? * MON-FRI *
- Job 2 โ stop: 0 0 18 ? * MON-FRI *
Result: 50 hrs/week vs 168 โ ~76% reduction. Users don't notice; app's up 9โ18.
Gotchas:
- Cold start is 2โ3 min โ schedule ~15 min before business hours
- Add failure alerts (Slack webhook) or a silent failed start = angry DMs
- Schedule a weekly stop all even in app-less workspaces to kill forgotten test apps
Doesn't cover multi-timezone or true on-demand, but handles ~90% of usage on a schedule + manual start for the rest.