Cost Breakdown¶
Monthly Costs (Actual -- 2026-04-15)¶
Actual monthly cost: EUR ~12.56
First deployment confirmed costs are significantly lower than original estimates, thanks to the cx-series rename (lower prices) and the ARM-to-x86 switch (cx53 cheaper per hour for ephemeral use).
Fixed Costs (Always On)¶
| Resource | Spec | Monthly (EUR) |
|---|---|---|
| cx33 Hub | 4 vCPU / 8 GB / 80 GB NVMe | 6.49 |
| cx23 DMZ | 2 vCPU / 4 GB / 40 GB NVMe | 3.99 |
| Hetzner Object Storage | etcd + tofu state (~1 GB) | 1.08 |
| Private Network | 10.0.0.0/16 | 0.00 |
| Primary IPv4 (Hub) | Included with server | 0.00 |
| Primary IPv4 (DMZ) | Included with server | 0.00 |
| DNS Zone (vdhome.be) | Hetzner DNS (free) | 0.00 |
| Fixed subtotal | 11.56 |
Variable Costs (Beast Usage)¶
| Usage Level | Hours/Month | Hourly Rate | Monthly (EUR) |
|---|---|---|---|
| Zero (Beast off) | 0 | 0.0360 | 0.00 |
| Light | 20 | 0.0360 | 0.72 |
| Budget target | 40 | 0.0360 | 1.44 |
| Normal | 60 | 0.0360 | 2.16 |
| Heavy | 120 | 0.0360 | 4.32 |
cx53 vs old cax31 pricing
The cx53 (x86, 16 vCPU, 32 GB) at EUR 0.036/h is more per hour than the old cax31 (ARM, 4 vCPU, 8 GB) at EUR 0.0045/h, but provides 4x the compute power. At 40h/month the Beast costs only EUR 1.44 -- well within budget.
Total Monthly Cost¶
| Scenario | Fixed | Variable | Total (EUR) |
|---|---|---|---|
| Minimum (Beast off) | 11.56 | 0.00 | 11.56 |
| Actual (40h Beast) | 11.56 | 1.44 | ~12.56 |
| Normal (60h Beast) | 11.56 | 2.16 | 13.72 |
| Heavy (120h Beast) | 11.56 | 4.32 | 15.88 |
Annual Cost¶
| Scenario | Annual (EUR) |
|---|---|
| Minimum | 138.72 |
| Actual (40h) | ~150.72 |
| Normal (60h) | 164.64 |
| Heavy (120h) | 190.56 |
External Services (Free Tier)¶
| Service | Purpose | Cost |
|---|---|---|
| UptimeRobot | External uptime monitoring | Free (50 monitors) |
| ntfy.sh | Push notifications for alerts | Free (public topics) |
| Let's Encrypt | TLS certificates | Free |
| CrowdSec Central API | Threat intelligence | Free (community) |
| GitLab.com | Git repository (if not self-hosted) | Free (basic) |
| Bitwarden | Password/secret management | Free (personal) |
Budget Enforcement Mechanisms¶
| Mechanism | Threshold | Action |
|---|---|---|
| Beast session watchdog | 8h continuous | ntfy warning alert |
| Beast auto-destroy | 12h continuous | Automatic beast-down.sh |
| Monthly hour tracking | 50h cumulative | ntfy info alert |
| Monthly hard stop | 80h cumulative | Beast creation blocked |
| Hetzner billing alert | EUR 20/month | Email notification |
beast-down.sh cost display |
Every session | Prints session cost and MTD total |
Budget target includes substantial headroom
Actual monthly cost of EUR ~12.56 (40h Beast) leaves EUR 7.44 headroom against the EUR 20 ceiling. Even at 120h Beast usage, total stays under EUR 16.
Headroom Analysis¶
Compute Headroom (Hub -- 8 GB RAM)¶
| Allocated | Used (observed) | Available |
|---|---|---|
| 8192 MB | ~4180 MB (51%) | ~4010 MB |
51% RAM usage confirmed with full stack deployed (2026-04-15). Enough headroom to add 3-4 lightweight services (e.g., ntfy self-hosted, Gitea, Minio) without upgrading.
Compute Headroom (DMZ -- 4 GB RAM)¶
| Allocated | Used (typical) | Available |
|---|---|---|
| 4096 MB | ~1800 MB | ~2200 MB |
DMZ is lightly loaded. Could absorb additional ingress workloads.
Disk Headroom (Hub -- 80 GB)¶
| Component | Usage |
|---|---|
| OS + packages | ~5 GB |
| K3s + container images | ~8 GB |
| VictoriaMetrics (30d) | ~2 GB |
| Loki (14d) | ~1.5 GB |
| Rancher data | ~3 GB |
| Total used | ~20 GB |
| Available | ~60 GB |
Cost Headroom¶
| Item | Current | Next Tier | Delta |
|---|---|---|---|
| Hub upgrade to cx43 | 6.49 | ~12.99 | +6.50 |
| DMZ upgrade to cx33 | 3.99 | 6.49 | +2.50 |
| Floating IP (additional) | 0.00 | 4.00 | +4.00 |
| Load Balancer | 0.00 | 5.49 | +5.49 |
| Volume (20 GB) | 0.00 | 0.88 | +0.88 |
Upgrade path
At 51% RAM on the Hub, an upgrade is not needed anytime soon. If it becomes necessary, upgrading to cx43 (8 vCPU / 16 GB) costs ~EUR 6.50/month more -- still under EUR 20/month total. Hetzner supports live upgrade for CX-series.
Cost Comparison¶
For context, what would this setup cost on hyperscalers?
| Provider | Equivalent Setup | Monthly (EUR) |
|---|---|---|
| Hetzner (actual) | cx33 + cx23 + cx53 (40h) | ~12.56 |
| DigitalOcean | 3 droplets, comparable specs | ~45 |
| AWS (EC2 on-demand) | t3.medium + t3.small + c5.4xlarge | ~90 |
| Azure | B2s + B1s + D4s_v5 | ~80 |
| GCP | e2-medium + e2-small + c2d-standard-16 | ~85 |
Not an apples-to-apples comparison
Hyperscaler pricing includes managed services, SLAs, and enterprise support that Hetzner does not provide. The comparison illustrates the cost efficiency of self-managed infrastructure for a personal lab.