Buildhound vs Blacksmith

Blacksmith runs GitHub Actions on its own bare-metal machines, by the minute and below GitHub's rates. Buildhound runs them on machines you already have, for a flat price per machine.

Set up by hand
  • Checked 16 October 2026
  • No referral agreement

What a month costs

Minutes a month
  • Buildhound Teamone machine you already have$24
  • GitHub-hostedmacos-latest, list price$310
  • Blacksmith6 vCPU, list price$400

One Mac you already have costs $24 a month on Team. Blacksmith costs $400, and GitHub-hosted $310.

List prices, before free minutes or credits on either side. One machine runs these minutes a job at a time; Personal is $10 a machine on a personal account.

Choose the one that fits

Choose Blacksmith when

  • Nobody on the team has a machine to spare.
  • You need Windows, or Linux runners larger than your machines.
  • Many jobs must run at once, and 3,000 free minutes a month cover a small team.

Choose Buildhound when

  • You already have a Mac or a Linux box, even a laptop you work on.
  • Your macOS CI runs past about 300 minutes a month, or Linux past about 6,000.
  • You want GitHub-hosted kept as the fallback when a machine is offline.

Side by side

Blacksmith from its own pages, checked 16 October 2026

Two ways to run the same workflow
Clean runners on machines you already have$24a machine a month on Team
BlacksmithHosted runners on its own bare metal$0.08a macOS minute

Price

How it is priced
BuildhoundFlat, per machine$10 a machine a month on a personal account, $24 in an organisation, counted only on days it runs a job. Public repositories free.
BlacksmithBy the minute3,000 free minutes a month per organisation, no minimum.
macOS
BuildhoundYour MacA fresh macOS VM per job; Apple allows two per Mac.
Blacksmith$0.08 a minuteM4, 6 vCPU.
Linux
BuildhoundYour Mac or Linux boxA fresh Linux VM per job, arm64 on a Mac.
Blacksmith$0.004 a minute2 vCPU x64; arm64 at $0.0025.
Windows
BuildhoundNot yetWindows jobs stay on GitHub-hosted.
Blacksmith$0.008 a minute2 vCPU, in public beta.

Where it runs

Machines
BuildhoundYoursA spare Mac, a Linux box, or a laptop while plugged in and not in use.
BlacksmithBlacksmith's bare metalIn the US and Europe.
Each job
BuildhoundA fresh VM, destroyed afterIt reaches the internet and never your network.
BlacksmithA Firecracker microVMFor Linux and Windows jobs.
Secrets
BuildhoundOn your hardwareOnly on a machine a person marked Trusted.
BlacksmithOn Blacksmith's machinesLike every hosted runner.

When things change

Runners unavailable
BuildhoundNew jobs route to the healthy sideGitHub-hosted, within about two minutes; a stuck job is re-run.
BlacksmithJobs wait for BlacksmithMoving them to GitHub-hosted is a change to runs-on.
Jobs at once
BuildhoundAs many as your machines holdSuch as one macOS and one Linux job on a 24 GB Mac mini. When every machine is busy, new jobs go to GitHub-hosted after two and a half minutes.
BlacksmithNo limitBy its docs.
Setup
BuildhoundOne prompt to your coding agentOr two commands by hand.
BlacksmithIts GitHub App and a labelOn an organisation.

One line in runs-on

Both ask you to change the runner label in your workflow. Your coding agent makes the Buildhound change in a pull request.

Blacksmithruns-on: blacksmith-2vcpu-ubuntu-2404The job runs where Blacksmith runs it.
Buildhoundruns-on: ${{ vars.BUILDHOUND_LINUX || 'ubuntu-latest' }}The job runs on your machine while one can take it, and on GitHub-hosted when none can.

Put the machines you already have to work.

A spare Mac, a Linux box, or the laptop you code on while it is plugged in and not in use. One prompt into Claude Code, Codex or Cursor: Linux jobs run within minutes, macOS jobs once the Mac has built its image.

Set up by hand
  • The Buildhound agent holds no GitHub credential
  • A fresh VM per job, off your network
  • Your agent prepares, you approve
  • How security works