Skip to main content

Northflank's No-Seat-Fee BYOC Still Has Two Bills: What a Rented Control Plane Costs Against One Hetzner Invoice

14 min readDora NodaDora Noda
Share

Northflank charges $0 per seat. That sentence has sold more BYOC deals in 2026 than any benchmark — and it's the sentence most likely to make you forget you still have two bills.

Northflank's BYOC pitch is honest about the split: you pay your cloud provider — AWS, GCP, Azure, Hetzner, bare metal — at cost with zero markup, plus a flat Northflank platform fee for each cluster, vCPU, and gigabyte it manages. A 50-person team costs the same platform fee as a solo founder at the same compute. Render charges roughly $19 per user per month, Vercel about $20 per seat, Qovery's control-plane subscription runs $299 to $2,099 per month. Against that, "$0 seat fee" looks like the simplest invoice on the page.

The question the pricing page doesn't answer is what that two-bill shape — cloud infra plus control-plane rent — totals at the end of the month versus one Hetzner invoice where the hardware bill is the only bill.

Why it matters now: Northflank kept "no seat fee, usage-based, per-second billing" while every adjacent PaaS added meters or cut allowances. Vercel repriced four times in 20 months, Render cut Hobby egress from 100 GB to 5 GB effective August 1, 2026, and Fly.io added volume snapshot and inter-region networking meters in early 2026. When others narrowed the free tier, Northflank's unit price looked simple. Simplicity at the unit price doesn't always mean simplicity on the invoice.

TL;DR: Same three stacks, three totals — with seat-count and idle sensitivity

We priced the same everyday stack — one web service, one worker, one managed Postgres — at three sizes. Northflank Cloud uses live 2026 rates ($0.01667 per vCPU-hour, $0.00833 per GB-hour, $0.15 per GB-month storage, per-second billing). BYOC assumes you bring your own cloud account and Northflank bills a flat platform fee per vCPU/GB with no cloud markup. Hetzner uses the official June 15, 2026 adjustment (excl. IPv4, EU) after two hikes this year: CX23 (shared Intel) ~€7.99/mo for 2 vCPU/4 GB, CPX32 (shared AMD) ~€15.49/mo for 4 vCPU/8 GB, CCX13 (dedicated) €42.99/mo — all with 20 TB included bandwidth. $:€ ~1.08.

Workload (always-on, 100% util)Northflank CloudBYOC: Cloud VM + platform feeHetzner flat boxTwo bills vs one
Small — 0.5 vCPU / 1 GB + 20 GB~$13/mo (nf-compute-50 + $3 storage)~$15/mo ($8 VM + ~$7 fee + $3 storage)CX23 €7.99 ($8.60)BYOC ~1.7×
Mid — 2 vCPU / 4 GB + 60 GB~$48/mo (nf-compute-200 + $9)~$38/mo ($16 VM + ~$13 fee + $9)CPX22 €10.49 ($11.30)BYOC ~3.4×
Prod — 4 vCPU / 16 GB + 100 GB~$144/mo (nf-compute-400-16 + $15)~$98/mo ($40 VM + ~$43 fee + $15)CPX42 €31.49 ($34)BYOC ~2.9×

At 100 percent utilization flat hardware always wins. Real workloads aren't always busy — and "no seat fee" is a separate line that never shows up in a per-service table.

Sensitivity (same Mid, 2 vCPU/4 GB)Northflank CloudBYOC totalHetzner box
30% avg util (nights/weekends idle)~$14/mo (70% not billed)~$18/mostill €10.49
100% sustained (always busy)~$48/mo~$38/mo€10.49
20-person team, same computesame — Render/Vercel would add $380–$400/mo, Northflank adds $0samesame

The second table is the whole argument: "no seat fee" saves $400 a month to a 20-person team before you serve a request, and per-second billing beats flat hardware when the box is idle. Once the box is busy — the only time cost hurts — the flat box wins by 2 to 4×.


What "no seat fee" actually means — and what it still bills

A seat fee is a per-human tax. Vercel Pro is roughly $20 per user per month. Render's Team tier starts at $19. Qovery charges a flat control-plane subscription. Northflank charges $0 — "Teams included at no extra cost" sits above the pricing table — and a design review that adds five engineers doesn't move the invoice if compute stays the same.

What moves the meter is every vCPU-second, gigabyte-hour, and gigabyte-month you burn:

  • CPU: $0.01667 per vCPU-hour, per second — 1 vCPU busy all month ≈ $12.00
  • Memory: $0.00833 per GB-hour, per second — 1 GB all month ≈ $6.00
  • Storage: $0.15 per GB-month (SSD)
  • Network/egress: variable; builds billed on the same vCPU/GB meter via buildPlan (default nf-compute-400-16)

Predefined plans are just bundles on that meter:

