Skipbox

Unlimited GitHub Actions minutes from $39 a month

Hosted runners for the private repositories of your GitHub organization or personal account. Change one runs-on: line and your jobs run in a fresh Linux VM, for a flat $39, $79, or $149 a month.

Calculate your cost
  • No card
  • 7 days or 3,000 job-minutes free
  • 30-day refund on first payment
.github/workflows/ci.yml
 jobs:
   test:
-    runs-on: ubuntu-latest
+    runs-on: skipbox
     steps:
       - uses: actions/checkout@v4
   lint:
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v4
Price
Same monthly price, however many minutesFrom $39 a month
Job size
Jobs start at 4 vCPUubuntu-latest has 2 cores
Limits
Never stopped by a spending limitWhen it's busy, jobs wait their turn
Access
Never edits your workflowsAdds runners and reads job history

How you start

  1. Sign in with GitHub.
  2. Install the Skipbox app on your organization or personal account. It adds and removes a runner for each job and reads your job history.
  3. Change runs-on in one job and push. Your free trial starts when that job runs.

Run by Fluxenic Inc., Tokyo. Questions before you switch: hello@skipbox.dev

What your minutes cost on Skipbox

Type the job-minutes your organization or personal account runs in a month. Each card shows the cheapest Skipbox plans that run them, and where the flat price comes out lower, what the same jobs cost on GitHub and on Blacksmith.

A job-minute is one minute of one job running. GitHub's billing usage page shows your Actions minutes (how to find it); ubuntu-latest jobs are the 2-core row. Or install the app, and Skipbox reads your last 30 days and shows what they cost on GitHub and which plan fits.

Or try: 3,000 5,000 10,000 20,000

At 10,000 job-minutes a month, jobs run about 7.6 hours in total each working day (22 days a month).

4 vCPU jobs

GitHub ubuntu-latest (2-core), on GitHub Team 2 vCPU · 8 GB
$4210,000 × $0.006 − $18 included
GitHub 4-core, on GitHub Team
$10210,000 × $0.012 − $18 included
Blacksmith
$56(10,000 − 3,000 free) × $0.008
Skipbox S Cheapest here 4 vCPU · 8 GB
$39Flat, however many minutes

Skipbox S costs $3 less a month than GitHub ubuntu-latest (2-core), on GitHub Team.

8 vCPU jobs

GitHub 8-core, on GitHub Team
$20210,000 × $0.022 − $18 included
Blacksmith
$112(10,000 − 3,000 free) × $0.016
Skipbox M Cheapest here
$79Flat, however many minutes

Skipbox M costs $33 less a month than Blacksmith.

16 vCPU jobs

GitHub 16-core, on GitHub Team
$40210,000 × $0.042 − $18 included
Blacksmith
$224(10,000 − 3,000 free) × $0.032
Skipbox L Cheapest here
$149Flat, however many minutes

Skipbox L costs $75 less a month than Blacksmith.

On GitHub Team, Skipbox S ($39 a month, 4 vCPU) costs less than GitHub's ubuntu-latest above about 9,500 job-minutes a month, and less than its 4‑core runner above about 4,800.

GitHub's rates: $0.006 a minute for ubuntu-latest and $0.012 for the 4-core runner, less the $18 a month GitHub Team includes (GitHub's price list).

Prices read on each vendor's page on November 8, 2026; GitHub Team includes $18 of compute a month, and Blacksmith's 3,000 free minutes are counted at the job's size. Skipbox: the cheapest plans that run the minutes in a working month (22 days of 8 hours).

Plans

Every plan has unlimited minutes. Need more jobs at once? Add plans: their vCPU adds up, and a job can be as large as your largest plan.

S

$39 a month

  • 1 job at a time on 4 vCPU · 8 GB
  • Unlimited minutes
  • runs-on: skipbox

M

For 8 vCPU jobs

$79 a month

  • 1 job at a time on 8 vCPU · 16 GB
  • or 2 jobs at a time on 4 vCPU · 8 GB
  • Unlimited minutes
  • runs-on: skipbox or skipbox-8x16

The smallest plan that runs 8 vCPU jobs, with the same 16 GB of memory as GitHub's 4-core runner.

L

$149 a month

  • 1 job at a time on 16 vCPU · 32 GB
  • or 2 jobs at a time on 8 vCPU · 16 GB
  • or 4 jobs at a time on 4 vCPU · 8 GB
  • Unlimited minutes
  • runs-on: skipbox or skipbox-8x16 or skipbox-16x32

Start with the free trial, no card. You choose a plan later on your dashboard, from your own jobs' usage.

On every plan

  • Unlimited minutes and no usage charges, billed in US dollars monthly, or yearly upfront for the price of 10 months.
  • Linux on x64, for private repositories of GitHub organizations and personal accounts. A job runs for up to 6 hours.
  • Cancel any time. The plan runs to the end of the month, or the year, you paid for.
  • A full refund within 30 days of your first payment: email hello@skipbox.dev. If your first job doesn't start within 10 minutes of its turn, the refund is automatic.

