73%
less a minute than CircleCI's own machines, at the most
1.7x
faster than CircleCI's Large, measured
38%
less per build than Semaphore, its fee included
64
vCPU at the top, on either CI
BuildPulse runners now take CircleCI and Semaphore jobs: up to 73% less than CircleCI's own machines, and 1.7x faster. It has been on for every organization since October 3, 2026, including the free tier, which needs no credit card. The machines, sizes and per-minute rates are the ones our GitHub Actions customers already use.
How it works
You keep your CI. BuildPulse joins it through the vendor's own self-hosted mechanism:
- CircleCI: a self-hosted machine runner on a resource class you create. Jobs set
machine: trueandresource_class: your-namespace/your-class. - Semaphore: a self-hosted agent of an agent type you create. Pipelines set
agent: machine: type: s1-your-type.
BuildPulse watches that resource class or agent type for waiting jobs and starts an Ubuntu 24.04 machine with Docker at the size you picked. Each job gets a fresh machine, usually running in under a minute. You pay our per-minute rate for the time the job runs, not for the boot, and the same 3,000 free base minutes a month apply.
What it costs next to CircleCI
Jobs on a CircleCI self-hosted runner use no CircleCI credits for run time, so the minute costs our rate alone. Against CircleCI's own Linux VM classes that is up to 73% less, and under half the price from 8 vCPU up:
| CircleCI machine | vCPU | CircleCI $/min | BuildPulse size | BuildPulse $/min | BuildPulse costs |
|---|---|---|---|---|---|
| Medium (7.5 GB) | 2 | $0.006 | 2x (8 GB) | $0.004 | 33% less |
| Large (15 GB) | 4 | $0.012 | 4x (16 GB) | $0.008 | 33% less |
| X-large (32 GB) | 8 | $0.06 | 8x (32 GB) | $0.016 | 73% less |
| 2X-large (64 GB) | 16 | $0.12 | 16x (64 GB) | $0.032 | 73% less |
| 2X-large+ (64 GB) | 32 | $0.18 | 32x (128 GB) | $0.064 | 64% less |
CircleCI still bills network transfer for restoring caches and workspaces to a self-hosted runner, at 420 credits per GB past your plan's allowance (persisting data). Every class, including CircleCI's Gen 2 machines, and a worked month are on BuildPulse vs CircleCI machines.
The same builds also finish faster. At 4 vCPU, Docker, Node and Go builds ran 1.7x faster than on CircleCI's Large, so one build costs 61% to 62% less (the benchmark).
What it costs next to Semaphore
Semaphore bills its own $0.0025 a minute for any self-hosted agent, so our column includes it:
| Semaphore machine | vCPU | Semaphore $/min | BuildPulse size | BuildPulse + fee $/min | BuildPulse costs |
|---|---|---|---|---|---|
| f1-standard-2 (8 GB) | 2 | $0.0075 | 2x (8 GB) | $0.0065 | 13% less |
| f1-standard-4 (16 GB) | 4 | $0.015 | 4x (16 GB) | $0.0105 | 30% less |
At 4 vCPU, measured against Semaphore's own f1-standard-4, one build costs 27% to 38% less, fee included (the benchmark). Semaphore's x86 machines stop at 4 vCPU. BuildPulse runs up to 64.
Setting it up
- Create a resource class (CircleCI) or an agent type (Semaphore) and copy its token. CircleCI also needs a read-only personal API token so we can see when jobs are waiting.
- In BuildPulse, open Runners → Setup, pick the provider and a size, and paste the tokens. We check them against the vendor before saving.
- Point one job at the new resource class or agent type and push.
The setup guide has the details and example configs for both.
What's supported: Linux machine jobs on Ubuntu 24.04 with Docker. macOS, Windows and CircleCI's Docker executor are not supported. CircleCI caps self-hosted jobs running at once by plan: 5 on Free, 20 on Performance, unlimited on Scale.
Move one job, compare the bill, and keep the rest of your pipeline as it is.
Vendor prices from CircleCI pricing, its price list and Semaphore pricing, checked October 5, 2026.