Plan slugvCPU / RAMFor$/mo always on
nf-compute-100.1 / 256 MBSidecars, cron~$2.70
nf-compute-500.5 / 1 GBSmall API~$12
nf-compute-100-21 / 2 GBStaging~$24
nf-compute-2002 / 4 GBTypical prod~$48
nf-compute-400-164 / 16 GBHeavy / build default~$144

Those numbers include CPU+RAM; add storage and egress on top. Teams are unlimited.

BYOC splits who you pay. Per Northflank's docs: "Northflank will charge a flat fee for each cluster, vCPU, and GB of memory deployed using the platform, as well as any variable costs for network egress and storage." Enterprise BYOC is described as "flat fees for clusters, vCPU, and memory on your infrastructure, no markup on your cloud costs." You pay your cloud provider for the VM, disk, and bandwidth — with your own credits and commits — plus Northflank's platform fee for managing that capacity.

It is still a meter. Just a second meter in front of the first one you already had.


What BYOC actually rents you

The data plane is your account: the VPC, the Kubernetes cluster (EKS, GKE, AKS, or Northflank-provisioned nodes on AWS/GCP/Azure/Civo/CoreWeave/Hetzner/bare metal), the disks, and the cloud bill. The control plane is Northflank's software above it: dashboard, Git deploys, builds, autoscaling, preview environments, managed databases, and the API a human or agent calls.

On Northflank Cloud, both layers are Northflank's. On BYOC, you own the data plane and Northflank operates the control plane remotely. Northflank lists 6+ managed regions on its cloud and 600+ BYOC regions across the clouds above — self-serve, your data never leaves your VPC. That is the compliance pitch.

What you get for the platform fee is the PaaS surface — push a repo, get a running HTTPS service — without operating Kubernetes yourself. What you don't escape is owning the cloud underneath: support cases, quotas, IAM, VPC design, egress accounting (now metered by two parties), and the cloud bill — which is the larger of the two bills on any sustained workload.

ModelControl planeData plane / cloud billSeat feeScale to zero
Hosted PaaS (Render, Vercel, hosted Northflank)VendorVendor (markup baked in)Yes ($19–$20/seat)Vendor decides; cold start
BYOC (Northflank BYOC, Qovery, Porter)Vendor (rented)You + platform feeNorthflank $0; Qovery $299–$2,099/moPer-second helps if idle
Self-hosted (bex on CAPH/Hetzner)YouYou — one bill$0You wire it (KEDA) or it stays on

BYOC wins on velocity; self-hosting wins on bill predictability. The next section shows where.


The math, line by line

We recompute the same stack — web + worker + Postgres — always on, 100 percent utilization so usage-based looks as expensive as it ever will. Storage is 20 GB (small), 60 GB (mid), 100 GB (prod). Egress is separate because Northflank and your BYOC cloud meter it independently; Hetzner includes 20 TB.

Small — 0.5 vCPU / 1 GB, 20 GB disk

  • Northflank Cloud: nf-compute-50 ~$12 + $3 storage = ~$15 before egress. At 30 percent util this drops toward ~$4 — the one place per-second wins.
  • BYOC: Hetzner VM underneath (€5–€8) + Northflank fee ($5–$7) + $3 storage = ~$13–$18 total.
  • Hetzner flat: CX23 at €7.99 (~$8.60) already includes disk and 20 TB. Pack three sidecars on one CX23 and the per-service cost falls to ~€2.70 — erasing BYOC's per-service fee.

At this size choose on workflow. The invoice delta is single digits.

Mid — 2 vCPU / 4 GB, 60 GB disk — the typical prod service where the split bites

  • Northflank Cloud: nf-compute-200 ~$48 + $9 storage = ~$57. Three services (web+worker+Postgres) land north of $140 before egress.
  • BYOC: Cloud VM (CPX22 ~€10.49 or CX33 €15.49) + platform fee ($10–$13 for 2/4) + $9 storage. Three-service stack: ~$100–$115 (cloud VM dominates; platform adds ~35 percent).
  • Hetzner fleet (CAPH): One CPX32 (4 vCPU/8 GB, 160 GB) at €15.49 ($16.70) holds web+worker+Postgres, or two CX33s total €31 ($33). The 60 GB Postgres disk is already inside the NVMe. BYOC costs more than double before egress.

Egress widens the gap. A 500 GB egress bill is ~$0 on the Hetzner box and a distinct line on every cloud under BYOC (AWS ~$0.09/GB). The 20 TB included on one Hetzner server would cost roughly $3,000 at Vercel's $0.15/GB overage.

Prod — 4 vCPU / 16 GB, 100 GB disk

  • Northflank Cloud: nf-compute-400-16 ~$144 + $15 storage = ~$159 per service, past $400 for three.
  • BYOC: Large shared VM (CPX42 ~€31.49 / ~$34) + platform fee ~$43 + $15 storage = ~$92 per service on shared; dedicated CCX23 at €85.99 (~$93) + fee pushes per-service to ~$145, near managed-Cloud prices.
  • Hetzner fleet: Two shared CPX nodes €63 ($68) total — less than one managed Northflank service at this size.

