# GitHub Actions up to 4× faster. In your AWS, for up to 80% less.

Early access

Up to 30% faster than Blacksmith and Depot. Swap one label and keep every workflow.

[Get early access](https://www.ravion.com/early-access/github-actions-runners)

- **faster than GitHub-hosted runners:** Up to4×
- **less than GitHub-hosted runners:** Up to80%
- **cheaper than Blacksmith, and up to 30% faster:** Up to50%
- **faster than RunsOn, at the same or lower cost:** Up to2×

Running production on AWS for engineering teams since 2021.

## Every engineer and every agent is waiting on CI.

### GitHub-hosted is slow

Shared hardware, cold caches, and per-minute prices that grow with every engineer and every agent.

### Fast vendors run in their cloud

Your source, secrets, and artifacts leave your account.

### Self-hosted is easy to start and hard to own

An agent can stand up a runner in an hour. Images, autoscaling, caching, security, and Spot interruptions stay your problem forever.

With Ravion

## One line. Up to 4× faster.

Your workflows, actions, and secrets stay exactly as they are. Jobs just land on faster machines in your account.

Step 1

### Change one line

Install the Ravion GitHub App and point runs-on at a Ravion label. That's the migration.

Replaces ubuntu-latest, Self-managed runners

Step 2

### Sized from its own runs

Set cpu, memory, and disk to auto. Jobs start at 4 vCPU and 16 GiB, grow when they max out, and shrink only after representative runs. Each execution environment's performance profile sets how far sizing leans toward speed or cost.

Step 3

### Spot prices. No interruptions.

Add interruptible=true and a job can run on Spot, at up to 90% less than on-demand. When AWS reclaims the host, Ravion moves the running job live to another one. No restart, no retry.

## Every machine is a label.

Whole-disk caching follows your GitHub cache settings by default. Override size and cache in runs-on.

## Faster than all of them. Cheaper than most.

The same jobs on Ravion, side by side with every runner you'd consider. Shorter bars are better.

-   ### Ravion vs GitHub-hosted

    Job timeUp to4×faster

    GitHub

    Ravion

    CostUp to80%cheaper

    GitHub

    Ravion

-   ### Ravion vs Blacksmith

    Job timeUp to30%faster

    Blacksmith

    Ravion

    CostUp to50%cheaper

    Blacksmith

    Ravion

-   ### Ravion vs Depot

    Job timeUp to30%faster

    Depot

    Ravion

    CostUp to65%cheaper

    Depot

    Ravion

-   ### Ravion vs RunsOn

    Job timeUp to2×faster

    RunsOn

    Ravion

    CostSameor lower cost

    RunsOn

    Ravion

Based on real CI workloads run side by side at scale. Results vary by workload.

## Your account is the data center.

Ravion picks the machine. Everything else stays with you.

Interact with Ravion through the UI, CLI, API, or Git. Ravion sends jobs to your AWS account and gets status back. Everything else runs inside your account.

-   UI
-   CLI
-   API
-   Git

RavionControl plane

-   Matches jobs to machines
-   Scales hosts up and down
-   Tracks usage and spend

Jobs

Status

Your AWS accountYou own it

Your VPCPrivate network

Firecracker hostsOn-demand / Spot

-   test
-   build
-   lint
-   e2e

Your code and caches stay in your own AWS account.

Private services

-   Postgres
-   Internal APIs

No allowlists

-   Disks and caches in S3
-   Your IAM and AWS bill

## Engineered for speed, priced like raw compute.

### Up to 4× faster runs.

Jobs finish up to 4× faster than GitHub-hosted runners, up to 2× faster than RunsOn, and up to 30% faster than Blacksmith and Depot.

### 4x faster cache.

actions/cache is served from S3 in your own account, right next to your jobs, with no 10 GB repository limit.

### Ultra-fast whole-disk caching.

The entire disk is saved after every green run and restored on the next. Docker layers, package caches, and toolchains are already there, so Docker builds run up to 40x faster.

### Up to 80% less.

Faster jobs and lower compute rates cut costs by up to 80% versus GitHub-hosted runners, 65% versus Depot, and 50% versus Blacksmith.

### Runs in your VPC.

Reach private services. No IP allowlists.

### You own it.

Your account, your network, your IAM, your AWS bill.

## Where the money goes

Savings come from shorter jobs and lower compute rates. You pay AWS directly, at on-demand or Spot prices.

TodayWhat it costs youWith Ravion

GitHub-hosted runnersubuntu-latest / larger runners

What it costs you

Full per-minute price on shared hardware

With Ravion

Jobs finish up to 4× faster for up to 80% less.

Hosted runner vendorsBlacksmith / Depot / WarpBuild

What it costs you

Their markup on compute in their cloud

With Ravion

Up to 30% faster than Blacksmith and Depot, and up to 50% and 65% cheaper.

Self-managed runnersRunsOn / EC2 / Kubernetes

What it costs you

An agent can set them up quickly, and you own security, patching, and scaling.

With Ravion

Fully managed, and up to 2× faster than RunsOn at the same or lower cost.

## Switch in one line.

Create an execution environment, install the GitHub App, and change runs-on.

Jobs finish up to 4× faster than GitHub-hosted runners for up to 80% less. Keep your workflows and move the compute into your AWS account.

-   Slow, fragile hosted runners
-   Caches rebuilt from scratch every run
-   Minutes that cost far more than the compute
-   Secrets and source code running on shared infrastructure

.github/workflows/ci.yml+1\-1

```yaml
 jobs:
   test:
-Before:     runs-on: ubuntu-latest
+After:     runs-on: ravion/ee=ci-prod/type=sandbox/cpu=4/memory=16/id=${{ github.run_id }}-ci-test
     steps:
```

GitHub-hostedRavion

Larger runnerMore cpu and memory in the label

actions/cache restoreactions/cache + whole-disk caching

Per-minute billingYour AWS bill plus Ravion's fee

Move in three steps

1.  01

    Install the Ravion GitHub App and create an execution environment in your AWS account.

2.  02

    Change runs-on to a Ravion label and replace ci-prod with your execution environment's ID. Keep the id segment so each job's label is unique.

3.  03

    Push a commit, and the job runs on a sandbox in your AWS account.

GitHub Actions runner questions

### When can we use it?

Runners are in early access. Request access and we'll set you up.

### How does it work?

When a job asks for a Ravion label, Ravion boots a Firecracker sandbox in your AWS account and hands it the job. It's gone when the job finishes.

### Does Ravion see our code?

No. Jobs check out and build your code on machines in your own AWS account, and caches are stored in S3 in that account. Job logs go straight to GitHub, as with any runner. Ravion sees job details like the repo, branch, and status, and uses them to pick a machine for each job.

### What if a Spot machine is reclaimed?

Jobs marked interruptible=true can use Spot. If AWS reclaims the host, Ravion moves the running job live to another host, so it keeps going without a restart. If a move can't finish before AWS's deadline, the job restarts on another machine, and its last attempt runs on on-demand.

### Does caching just work?

Yes. actions/cache works unchanged. Whole-disk caching follows your GitHub cache settings by default, bringing back package caches, Docker layers, and build caches. Use disk\_cache=off for a fresh disk, or set disk\_cache=auto or a cache key to override. actions/checkout cleans untracked files by default, so keep caches outside the checkout folder.

### Which build caches does it support?

Turborepo, Bazel, Go, Gradle, Rust with sccache, and C and C++ with ccache share one remote build cache in S3 in your own AWS account, with no workflow changes. Ravion points each tool at it for every job, so a job replays outputs that another job, another branch, or a fresh disk already built. Gradle needs its build cache turned on. Remote caches you already configure, such as Vercel Remote Cache or your own Bazel remote, keep working.

### Is it built for agent PRs?

Yes. Agents open more PRs, and every PR runs CI. Whole-disk caching keeps each run short, and Spot keeps the volume affordable.

### Does this protect me from GitHub outages?

As much as we can. If GitHub's webhooks run late or go missing, Ravion checks GitHub for queued jobs every minute and starts runners for them, and a sweep every five minutes catches anything else. Caches are served from S3 in your own AWS account, not GitHub's cache service, so restores keep working when GitHub's cache is slow or down. GitHub still assigns every job, so if GitHub Actions stops handing out jobs entirely, no runner can start one, and Ravion picks them up as soon as it recovers.

### Why not just put a self-hosted runner on a spare machine?

It works until the machine sleeps, fills its disk, or one bad dependency gets access to everything on it. Ravion gives you the speed and price of your own hardware, with each job in a fresh, isolated sandbox in your AWS account, autoscaled, retired, and replaced automatically.

### Where do the savings come from?

Savings come from lower compute rates and fewer billed minutes. On real CI workloads run side by side, that adds up to as much as 80% less than GitHub-hosted runners, 65% less than Depot, and 50% less than Blacksmith. You pay AWS directly for on-demand or Spot compute, with no markup from us. Whole-disk caching skips repeated installs, image pulls, and builds, so jobs finish sooner. Our fee is $0.002 per minute, and Team includes 50,000 minutes a month. Actual savings depend on the workload, instance type, and capacity mix.

### How much faster is it?

On real CI workloads run side by side, jobs finish up to 4× faster than GitHub-hosted runners, up to 2× faster than RunsOn, and up to 30% faster than Blacksmith and Depot. Each job gets a Firecracker microVM on current-generation EC2. Whole-disk caching brings back package caches and Docker layers from the last successful run. Actual speedups depend on your workload.

## Faster runs. Smaller bills.

Ravion runners are in early access. Swap one label and see the difference on your next push.

[Get early access](https://www.ravion.com/early-access/github-actions-runners)

Runs in your AWS account / One-line change / On-demand or Spot
