Skip to content

Faster builds. Shared build data.

Reuse dependencies, compiler results, and task outputs across CI and local builds. Keep your build outputs and private images in the same workspace.

1.89×

Faster builds

13.3 minutes less per build than the CI provider's cache, on the same runner class and commits.

1.10×

Faster with half the vCPUs

Image builds on a runner with 8 vCPUs took less time on average than a remote builder with 16, and were faster on 24 of 30 shared commits.

2.7 ms

Median cache read time

Median of tool-reported project averages across 2 benchmarks. Hits can be served locally after prefetch.

Benchmark →

PostHog

Average restore, build and save · lower is better

GitHub runner

4 vCPU · 16 GB · Ubuntu 24.04 x86-64

Base · Image layers

BoringCache
15 min 2 s 30 builds
GHA Cache
28 min 22 s 30 builds
GHCR
20 min 58 s 30 builds

Plus · Image layers, tool caches and cache mounts

BoringCache +
18 min 1 s 30 builds
GHA Cache Dance
41 min 8 s 30 builds
Saved per build
13 min 20 s
Faster than GHA Cache
1.89×

1.96× on the 10 build pairs with the same CPU model

Builds compared
30

Compare build time, cache hits and stored cache across projects and tools. See all benchmarks →

Cache, Artifacts and Registry

Start with the part of your build you want to improve. Use the others when you need them.

Storage and access, in the same place.

Choose where build data is stored and which jobs can use it.

Where build data is stored

Managed storage

Every plan

Cache · Artifacts · Registry

Included for Cache, Artifacts, and Registry on every plan. Start without setting up a storage account.

View plans →

Your own storage

Custom plan

Cache · Artifacts · Registry

S3 Azure Blob

Connect S3-compatible storage for Cache, Artifacts and Registry on Custom. Cache and Artifacts also support Azure Blob Storage. Your provider bills storage and transfers.

Set up your storage →

Separate readers and publishers

  • Trusted CI jobs Publish shared cache for the next build Read + publish
  • Pull requests Reuse cache without replacing it Read only
  • Sandboxes and agents Reuse cache and keep new outputs local Read only

Connect supported CI through OIDC instead of keeping a reusable BoringCache secret in your workflow.

Connect your CI → See access controls →

Compare BoringCache with your current cache.

Send a repo and a workflow. Get paired measurements on your runner class in 48 hours after I confirm the setup.

Compare your build

Set up BoringCache

Install the CLI, connect your repository, and choose what to cache.

curl -sSL https://install.boringcache.com/install.sh | sh
cd your-project
boringcache onboard