Your servers are running right now. All of them. The staging environment nobody has touched since Tuesday. The internal admin panel that gets 50 visits a day. The webhook handler waiting for events that come twice an hour. They are all burning through your budget at the same rate as your production API handling thousands of requests per minute.
This is the dirty secret of traditional cloud hosting: you pay the same whether your server handles 10 million requests or zero. Industry research consistently shows that the average server utilization in cloud environments sits between 10% and 30%. That means 70-90% of your compute spend is wasted on idle cycles.
Scale-to-zero serverless containers fix this by charging you only when your code is actually running. In this guide, we will break down the real math behind scale-to-zero economics, show you exactly where the savings come from, and help you identify which workloads should move to serverless today.
The Idle Server Problem: Where Your Money Goes
Before diving into serverless savings, let us understand exactly how much traditional hosting wastes.
A Typical Infrastructure Portfolio
Most teams run a mix of workloads with very different traffic patterns:
| Workload | Always-On Cost | Avg. Utilization | Money Wasted/Month |
|---|---|---|---|
| Production API | EUR 17.99 | 65% | EUR 6.30 |
| Staging environment | EUR 8.99 | 5% | EUR 8.54 |
| Admin panel | EUR 8.99 | 3% | EUR 8.72 |
| Webhook handler | EUR 4.49 | 1% | EUR 4.44 |
| Cron job runner | EUR 4.49 | 2% | EUR 4.40 |
| PDF generator | EUR 8.99 | 4% | EUR 8.63 |
| Total | EUR 53.94 | EUR 41.03 wasted |
Out of EUR 53.94 per month, EUR 41.03 pays for servers that are doing nothing. That is 76% of the total budget going to idle compute. Only the production API justifies its always-on cost.
The uncomfortable truth:
If you are running more than three services and most of them receive sporadic traffic, you are likely paying 2-5x more than you need to. Scale-to-zero eliminates this waste entirely.
How Scale to Zero Works
Scale-to-zero serverless containers work on a simple principle: your application only runs when it has work to do.
The Lifecycle
Request arrives
|
v
[Container sleeping - cost: EUR 0.00]
|
v
Platform detects request (load balancer)
|
v
Container starts (cold start: 200ms - 1.5s)
|
v
Request processed, response sent
|
v
Container stays warm for more requests (5 min window)
|
v
No more requests for 5 minutes?
|
v
Container scales to zero - cost drops to EUR 0.00
With DanubeData Rapids, your container scales to zero after 5 minutes of inactivity. When a new request arrives, it spins back up automatically. You are only billed for the time your container is actually running and processing requests.
What Gets Billed
Scale-to-zero billing has three components:
- Compute time: vCPU-seconds your container is running
- Memory time: GiB-seconds of memory allocated
- Requests: Number of incoming requests
When your container is scaled to zero, all three meters stop. Your cost is literally EUR 0.00 during idle periods.
DanubeData Rapids: Serverless Pricing Breakdown
Let us look at the exact pricing for DanubeData Rapids serverless containers:
| Component | Price | Unit |
|---|---|---|
| vCPU | EUR 0.000012 | per vCPU-second |
| Memory | EUR 0.000002 | per GiB-second |
| Requests | EUR 0.12 | per million requests |
| Egress | EUR 0.09 | per GB |
Minimum Billing
DanubeData bills in 100ms increments. A request that takes 50ms is billed as 100ms. A request that takes 150ms is billed as 200ms. This is more generous than many providers who bill in 1ms increments but charge higher base rates.
Free Tier (Included Every Month)
| Resource | Free Allowance | Equivalent |
|---|---|---|
| Requests | 2 million | ~67K requests/day |
| vCPU-seconds | 250,000 | ~69 vCPU-hours |
| GiB-seconds | 500,000 | ~139 GiB-hours |
| Egress | 5 GB | Small APIs/webhooks |
Free tier reality check:
The free tier alone covers most low-traffic workloads entirely. A webhook handler processing 1,000 requests per day at 200ms average response time would use roughly 6,000 vCPU-seconds and 12,000 GiB-seconds per month -- well within the free allowance. Your cost: EUR 0.00.
Resource Profiles
DanubeData Rapids offers four resource profiles to match your workload:
| Profile | vCPU Range | Memory Range | Max Cost/Month |
|---|---|---|---|
| Micro | 0.25 - 0.5 vCPU | 128 - 256 MB | EUR 5/mo |
| Small | 0.5 - 1 vCPU | 256 - 512 MB | EUR 10/mo |
| Medium | 1 - 2 vCPU | 512 MB - 1 GB | EUR 20/mo |
| Large | 2 - 4 vCPU | 1 - 2 GB | EUR 40/mo |
These profiles set a cost ceiling. Even under sustained maximum load, your bill will not exceed the profile limit. Think of it as pay-per-use with built-in cost protection.
The Math: Scale-to-Zero vs Always-On at Every Traffic Level
Let us calculate the real costs. We will use a typical workload: a Small profile container (0.5 vCPU, 256 MB memory) with an average response time of 200ms.
Cost Per Request Calculation
Per request (200ms duration, 0.5 vCPU, 256MB):
vCPU cost: 0.2s x 0.5 vCPU x EUR 0.000012 = EUR 0.0000012
Memory cost: 0.2s x 0.25 GiB x EUR 0.000002 = EUR 0.0000001
Request cost: EUR 0.12 / 1,000,000 = EUR 0.00000012
Total per request: EUR 0.00000132
Cost Comparison Table: Small Profile (0.5 vCPU, 256MB)
| Monthly Requests | Rapids Cost | VPS Micro (EUR 4.49) | Savings |
|---|---|---|---|
| 10,000 | EUR 0.01 | EUR 4.49 | 99.7% |
| 50,000 | EUR 0.07 | EUR 4.49 | 98.4% |
| 100,000 | EUR 0.13 | EUR 4.49 | 97.1% |
| 500,000 | EUR 0.66 | EUR 4.49 | 85.3% |
| 1,000,000 | EUR 1.32 | EUR 4.49 | 70.6% |
| 2,000,000 | EUR 2.64 | EUR 4.49 | 41.2% |
| 3,400,000 | EUR 4.49 | EUR 4.49 | Break-even |
| 5,000,000 | EUR 5.00* | EUR 4.49 | VPS wins |
| 10,000,000 | EUR 5.00* | EUR 4.49 | VPS wins |
* Capped at Micro profile maximum of EUR 5/month
Key insight:
Below 3.4 million requests per month, serverless is cheaper. Above that, the VPS fixed cost wins -- but the difference is only EUR 0.51/month at most (EUR 5.00 cap vs EUR 4.49 VPS). Scale-to-zero's real value is not at the break-even point. It is at the low end, where a service handling 50,000 requests costs EUR 0.07 instead of EUR 4.49.
Cost Comparison: Medium Profile (1 vCPU, 512MB)
For a heavier workload with 300ms average response time:
Per request (300ms duration, 1 vCPU, 512MB):
vCPU cost: 0.3s x 1.0 vCPU x EUR 0.000012 = EUR 0.0000036
Memory cost: 0.3s x 0.5 GiB x EUR 0.000002 = EUR 0.0000003
Request cost: EUR 0.12 / 1,000,000 = EUR 0.00000012
Total per request: EUR 0.00000402
| Monthly Requests | Rapids Cost | VPS Small (EUR 8.99) | Savings |
|---|---|---|---|
| 10,000 | EUR 0.04 | EUR 8.99 | 99.6% |
| 100,000 | EUR 0.40 | EUR 8.99 | 95.6% |
| 500,000 | EUR 2.01 | EUR 8.99 | 77.6% |
| 1,000,000 | EUR 4.02 | EUR 8.99 | 55.3% |
| 2,240,000 | EUR 9.00 | EUR 8.99 | Break-even |
| 5,000,000 | EUR 10.00* | EUR 8.99 | VPS wins |
* Capped at Small profile maximum of EUR 10/month
Real-World Scenario: The EUR 54 Infrastructure That Became EUR 12
Let us revisit the infrastructure portfolio from earlier and move the right workloads to scale-to-zero:
| Workload | Requests/Month | Always-On Cost | Rapids Cost | Recommendation |
|---|---|---|---|---|
| Production API | 8,000,000 | EUR 17.99 | EUR 20.00* | Keep on VPS |
| Staging environment | 5,000 | EUR 8.99 | EUR 0.00** | Move to Rapids |
| Admin panel | 3,000 | EUR 8.99 | EUR 0.00** | Move to Rapids |
| Webhook handler | 60,000 | EUR 4.49 | EUR 0.08 | Move to Rapids |
| Cron job runner | 15,000 | EUR 4.49 | EUR 0.02 | Move to Rapids |
| PDF generator | 20,000 | EUR 8.99 | EUR 0.08 | Move to Rapids |
| Total | EUR 53.94 | EUR 18.17 |
* Capped at Medium profile max. ** Covered entirely by free tier.
Result: 66% cost reduction
Monthly spend drops from EUR 53.94 to EUR 18.17 -- a saving of EUR 35.77 per month, or EUR 429.24 per year. The production API stays on VPS where it belongs. Everything else moves to scale-to-zero where it pays only for actual usage.
Comparing DanubeData Rapids to AWS and Google Cloud
How does DanubeData Rapids pricing compare to the major cloud providers? Let us run the same workload across all three.
Workload: 500,000 requests/month, 200ms avg, 0.5 vCPU, 512MB
| Provider | Compute Cost | Request Cost | Total |
|---|---|---|---|
| AWS Lambda | EUR 0.83 | EUR 0.10 | EUR 0.93 |
| Google Cloud Run | EUR 1.45 | EUR 0.20 | EUR 1.65 |
| AWS Fargate (always-on) | Fixed allocation | EUR 18.76 | |
| DanubeData Rapids | EUR 0.60 | EUR 0.06 | EUR 0.66 |
DanubeData Rapids comes in at the lowest cost, and that is before the free tier is applied. With the free tier, this workload would cost close to nothing.
The Hidden Cost of AWS Serverless
AWS Lambda's per-request cost looks cheap until you add the ecosystem costs:
AWS Lambda (500K requests/month):
Lambda compute + requests: EUR 0.93
API Gateway (required for HTTP): EUR 1.75
CloudWatch Logs: EUR 0.57
NAT Gateway (if VPC access): EUR 38.00
------------------------------------
Real total: EUR 41.25
DanubeData Rapids (500K requests/month):
Compute + requests: EUR 0.66
Routing: Included
Logging: Included
Networking: Included
------------------------------------
Real total: EUR 0.66
AWS's hidden serverless tax:
API Gateway alone costs EUR 3.50 per million requests on AWS. DanubeData includes HTTP routing at no extra charge. If your Lambda function needs to access resources in a VPC (like a database), you are looking at EUR 38/month minimum for the NAT Gateway -- more than 60x the compute cost of the function itself.
When Scale-to-Zero Saves You the Most
Scale-to-zero is not equally beneficial for every workload. Here is where it delivers the biggest savings:
1. Development and Staging Environments
Your staging server runs 24/7 but gets used maybe 4 hours per day during development.
Always-on staging (VPS Small):
24 hours/day x 30 days = 720 hours billed
Cost: EUR 8.99/month
Scale-to-zero staging (Rapids Small):
4 hours active x 22 workdays = 88 hours billed
Cost: ~EUR 1.52/month
Savings: EUR 7.47/month = 83%
2. Webhook and Event Handlers
Stripe webhooks, GitHub events, payment notifications -- sporadic by nature.
Webhook handler (1,000 events/day, 300ms each):
Always-on: EUR 4.49/month (Micro VPS)
Rapids: EUR 0.04/month (covered by free tier)
Savings: EUR 4.45/month = 99%
3. Scheduled and Batch Jobs
Report generators, data imports, cleanup scripts that run for minutes per day.
Nightly report generator (runs 10 min/day, 1 vCPU, 512MB):
Always-on: EUR 8.99/month (Small VPS)
Rapids: EUR 0.26/month
Savings: EUR 8.73/month = 97%
4. Low-Traffic APIs and Microservices
Internal APIs, admin tools, or microservices that handle a few thousand requests daily.
Internal API (5,000 requests/day, 150ms avg):
Always-on: EUR 4.49/month (Micro VPS)
Rapids: EUR 0.18/month
Savings: EUR 4.31/month = 96%
5. Multi-Region or Multi-Tenant Deployments
Each tenant or region has its own isolated container, but most are idle most of the time.
10 tenant-specific APIs (avg 2,000 req/day each):
Always-on: 10 x EUR 4.49 = EUR 44.90/month
Rapids: 10 x EUR 0.08 = EUR 0.80/month
Savings: EUR 44.10/month = 98%
When to Stay Always-On
Scale-to-zero is not always the right answer. Keep these workloads on a VPS:
High-Traffic Production APIs
If your API handles millions of requests per month with consistent traffic, the VPS fixed cost is unbeatable:
10M requests/month (200ms avg, 1 vCPU, 512MB):
VPS Small: EUR 8.99/month (handles this easily)
Rapids: EUR 10.00/month (Small cap)
Difference: Minimal, but VPS has zero cold starts
Latency-Critical Services
Cold starts add 200ms to 1.5 seconds to the first request after idle. If you cannot tolerate any latency spikes, always-on is safer.
Stateful Applications
Applications that rely on in-memory state, connection pools, or local file caching lose that state when they scale to zero.
WebSocket Servers
Long-lived connections do not work well with scale-to-zero. WebSocket servers need to stay running to maintain connections.
The Hybrid Strategy: Maximum Savings
The optimal approach combines both models:
Your optimized infrastructure:
ALWAYS-ON (VPS):
- Production API EUR 17.99/mo (high traffic, low latency)
- WebSocket server EUR 8.99/mo (persistent connections)
- Background worker EUR 4.49/mo (continuous queue processing)
Subtotal: EUR 31.47/mo
SCALE-TO-ZERO (Rapids):
- Staging environment EUR 0.00/mo (free tier)
- Admin panel EUR 0.00/mo (free tier)
- Webhook handlers EUR 0.04/mo
- PDF/image processing EUR 0.08/mo
- Cron jobs EUR 0.02/mo
- Internal APIs (3x) EUR 0.24/mo
Subtotal: EUR 0.38/mo
TOTAL: EUR 31.85/mo
vs. ALL ALWAYS-ON: EUR 80.40/mo
SAVINGS: EUR 48.55/mo (60%)
ANNUAL SAVINGS: EUR 582.60
Getting Started with Scale-to-Zero on DanubeData
Moving a workload to DanubeData Rapids takes minutes. Here is how:
Option 1: Deploy from a Docker Image
# Push your container to any registry
docker build -t registry.example.com/my-api:latest .
docker push registry.example.com/my-api:latest
# Deploy on DanubeData Rapids
# Select your image, pick a resource profile, done.
# Your container scales to zero automatically after 5 min idle.
Option 2: Deploy from a Git Repository
# Connect your GitHub repo to DanubeData Rapids
# We auto-detect your Dockerfile or use buildpacks
# Every push to your branch triggers a new build and deploy
# Zero configuration needed for most frameworks:
# - Node.js / Express / Fastify
# - Python / Flask / FastAPI
# - Go / Gin / Echo
# - PHP / Laravel
# - Ruby / Rails
Option 3: Upload a ZIP
# Package your application
zip -r my-app.zip . -x "node_modules/*" ".git/*"
# Upload to DanubeData Rapids
# We build and deploy automatically
All three options get you scale-to-zero containers with automatic TLS, custom domains, and auto-scaling from 0 to 100 replicas.
Cost Monitoring and Optimization Tips
Once you are running on scale-to-zero, here are ways to optimize further:
1. Optimize Response Time
Faster responses mean less compute time billed:
Before optimization: 500ms avg response
500K requests x 0.5s x 0.5 vCPU x EUR 0.000012 = EUR 1.50/mo
After optimization: 150ms avg response
500K requests x 0.2s x 0.5 vCPU x EUR 0.000012 = EUR 0.60/mo
Savings: 60% just from faster code
2. Right-Size Your Profile
Do not use a Large profile when Micro will do. A lightweight API serving JSON does not need 2 vCPUs.
3. Optimize Container Startup
Smaller container images mean faster cold starts and quicker scale-up:
- Use Alpine or distroless base images
- Multi-stage builds to minimize image size
- Avoid heavy framework initialization on startup
4. Leverage the Free Tier
Spread low-traffic services across multiple containers. Each stays within the free tier individually, costing you nothing.
Conclusion: Stop Paying for Idle Servers
The math is clear. If you are running workloads that sit idle for more than 50% of the time, you are overpaying by 50-99%. Scale-to-zero serverless containers solve this by aligning your costs with your actual usage.
Here is the decision framework:
- Below 1M requests/month: Scale-to-zero saves 70-99%. No contest.
- 1M - 3M requests/month: Scale-to-zero still saves 20-70%. Worth it for most workloads.
- Above 3M requests/month: VPS becomes more economical. Keep it always-on.
- Mixed traffic patterns: Use the hybrid approach. Always-on for your core API, scale-to-zero for everything else.
DanubeData Rapids makes this easy with transparent per-second billing, a generous free tier, built-in cost caps, and zero hidden fees for networking or routing.
Deploy your first scale-to-zero container and watch your cloud bill shrink. Most teams see savings within the first billing cycle.
Want to calculate your exact savings? Contact our team for a free infrastructure cost analysis.