Compare hosted runner overage against running your own runners — including the maintenance hours most comparisons quietly leave out.
| Runner | Hosted rate | Break-even minutes/mo | Verdict at your volume |
|---|---|---|---|
| Linux | $0.006/min | 53,333 | Hosted |
| Windows | $0.01/min | 32,000 | Hosted |
| macOS | $0.062/min | 5,161 | Self-hosted |
Self-hosted cost is modelled as infrastructure spend plus maintenance hours at your loaded engineer rate. It excludes hardware amortisation, security patching, and the opportunity cost of the builds your team cannot run while the runner is down — all of which push the real figure higher.
Almost every “self-host your runners and save 90%” post was written against the old rates. But a self-hosted setup has a fixed monthly cost — the server plus the hours you spend patching, upgrading and debugging it — while the hosted bill is purely variable. The two lines cross at exactly one volume, and that crossing point is fixed cost ÷ hosted rate. When GitHub cut Linux minutes from $0.008 to $0.006 in January 2026, the denominator shrank, so the break-even volume rose by a third. Teams that were comfortably past break-even last year may not be now. The calculator below draws both lines and marks where they cross.
Hosted cost scales linearly with minutes. Self-hosted cost is flat: infrastructure plus maintenance hours at your engineer's loaded rate. Below the crossing point hosted wins; above it, self-hosting does — but only if your maintenance estimate is honest.
A team runs 6,000 Linux minutes a month. A $20/month VPS runs the runner, and they budget 4 hours a month of maintenance at a loaded cost of $75/hour.
Why did the cow cross the road?
No signups, no data sold. The core of every tool is free forever — the optional Pro plan adds batch processing, unlimited downloads, white-label exports and an ad-free experience.
☕Support me on Ko-fi— keep tools free100% of proceeds go towards hosting & building more free tools.