Skip to content
Latchkey

Self-Hosted Runner Break-Even Calculator

Self-hosting looks cheaper until you count the idle compute and the engineering time. Run your numbers.

Self-hosted runners cut the per-minute rate but add two hidden costs: you pay for idle capacity, and someone has to scale, patch, and clean up the fleet. Enter your volume and ops reality to see where each model actually lands - and why managed runners give the compute savings without the ops bill.

Model (4-vCPU equivalent): GitHub-hosted $0.016/min. Self-hosted = on-demand instance ~$0.10/hr run at ~30% utilization (you pay for idle) plus your ops time. Latchkey $0.005/min with 2,000 free minutes and no ops. Adjust the inputs to your reality.

The three real costs

  • Compute - per-minute (hosted) or per-hour-at-low-utilization (self-hosted, because runners sit idle between jobs).
  • Ops - self-hosted means owning scaling, patching, disk cleanup, stale-runner cleanup, and the on-call when it breaks.
  • Waste - flaky re-runs you pay for twice, on any model that does not self-heal.

Why managed wins the middle

Managed runners like Latchkey bill near self-hosted compute rates but carry zero ops cost, and self-healing removes the re-run waste. That is usually the lowest total cost once engineering time is priced in.

Frequently asked questions

When is self-hosting actually worth it?
When your volume is high enough that compute savings clearly exceed the ops time, and you have a platform team to run it. For most teams, managed runners capture the savings without the headcount.

Related guides

See what you would save - Latchkey managed runners with self-healing. Start free →