Free trial

No card. One 4 vCPU · 8 GB job at a time, for 7 days or 3,000 job-minutes from the first job of your organization or personal account, whichever comes first: 1 trial per account and 1 per person. When it ends, new jobs wait until you choose a plan, and nothing is charged.

Busy month, same bill: jobs wait their turn

A plan runs jobs side by side while they fit in its vCPU, and the next one waits until a running job ends. On S, a second job waits for the first. Waiting adds nothing to your Skipbox bill, and no monthly minute cap stops your jobs.

Your organization's page shows how many jobs are waiting and how long the oldest has waited.

Who Skipbox is for

  • Teams that run more than about 9,500 job-minutes a month on GitHub's ubuntu-latest, 4,800 on its 4-core runner, or 6,400–7,900 of 4 vCPU jobs on Blacksmith.
  • Teams that want a bill that doesn't grow with usage: more jobs, longer jobs or a bigger matrix never change the price of your plans.

What Skipbox can access, and how a job is isolated

Your workflows stay yours

Skipbox never edits or pushes your workflow files. The Skipbox CI app asks for three permissions: Self-hosted runners (write), to add and remove each job's runner; Actions (read), to see waiting jobs and read your last 30 days of job history for your quote; and Metadata (read). It can't read your code: each job checks out your code inside its own VM. When you sign in, Skipbox also reads your email address, for trial and billing notices. The personal-account app's permissions are on the install page and in the questions below.

One VM per job, deleted after it

Each job gets its own virtual machine, made fresh for that one job. It runs that job, then it's deleted with its disk, so nothing from an earlier job is on it. A job VM still there after 6 hours is deleted.

No way in from the internet

Nothing on the internet can connect in to a job's VM: each one sits behind a firewall that drops all inbound traffic. Outbound mail (TCP port 25) is blocked. The rest of the internet is open, as on GitHub-hosted runners, so jobs can pull packages and images.

For comparison, Blacksmith's app asks for read and write access to code, pull requests, and workflows (blacksmith.sh/security, read November 9, 2026).

As on any runner, a job's VM holds your workflow's secrets and GitHub's token for that job, so code the job runs can read them.

Questions

Will my workflows run unchanged?

Most do. The VM is Ubuntu 24.04 on x64 with Docker, git, build-essential, Node 22, and Python 3.12, and the job runs as a user with passwordless sudo, as on GitHub's runners. GitHub's ubuntu-latest image has more preinstalled, so add actions/setup-java, actions/setup-go, and the like for other tools.

Are the minutes really unlimited?

Yes. Plans cost $39, $79, or $149 a month with no usage charges, and a plan limits how many jobs run at once and how big each is, not minutes. A job can run for up to 6 hours.

How does Skipbox compare with GitHub's runners?

Each Skipbox S job gets 4 vCPU and 8 GB; GitHub's ubuntu-latest on a private repository is 2 cores and 8 GB. After your first job runs on Skipbox, the dashboard shows its time beside its median on GitHub over the last 30 days, when GitHub ran it then.

What can Skipbox access?

Its GitHub app adds and removes one runner per job, sees the jobs waiting for one, and reads your last 30 days of job history for your quote; it never edits your workflows, and on an organization the Skipbox CI app can't read your code. On a personal account, GitHub adds a runner to a repository only with the Administration permission, which also covers the repository's settings, collaborators and deploy keys. Skipbox (personal) asks for it and calls only the runner endpoints with it.

Where do the jobs run?

In Helsinki, Finland, on servers Fluxenic rents from Hetzner: dedicated servers, and Hetzner Cloud servers made for one job each, whose vCPU are shared with other Hetzner customers. There's no other region, so a job that talks to servers far from Europe spends longer on each request. Traffic isn't charged: there are no usage charges.

Can we get a refund, or cancel?

Ask within 30 days of your first payment, monthly or yearly, and it's refunded in full: email hello@skipbox.dev. If your first job doesn't start within 10 minutes of its turn, the refund is automatic. You can cancel any time; the plan runs to the end of the month, or the year, you paid for.

What happens when the trial ends? Am I charged?

Nothing is charged: the trial takes no card. It starts at your first job on Skipbox, not when you sign in or install the app, and lasts 7 days or 3,000 job-minutes, whichever comes first. When it ends, new jobs wait on GitHub until you choose a plan.

How do I move a job to Skipbox, and back?

Sign in with GitHub, install the Skipbox CI app on your organization or Skipbox (personal) on your personal account, change the job's runs-on line to skipbox, and commit; for a larger VM on plans that include one, use skipbox-8x16 or skipbox-16x32. To go back, change runs-on: skipbox back to runs-on: ubuntu-latest. Nothing else in your repository changed.

Move one job and see

Install the app on your organization or personal account, change one runs-on line, and push. The trial takes no card, and a paid plan is refundable for 30 days.