Storage, network, and builds — the lines the title promised

  • Storage: $0.15/GB-mo on Northflank Cloud is $3 / $9 / $15 for our three workloads. On Hetzner the NVMe is in the box — never billed separately.
  • Network: Northflank Cloud egress is metered; BYOC egress is your cloud's rate (AWS ~$0.09/GB, Hetzner $0 within 20 TB). At 200 GB/mo that's ~$18 extra under BYOC, $0 on the fleet.
  • Builds: Same vCPU/GB meter via buildPlan (default nf-compute-400-16). A 4-minute build on 4/16 is ~$0.04; 500 builds is ~$20. On a Hetzner builder fleet those minutes run on the same flat box.

At moderate egress these add another $20–$50 a month to BYOC/Cloud against $0 on the flat box.

When flat loses: the idle case

Per-second billing beats flat hardware exactly when the box is empty. At 30 percent average util the same Mid service costs ~$14 on Cloud versus €15.49 flat — Cloud wins. Staging, hourly crons, and per-PR previews that live a day are usage-based workloads. Production that is always on is not; once util crosses ~50 percent, the flat box wins and widens from there. Northflank's own 0.2 overcommit note on BYOC (40 sandboxes where 8 would otherwise fit) is an acknowledgement that raw per-second only wins when nodes aren't full.


When BYOC wins anyway

A teardown that only shows where the flat box wins is marketing copy. BYOC wins clearly on four axes price misses:

1. Sovereignty and compliance. "Your data never leaves your VPC" is a requirement for regulated teams, not a tagline. BYOC's 600+ regions — including clouds and on-prem where a managed PaaS has no region — is why EU public-sector buyers pick it. A Hetzner-only fleet is sovereign to Nuremberg/Falkenstein/Helsinki; BYOC is sovereign to any provider you list.

2. Existing cloud gravity. If you already spend $8,000/mo on AWS with credits and commits, adding a control plane on that account is cheaper in real dollars than re-homing the database onto Hetzner to chase a $50 VM delta. BYOC's "no markup, use your credits" matters more than the per-vCPU saving when credits cover half the cloud bill.

3. Geography. Northflank Cloud has 6+ regions; BYOC has every region of every plugged-in cloud. Melbourne or Tokyo has no Hetzner region today; BYOC on AWS ap-southeast-2 does.

4. Velocity without platform headcount. A self-hosted fleet is cheapest once always on, but you operate CAPH lifecycle, machine remediation, and etcd backups yourself. BYOC trades that role for a support contract and a GUI the whole team already uses.

BYOC loses on three predictable axes: long-lived always-on workloads, egress-heavy media (20 TB included is unassailable), and fleet-stage consolidation where three sidecars on one CX23 erase three platform fees. Name the reason out loud: the second bill grew louder than the velocity it bought.


The self-hosting mirror

A self-hosted PaaS is the BYOC split taken to its conclusion: you own both layers. A Cluster API fleet on Hetzner — CAPH provisioning HetznerMachineTemplate nodes behind a management cluster — gives you one bill (the Hetzner invoice), declarative lifecycle, and a Render-compatible API for bex.yml deploys plus an MCP server for agent ops without renting a control plane per vCPU.

It is cheaper on sustained compute and it is more work. A management cluster that dies while workload clusters keep serving is the classic CAPH mode: apps stay green until you need a new Machine and realize the fleet brain is down without its own backup. The pitch for bex isn't "BYOC for free" but "one bill and one API if you own the fleet BYOC would have owned for you." Teams with a platform person tend to pay less there. Teams without one don't.

Bex.co is the open-source, AI-native Render alternative — push a git repo, get a running HTTPS service on machines you own. No seat fees, no control-plane rent: the Hetzner bill is the only bill. Star the repo on GitHub or deploy your first app today.


Checklist before you sign the second bill

  1. Is the workload always on? Idle → lean usage-based. Always on → lean flat. Name average util, not peak.
  2. Does seat count dominate compute? 20-person team + small compute → Northflank's $0 seat wins before a byte is served. Solo + large compute → seat fee is noise; size the box.
  3. Is egress or storage the driver? More than ~200 GB/mo egress or steady DB growth favors the fleet where both are in the box.
  4. Can you absorb fleet ops? If "who patches the management cluster?" has no name, keep renting the control plane and accept the second bill as payroll you didn't hire.

No seat fee is real. It is not no platform fee. Once the box is busy, the Hetzner invoice you get is the same shape every month — not a meter to triangulate or a seat multiplier to staff around.


Sources

Related articles

Run this on infrastructure you own

bex is the open-source, AI-native Render alternative — push a git repo and get a running HTTPS service on your own machines.

Get started with bex