38%
less per build at most, 27% at least, fee included
12%
faster on the Node install, build and tests
64
vCPU at the top; Semaphore x86 stops at 4
$0.0025
Semaphore's own fee a minute, counted in every number here
Semaphore has one of the simpler pricing models in CI: pick a machine, pay by the minute. For x86 work the biggest machine on offer is f1-standard-4, 4 vCPU at $0.015 a minute.
Semaphore also lets a job run on a machine you bring, through a self-hosted agent. Pipelines, promotions, secrets and test reports stay in Semaphore. Only the machine changes, and Semaphore charges $0.0025 a minute for every job that runs that way.
That fee makes the question interesting. A BuildPulse x64-4x minute is $0.008, so with Semaphore's cut on top it is $0.0105. Is that still a better deal than Semaphore's own machine once real builds run on it?
To find out, we ran three pinned open-source builds 10 times each on f1-standard-4 and on a BuildPulse x64-4x, both 4 vCPU, in production on October 12, 2026. They are the same workloads behind our GitHub Actions benchmark, and the Semaphore pipeline, the script that writes it and every run's time are in github.com/buildpulse/runner-benchmarks.
The race
Median job times, straight from Semaphore's own job timer, replayed side by side and kept in proportion. The badge shows how much sooner BuildPulse finished:
Median job time, replayed to scale
Docker image build hugo's own Dockerfile, no cache
4% faster
Semaphore f1-standard-4
138.5 s
BuildPulse x64-4x
133.5 s
Node install, build and tests vuejs/core, pinned
12% faster
Semaphore f1-standard-4
51.5 s
BuildPulse x64-4x
45.5 s
Those medians come straight out of Semaphore. This is the same run in Semaphore's own workflow view, five of the ten rounds:
Node finished 12% faster and Docker 4% faster on BuildPulse. The bigger difference is the price.
A BuildPulse minute costs 30% less than an f1-standard-4 minute, even after Semaphore's fee. Add the build times above and one build costs 27% to 38% less, with the fee counted in full on every minute. In dollars, every $100 of Docker builds on f1-standard-4 is about $67 on BuildPulse. Node builds come to $62, and Go compiles $73.
Slide it to your own volume:
Your month
5,000 builds a month
Semaphore f1-standard-4
$173
BuildPulse x64-4x
$117
A year on BuildPulse
$676kept, 33% of the bill
and 7 fewer hours of builds every month.
Median benchmark time at each side's list price per minute, before any free allowance.
When 4 vCPU stops being enough
Semaphore's x86 machines top out at 4 vCPU (machine types). That is fine until a test suite outgrows it, and then the usual answer is splitting the work across more jobs. BuildPulse runs up to 64 vCPU, so a build that has hit the ceiling can move up a size and stay on Semaphore. Every size, with a monthly bill next to Semaphore's, is on buildpulse.io/pricing.
Try it on one block
You do not have to move a whole pipeline to find out whether this holds for your builds. Create an agent type in Semaphore, paste its registration token into BuildPulse, and change the machine on one block:
.semaphore/semaphore.yml
agent: machine:- type: f1-standard-4- os_image: ubuntu2404+ type: s1-bp-x64-4x
That block now runs on BuildPulse, and everything else stays on Semaphore. Each job gets a fresh machine, usually running in under a minute. If your numbers look like ours, move the next one. Setup steps are in the runner docs, and every size side by side is on BuildPulse vs Semaphore machines.
How we measured
- The same jobs: vuejs/core v3.5.13 (install, build, unit tests), hugo v0.139.3 (Go compile) and hugo's own Dockerfile at the same tag, with no cache.
- The same toolchain: Node 20.18.1 and Go 1.23.4, installed from the same tarballs on both machines, so the machine is the only thing that changes.
- 10 runs per machine, one after another so no two runs competed, medians reported.
- Semaphore's clock, not ours: job time is Semaphore's own job duration in whole seconds, the number its bill is based on.
Think something is off, or seeing different numbers on your own builds? Open an issue and tell us.
Semaphore prices from Semaphore pricing, checked October 5, 2026.
