GitHub self-hosted runners
Keep the workflows, move the minutes onto your own machine.
Not a replacement for Actions but the cheapest fix for its bill: register your own machine as a runner and change one line — `runs-on: self-hosted`. The workflows, the marketplace actions, the pull-request integration and the secrets all stay exactly as they are, and the per-minute charge stops. It is the highest-leverage move in this comparison for most teams. Two cautions. Self-hosted runners are not recommended for public repositories, because a pull request from anyone can execute code on your hardware. And the free status of these minutes is a policy, not a guarantee: GitHub announced a $0.002/min fee on them for March 2026 and postponed it indefinitely after the reaction, which tells you both that the risk is real and that pushing back worked.
What it does well
- +Zero migration: one line of YAML, everything else unchanged
- +Removes the minute bill immediately, including for large runners
- +Lets you use hardware GitHub does not offer — GPUs, ARM, big disks
- +Keeps the marketplace ecosystem and PR integration intact
Where it falls short
- −You are still entirely inside GitHub's pricing decisions — the fee was deferred, not withdrawn
- −Unsafe on public repositories: forked PRs would run on your machine
- −You own patching, isolation and cleanup between jobs
- −No sovereignty gain — this is a cost fix, not an independence fix
GitHub self-hosted runners as an alternative to
Where GitHub self-hosted runners shows up in our comparisons, and how it ranked.
GitHub self-hosted runners head-to-head
Straight comparisons against the tools people weigh it against.