What is a self-hosted runner?

A self-hosted runner is a computer you own that runs your GitHub Actions jobs.

What a self-hosted runner is

A self-hosted runner is your own computer, doing jobs for GitHub. A runner is the computer that runs each job, like tests or builds. Most jobs run on GitHub's computers, called GitHub-hosted runners. Yours can be the Mac on your desk or a Linux box. It runs GitHub's runner app, and you pick it with runs-on.

GitHub-hosted vs self-hosted runners

The big change is whose computer runs the job.

GitHub-hostedSelf-hosted
Whose computerGitHub'sYours
CostBy the minute, after free minutesYou pay for the computer
SpeedGitHub's set sizesAs fast as your box
Mac supportYes, at $0.062 a minuteYes, your own Mac
Who cleans upGitHubYou, or a tool

Why teams use a self-hosted runner

Teams use one to save money and time.

  • Cost. GitHub bills hosted jobs by the minute. We built Codemany after our bill hit $500 to $600 a month.
  • Speed. Your own box may be faster than GitHub's. See the nightly benchmarks.
  • Your own Mac. iOS apps need a Mac to build, and yours can do it.
  • Tools stay. Install your tools once, not every job.

The hard parts, and how Codemany helps

By hand, you set it up in Settings → Actions → Runners. Then three chores are yours.

  • A fresh runner per job. By hand, one runner runs every job, so old files stay. Codemany gives each job a new runner, wiped after one job.
  • Updates. Codemany keeps your runners up to date.
  • Cleanup. Codemany clears caches and disk by itself.

Start in three steps

  1. Install

    Get the Mac app for Apple silicon, macOS 14 or later. On Linux, run one command or use apt.

  2. Sign in

    Sign in with GitHub and pick your repos.

  3. Change one line

    Set this in your workflow:

    runs-on: [self-hosted, codemany]

Questions

Is a self-hosted runner free?

GitHub's runner app is free, but you pay for the computer. Codemany is $20 a month for 2 machines, after 14 free days with no card.

Is a self-hosted runner safe?

Use one only on private repos. On a public repo, anyone can open a pull request that runs code on your machine. Read Runner security.

Can I use my Mac as a self-hosted runner?

Yes. Codemany works on a Mac with Apple silicon and macOS 14 or later. See the Mac runner guide.

What is the difference between GitHub-hosted and self-hosted runners?

GitHub-hosted runners are GitHub's computers, paid by the minute. Self-hosted ones are yours to run and care for.

Read next: self-hosted runner on a Mac, self-hosted runner on Linux and single-use runners.