Runners · Semaphore

3,000 free minutes every month

Semaphore runners, up to 30% less a minute with the fee included

Keep Semaphore. Point a block's agent type at BuildPulse and it runs on our machines through Semaphore's own self-hosted agent, up to 30% less a minute than Semaphore's f1 machines even after Semaphore's $0.0025 self-hosted fee, with sizes up to 64 vCPU where Semaphore's x86 machines stop at 4. Pipelines, promotions and secrets stay in Semaphore.

No credit card required. Per-minute billing with no minimums and no commitment. Cancel anytime.

The one-line change

This is the whole migration. Every other line in the file stays as it is.

.semaphore/semaphore.yml
version: v1.0name: CIagent:  machine:    type: s1-bp-x64-4xblocks:  - name: Test    task:      jobs:        - name: npm test          commands:            - checkout            - npm ci && npm test

Setup

  1. In Semaphore, open Settings, Self-hosted agents, and add an agent type, for example s1-bp-x64-4x. Copy its registration token.
  2. In BuildPulse, open Runners, Setup, pick Semaphore and a size. Enter your organization, the agent type and the registration token. They are checked against Semaphore before saving.
  3. Set the agent type on one block or pipeline, and push.

The full walkthrough, with screenshots of each setting, is in the Semaphore setup guide.

What a month on Semaphore costs

Semaphore charges $0.0025 a minute for any job on a self-hosted agent, so every BuildPulse price here already includes it. The benchmark put the two 4 vCPU machines within a few seconds of each other on every build, so the bill compares the per-minute price alone. Both free allowances are taken off.

Linux x64

vCPU

A month of CI at 10,000 Semaphore minutes on 4 vCPU x64

machine: { type: s1-bp-x64-4x }

Semaphore

$135

10,000 min · 1,000 included · 9,000 × $0.015

BuildPulse

$93

10,000 min · 1,500 free · 8,500 × $0.008 + 10,000 × $0.0025 fee

Semaphore's self-hosted fee included.

You pay

31% less

at 10,000 Semaphore minutes a month

$0.0105/min with Semaphore's fee, not $0.015/min, and the first 1,500 free every month.

Linux x64MemoryBuildPulse + feeSemaphoreTotal vs Semaphore
2 vCPU8 GB$0.0065$0.007513% less
4 vCPU16 GB$0.0105$0.01530% less

Per-minute list prices for the same vCPU count, October 5, 2026. Our price includes Semaphore's $0.0025 a minute self-hosted fee. Semaphore's x86 machines stop at 4 vCPU; ours go to 64.

3,000 free minutes a month

On every account, renewed monthly. Larger runners use them proportionally faster, so the grant is worth the same whichever size you run.

Flaky test detection included

Every run is parsed for flaky tests and per-test timing. No second tool, no separate bill.

Caching included

Docker layer, dependency and build caches that survive across runs, with no per-GB storage line.

Need your CI to reach a private registry or database behind an allowlist? Our runners leave from four fixed addresses you can allowlist today, and a dedicated egress IP is available on request. Talk to us.

Common questions

Do I leave Semaphore?

No. Semaphore keeps running your pipelines, promotions, secrets and test reports. The only thing that changes is the machine a job runs on, and that goes through Semaphore’s own self-hosted agent. Move one block, see how it does, and leave the rest where they are.

What does Semaphore still charge me?

Your Semaphore plan as before, plus Semaphore’s self-hosted fee of $0.0025 for every minute a job runs on our machine. Every price and saving on this page already has that fee in it.

Which jobs are supported?

Linux jobs on Ubuntu 24.04 with Docker, on an agent type you create. checkout, cache, artifact and test-results work as usual. sem-version is not available on any Semaphore self-hosted agent, ours included: install language versions in a command or run the job in a container image. macOS and ARM machine types are not supported.

How fast does a job start?

Each job gets a fresh machine, usually running in under a minute. You pay our per-minute rate from when Semaphore starts the job to when it ends; the boot is not billed.

Move one job and compare the bill

Create an agent type, paste its token, and point one block at it. Everything else in your pipeline stays on Semaphore.

3,000 free minutes every month · No credit card required