RunsOn
A self-hosted GitHub Actions runner service for AWS that launches a fresh EC2 instance per job and scales back to zero.
- GitHub stars
- 1.4k
- Last commit
- yesterday
- Latest release
- v3.4.0
- Licence
- MIT
- Self-hosted
- Yes

RunsOn is a control plane for self-hosted GitHub Actions runners on AWS. For every workflow job it launches an isolated EC2 instance with a runner image compatible with GitHub's own Linux images, so existing actions and toolchains keep working while the compute runs in your own AWS account.
You keep control of IAM, networking, images, caches and the AWS bill, and the project says there is no per-minute markup, only spot or on-demand EC2 rates. Setup is done with a CloudFormation stack or Terraform module, runners scale back to zero when idle, and you can pick high-frequency instance families or GPU types. It is presented as an alternative to Actions Runner Controller without needing a Kubernetes cluster.
The repository is licensed under MIT and is meant to run inside your AWS account, with documentation and a cost calculator on the project website. Its topics mention on-premise and self-hosted runners as well. It suits engineering teams with heavy GitHub Actions usage who want to cut CI spend and gain more control over runner hardware.
Key features
- Fresh EC2 runner for every job
- Compatible with GitHub Linux runner images
- CloudFormation or Terraform deployment
- Spot and on-demand instance support
- Scales to zero when idle
- Runs inside your own AWS account
Pricing: Free for non-commercial use. Commercial licenses are flat per year per legal entity: Starter from €300, Growth €900, Scale €1,800 and Enterprise €3,600, with a 15-day trial; AWS compute is billed separately.