Actuated alternatives, and where a flat rate stops paying
Actuated alternatives are usually shopped for one of two reasons, and they pull in opposite directions: either the servers have become someone's job, or the flat fee stopped being cheap because the volume never arrived. Actuated publishes $150 for the first server and $125 for each additional one per month, with unlimited build minutes on top, so the whole comparison turns on how many minutes you actually put through it.

Actuated is not a runner vendor in the sense the rest of this comparison is. You bring the hardware and it brings the scheduler: its documentation asks for bare-metal hosts, such as AWS Metal or Graviton or something on-premises, or machines that support nested virtualization, a feature it names as available on GCP and DigitalOcean. Its control plane then schedules builds across your fleet of agents, packing them densely, without overloading the host, and each build gets a fresh Firecracker microVM that is destroyed afterwards.
So an alternative is not a like-for-like swap. It is a decision about which of two things you want to stop owning: the servers, or the fixed monthly cost. This page ranks the options by that, works the crossover in minutes, and says plainly what none of them replaces.
What the flat fee is buying, and what it is not
The published Self-Service plan is a flat rate per server: $150 for the first, $125 for each additional, per month. Against it Actuated lists unlimited build minutes, unlimited RAM and CPUs, unlimited concurrency, organization and repository reports, SSH debug access and Prometheus metrics. The label encodes the shape you want per job, and two forms of it appear in public workflow files: actuated-8cpu-12gb, on a live job in the inlets/inletsctl repository, and actuated-arm64-4cpu-16gb, in a commented-out job in open-telemetry/opentelemetry-cpp.
The fee is the control plane, and it is worth being exact about that because the crossover arithmetic below depends on it. The servers are your bill, whether that is a bare-metal box in a rack or a metal instance at a cloud provider, and they are billed whether or not a build is running. The control plane manages efficient allocation across your fleet of servers and maintains the CI image, which is real work you would otherwise do; it does not supply the machine.
The crossover, in minutes a month
A flat fee wins on volume and loses on idleness, and the only question is where your usage sits. At $150 a month for one server, the licence costs the same as 60,000 minutes on a runner at $0.0025 a minute, or 25,000 minutes at GitHub's published $0.006 for a Linux 2-core x64 job. Below that, a metered vendor is cheaper before you have paid for a single machine.
There is a second constraint that catches people, and it is about hours rather than money. A month holds about 43,200 minutes. One server delivers 43,200 job-minutes per concurrent microVM only if it is busy every minute of every day, so reaching 60,000 job-minutes on one server means running roughly one and a half builds concurrently around the clock. At a more typical quarter utilisation you need six concurrent slots to get there, which is a real machine rather than a small one, and that machine is not in the $150.
| Build minutes a month | Actuated licence, one server | A runner at $0.0025 | GitHub-hosted at $0.006 |
|---|---|---|---|
| 10,000 | $150 plus the server | $25 | $60 |
| 25,000 | $150 plus the server | $62.50 | $150 |
| 40,000 | $150 plus the server | $100 | $240 |
| 60,000 | $150 plus the server | $150 | $360 |
| 100,000 | $150 plus the server | $250 | $600 |
The alternatives, by what they take off your hands
Ranked by how much of the ownership they remove rather than by price, because price is the second question here and only becomes the first once you have decided who holds the machines. The top two rows keep the compute in infrastructure you control, like Actuated does. The bottom three take it away entirely, and with it the isolation model.
| Alternative | How you pay | Where jobs run | What you still operate | What you give up against Actuated |
|---|---|---|---|---|
| RunsOn | A licence from EUR 300 a year, plus your AWS bill | EC2 in your own AWS account | The AWS account, quotas, AMIs and spot capacity | Firecracker isolation; runners are EC2 instances |
| WarpBuild BYOC | $0.002 a minute, flat, inside your cloud | AWS, GCP or Azure in your own account | The cloud account and its capacity | The flat fee: this one meters again, per minute |
| Actions Runner Controller | No licence; your Kubernetes bill | Pods in your own cluster | A cluster, the controller, scaling and image updates | The managed control plane, and microVM isolation |
| Blacksmith | $0.004 a minute Ubuntu x64, $0.0025 arm64 | The vendor's cloud | Nothing | Your own hardware, and unlimited concurrency |
| Latchkey | $0.0025 a minute at 2 vCPU with 8 GB | The vendor's cloud | Nothing | arm64, your own hardware, and sizes above 16 vCPU |
| Depot | $0.006 a minute at 2 vCPU with 8 GB | The vendor's cloud | Nothing | Your own hardware; it costs GitHub list price a minute |
If you want to keep the hardware
Two of the rows above are genuinely close in spirit. RunsOn keeps the compute in your AWS account and charges a licence rather than a meter, which is the same shape as Actuated with EC2 instead of Firecracker. Its Starter tier is published as from EUR 300 a year for under 50,000 runners a month, and it states plainly that the compute is your AWS bill, not ours, with no markup, billed per second by AWS for EC2, S3 and EBS.
Note the unit in that tier: runners a month, a count of machines started, not minutes consumed. A repository with many short jobs crosses a RunsOn tier long before a repository with a few long ones, which is the opposite of how a per-minute vendor behaves. WarpBuild's bring-your-own-cloud mode is the third variant, a flat $0.002 a minute for Linux runners inside your own AWS, GCP or Azure account, which keeps the data path yours while putting the meter back.
If you want the hardware gone
Then the comparison collapses to a rate and a platform list, and the flat-fee thinking stops applying. At the 2 vCPU with 8 GB shape everyone quotes, the published Linux x64 rates on 2026-09-21 were $0.0012 at Ubicloud, $0.0025 at Latchkey, $0.004 at Blacksmith and WarpBuild managed, $0.004 prepaid at Namespace and $0.006 at Depot and at GitHub-hosted. The full eight-vendor matrix with free tiers and billing granularity is in GitHub Actions runner alternatives.
What you lose in the move is specific rather than general. Actuated runs Linux on x86_64 and Arm on hardware you chose, which means you can put a build on a machine with a disk, a GPU or a core count that no vendor sells. Most fully managed vendors here are Linux x86_64 only at the cheap end, and the ones with arm64 price it separately. If the reason you are on Actuated is a machine shape, no row above replaces it.
What none of them replaces
Three properties are Actuated-specific and it is worth conceding them before making any case. Firecracker microVM isolation per build, on hardware you own, is not on offer from a vendor whose whole model is sharing a fleet across customers. Unlimited concurrency at a fixed price is likewise a property of owning the machines; every metered vendor charges the second build the same as the first.
The third is less visible and matters more over a year: a flat fee makes CI cost predictable, which changes how a team behaves. Nobody argues about adding a matrix leg when the marginal minute is free. Moving to a meter puts that argument back, and it is worth deciding in advance whether you want it back before you move to save money on a volume you might then grow into.
How to settle it in an afternoon
Four numbers, all of which your own account already has, and none of which needs a trial.
- Total build minutes last month, from workflow history rather than from an invoice. That is the x axis of the crossover table above.
- Peak concurrent jobs, taken from the same history. That is how many microVMs a server has to hold, and it decides how much hardware the $150 is sitting on top of.
- The real monthly cost of the servers you run today, including the ones that are idle at three in the morning. Add it to the licence before you compare anything.
- The share of jobs that are not Linux x86_64, or that need a machine shape no vendor sells. If it is more than a token, this is a two-vendor answer rather than a switch.
Nothing on this page was benchmarked here
No runner job was recorded for this page and no timing on it is ours. That is a limit of the subject rather than an omission: comparing a flat fee on hardware you choose against a metered minute on hardware a vendor chose is not a benchmark, because the two sides have no common machine. A result would say more about which box we rented than about either product.
So every number above is a published price with the page and the date it was read, and every arithmetic line says so. The one thing we did check rather than cite is the label format, which comes from two public repositories using it in anger rather than from a page describing it. Where you want speed rather than price, the published cross-vendor evidence is collected in fastest GitHub Actions runners.
Frequently asked questions
How much does Actuated cost?
At what volume does a flat-rate runner beat a per-minute one?
What is the closest alternative to Actuated if I want to keep my own hardware?
Do I lose microVM isolation by moving to a managed runner?
Related guides
References
- Actuated pricing: the per-server plan and what it includes (verified 2026-09-21)
- Actuated documentation: hardware requirements, scheduling and the microVM model (verified 2026-09-21)
- RunsOn pricing: licence tiers counted in runners a month, and the no-markup compute statement (verified 2026-09-21)
- GitHub Docs: Actions runner pricing, the published per-minute rates and whole-minute rounding (verified 2026-09-21)
- WarpBuild pricing: managed size tiers and the flat bring-your-own-cloud rate (verified 2026-09-21)
- GitHub Actions documentation