Cloud cost controls · July 18, 2026
Hard limits, spend caps, and overage: what cloud billing controls really do
Database, logging, hosting, storage, and AI services use the word limit for very different outcomes. This guide classifies hard stops, throttles, scoped spend caps, alerts, prepaid credits, and automatic overage for a solo operator.
Method
What this comparison measures
- Classify controls by runtime outcome: stop, throttle, degrade, notify, or continue billing.
- Inspect the provider's exclusions and adjacent meters. The feature name alone is insufficient.
- Use first-party documentation checked on July 18, 2026 and exclude negotiated enterprise contracts.
- Score cost protection separately from availability because a perfect hard stop can still create an outage.
Six different mechanisms are sold as a limit
A hard stop rejects work. A throttle admits work at a lower rate. Graceful degradation removes a feature. A budget alert sends a message. A scoped spend cap blocks only named meters. Prepaid credit ends when the balance does—or automatically replenishes. Automatic overage keeps the service healthy and the invoice open.
The operational outcome matters more than the label. A database moving to read-only mode preserves reads but breaks checkout. A logging index quota protects searchable storage but can remove the evidence needed during an incident. A hosting pause protects the card and makes every project unavailable.
| Mechanism | Runtime result | Spend result | Required evidence |
|---|---|---|---|
| Hard stop | New work rejected | Meter stops | Exact status/error and reset condition |
| Throttle | 429 or queued work | Spend grows more slowly | Rate, burst size, Retry-After behavior |
| Feature degradation | Selected capability disabled | Partial protection | Which user journey still works |
| Scoped spend cap | Covered meter restricted | Excluded meters continue | Complete covered/excluded inventory |
| Budget alert | No runtime change | Billing continues | Alert delay and independent delivery path |
| Automatic overage | Service continues | No upper boundary | Application rate limit and provider kill path |
Supabase is a useful example of a scoped cap
Supabase documents that its Pro Spend Cap covers egress, storage, logs, MAU, Edge Function invocations, Realtime messages, and several other usage items. It does not cover compute, read replicas, custom domains, provisioned IOPS or throughput, IPv4, log drains, MFA phone messages, or point-in-time recovery.[1]
With the cap enabled, covered over-usage can lead to service restrictions after a grace period. Documented outcomes include paused projects, read-only databases, disabled launches, and HTTP 402 responses. Disabling the cap restores service by converting excess usage into overage.[1][2][3]
That is honest product behavior, but it creates a design decision: which user journeys must survive a billing restriction? Authentication, reads, writes, image transformation, and realtime features do not fail in the same way.
Alerts, quotas, and stops protect different failure planes
Grafana Cloud usage alerts trigger when usage exceeds a threshold; they are not described as a universal ingestion stop. Datadog can hard-limit logs stored in an index, while other log paths continue. New Relic Free stops ingest and platform access after 100 GB, whereas paid usage continues according to the plan.[5][4][6]
Vercel Spend Management can notify, invoke a webhook, or pause projects at a configured amount. The pause action is stronger than an email, but it turns a billing event into an availability event. Provider controls must be paired with application-level rate limits and an independent alert channel.[7]
The score below is editorial. Five means the documented mechanism can prevent more covered spend without operator action; it does not mean the product is safer overall.
Write a billing failure contract
For every paid dependency, store six facts beside the architecture: billed unit, included quota, enforcement delay, runtime action, excluded meters, and recovery procedure. Screenshotting a pricing page is not enough because it does not describe how the application fails.
Then test the boundary below production. Exhaust a small sandbox quota, verify the exact error, confirm that one customer cannot consume a shared organization limit, and prove that the operator can restore service without deleting evidence.
- Record whether the payment card is required and whether credit auto-replenishes.
- List every meter excluded from a spend cap, including support and provisioned add-ons.
- Set tenant-level and operation-level budgets before the provider account limit.
- Define which capability is allowed to stop first: previews, transforms, AI calls, writes, or the whole app.
- Test the reset path at billing-cycle rollover and the manual emergency-unblock path.
Source register
Specifications and prices change. The links make this snapshot auditable.
Sources and commercial facts were checked on 2026-07-18. Prices exclude tax unless the source says otherwise.
- Control your costs ↗Supabase · billing
- Billing FAQ and Fair Use Policy ↗Supabase · billing
- Platform HTTP status codes ↗Supabase · product
- Log indexes and daily quotas ↗Datadog · billing
- Set up billing usage alerts ↗Grafana Labs · billing
- New Relic pricing ↗New Relic · pricing
- Manage and optimize usage ↗Vercel · billing
- Managing costs with AWS Budgets ↗Amazon Web Services · billing
- Usage limits ↗Railway · billing