Two "bring your own cloud" vendors, two different ways of charging you before you've deployed anything. Porter's floor is baked into AWS itself — a roughly $225-a-month tax for the EKS cluster your workloads have to sit inside. Flightcontrol's floor is baked into its pricing tiers — a flat $397-a-month jump the moment you want preview environments, a feature that costs the vendor nothing extra to flip on. Neither floor moves whether you deploy one service or five.
Put the same workload — a small production app plus a handful of pull-request preview environments — through both, line item by line item, and then through a Cluster API-managed fleet on Hetzner hardware you already own. The gap isn't close.
The Bottom Line First
| Porter (BYOC, Standard) | Flightcontrol (Business) | Cluster API on Hetzner | |
|---|---|---|---|
| Platform floor, before any workload | ~$225/mo (AWS EKS control plane + node group) | $397/mo (Business plan — the only tier with preview environments) | $0 — no vendor control plane to rent |
| Compute for a 3-service prod app (web + worker + Postgres, ~3 vCPU / 6GB) | ~$75/mo Porter fee (metered $13/vCPU + $6/GB) | ~$70/mo Fargate + ALB (no EKS tax) | Already-provisioned node headroom |
| Marginal cost per PR preview environment | ~$25/mo if left running all month, metered by actual use | $0 marginal — already paying $397 to unlock the feature | ~$0 until capacity runs out, then +$11/mo for one more worker node |
| Total, prod + 2 concurrent previews | ~$325/mo | ~$467/mo | ~$48-60/mo |
The rest of this post is where those numbers come from.
Porter's $225 Floor Is an AWS Bill, Not a Porter Fee
Porter's pricing page doesn't list a $225 number anywhere — because it isn't Porter's charge. It's what AWS bills you for the minimum viable EKS cluster Porter's BYOC mode requires you to stand up in your own account, before Porter's own metered fee is added on top:
| AWS line item | Monthly cost |
|---|---|
| EKS control plane | $73.00 |
| 2× t3.medium worker nodes (minimum for HA scheduling) | $60.74 |
| NAT Gateway ×2 (multi-AZ, base charge only) | $65.70 |
| Application Load Balancer (base charge) | $16.43 |
| EBS gp3 volumes (2×20GB) | $3.20 |
| Subtotal | ~$219/mo |
That subtotal excludes NAT/ALB data-processing charges and any egress past the free tier — both of which push real bills closer to the commonly cited $225/mo floor, and higher once traffic isn't trivial. It's also a fixed cost: it doesn't shrink if your app is a single low-traffic service, because EKS charges for the control plane and the node group exist independent of what's scheduled onto them.
Porter's own fee sits on top of that, metered per resource actually requested: $13/month per vCPU, $6/month per GB of RAM. A modest three-service app — an API, a worker, and Postgres, each around 1 vCPU / 2GB — comes to 3 vCPU and 6GB, or $39 + $36 = $75/month in Porter charges. Combined with the ~$219 AWS floor, that's roughly $294/month before a single preview environment spins up.
Preview environments themselves are included in Porter's Standard tier at no extra platform fee — they're just metered the same way as everything else. Two PR previews sized similarly to the worker service, left running continuously, add roughly $25/month each; in practice, since previews are ephemeral and torn down on merge, actual metered cost tracks how many days they're actually alive, not a flat monthly number. Call it $300-325/month all-in for prod plus a couple of active previews — most of which ($219) is AWS infrastructure tax that exists whether or not you use any of it.
Flightcontrol's $397 Floor Is a Feature Gate, Not an Infrastructure Cost
Flightcontrol's architecture avoids Porter's specific tax — it runs workloads on ECS/Fargate, which has no EKS-style control-plane fee. A comparable three-service workload (API, worker, Postgres task, each ~0.5 vCPU / 1GB) costs approximately $54/month in Fargate vCPU and memory charges, plus a $16.43/month ALB base charge — call it $70/month in AWS costs, well under Porter's ~$219 floor.
But Flightcontrol's own pricing does something Porter's doesn't: it gates an entire feature category behind a plan tier, with no metered path around it.
| Plan | Monthly price | Services included | Preview environments |
|---|---|---|---|
| Free | $0 | 1 user, personal repos | Not available |
| Starter | $97 | 5 services (+$20/service) | Not available |
| Business | $397 | 10 services (+$30/service) | Included |
| Enterprise | Custom | Custom | Included |
A team on Starter running exactly the same three services as the Porter example above pays $97/month and gets zero preview environments — the feature simply does not exist at that tier, no matter how small the actual compute footprint is. To get it, the jump is to Business: $397/month, a $300/month increase in pure platform fee, whether that team spins up one preview a month or fifty. It's not metered, it's not usage-based, and it's not proportional to the ~$70/month of underlying AWS compute the workload actually needs — it's a flat toll for the privilege of the feature existing.
Total for Flightcontrol Business running the same prod-plus-previews workload: $397 (platform) + $70 (AWS/ECS) = ~$467/month, with the $397 portion identical whether zero or twenty preview environments get used that month.
The Same Workload, Owned Hardware
A Cluster API-managed fleet — the model bex.co is built on — doesn't have a vendor control plane in the loop at all, so there's no equivalent line item to compute. What there is: the Hetzner hardware itself, at July 2026 list pricing.
| Hetzner resource | Spec | Monthly cost |
|---|---|---|
| 3× CX23 (control plane, HA) | 2 vCPU / 4GB each | 3 × €5.49 = €16.47 |
| 2× CPX21 (workers) | 3 vCPU / 4GB each | 2 × €9.99 = €19.98 |
| 1× LB11 (load balancer) | 5 services / 25 targets, 1TB traffic | €7.49 |
| Total | €43.94 (~$48/mo) |
That fleet — a real, production-shaped, three-node-control-plane setup, not a single point of failure — already has 6 vCPU / 8GB of worker headroom, comfortably enough to run the same 3 vCPU / 6GB production app with room left over. Every Hetzner node comes with 20TB of included traffic, so egress that would separately meter on AWS is already paid for.
Preview environments here aren't a plan feature to unlock or a metered resource to track — they're Kubernetes namespaces on infrastructure you're already running. Spinning one up costs whatever slice of already-provisioned CPU/RAM it consumes; as long as it fits inside the existing worker headroom, the marginal cost is $0. Only once concurrent previews genuinely exceed capacity does the fleet need a fourth node — one more CPX21, +€9.99 (~$11) a month, not a +$300 jump to a different pricing tier.
Total for the same prod-plus-previews workload: ~$48-60/month, depending on how much extra worker capacity gets added for preview headroom — against Porter's ~$325 and Flightcontrol's ~$467.
What the Floor Actually Buys — and What It Doesn't
None of this makes Porter or Flightcontrol bad products. Porter's ~$219 AWS floor buys a managed EKS control plane AWS operates and patches, an autoscaling node group, and a metering model that scales down for genuinely tiny workloads — you're not paying Porter for capacity you don't request, only for the AWS floor beneath it. Flightcontrol's $397 buys the same Fargate simplicity plus RBAC, multi-region support, and 24/7 emergency response alongside preview environments — a team that values a phone number to call at 3am is paying for more than just the preview-environment checkbox.
What a Cluster API fleet buys back is the inverse trade: no AWS control-plane tax because there's no managed control plane, no feature-tier paywall because there's no tier — but also no vendor SRE team patching etcd, handling node failures, or answering a support ticket. Running cluster-api-provider-hetzner yourself means owning the bootstrap, the upgrades, and the 3am pages Porter and Flightcontrol are explicitly selling you out of. The $48/month figure is a hardware bill, not a total-cost-of-ownership number — the missing line item is engineering time, and it's real.
What the recompute does settle is narrower but concrete: for a team that already runs (or is willing to run) its own Cluster API fleet, the dollar cost of adding preview environments to that fleet is close to zero, while the same feature costs a fixed $225-$397/month tax on the two BYOC platforms compared here — a tax that doesn't shrink as the workload does, and doesn't appear anywhere on either vendor's own pricing page as a number you can look up before you provision your first cluster.
Bex.co is the open-source, AI-native Render alternative — push a git repo, get a running HTTPS service on machines you own, with no EKS tax and no preview-environment plan tier to unlock. Star the repo on GitHub or deploy your first app today.
Sources
- Porter Pricing.
- Flightcontrol Pricing.
- Amazon EKS Pricing.
- EKS Pricing in 2026: The $438/Month Trap and How to Avoid It — Cloud Burn.
- Pricing for NAT gateways — Amazon VPC docs.
- AWS NAT Gateway Pricing 2026: The Silent $1,000/Month Cost — Wring Blog.
- Hetzner Price Adjustment 15 June 2026 — Hetzner Docs.
- Hetzner Cloud VPS Pricing Calculator (Jul 2026) — Costgoat.
- Managing Kubernetes on Hetzner with Cluster API — Hetzner Community.



