Cache Limits

The 10 GB Cache Limit and Eviction Policy

Each repository gets 10 GB of cache for free; entries unused for seven days are deleted, and past the limit the least recently used go first. Since 20 November 2025 administrators can raise both limits (up to 10 TB for a personal repository), paying for the extra storage:

BookNest's caches and the repository's limitsShell
gh cache list --json key,ref --jq '.[] | "\(.ref)  \(.key[0:28])..."'
gh api repos/{owner}/{repo}/actions/cache/retention-limit --jq .
gh api repos/{owner}/{repo}/actions/cache/storage-limit --jq .
Output
refs/heads/ci/cache-demo  npm-Linux-874b14aefae1e1bf21...
refs/heads/ci/cache-demo  npm-Linux-874b14aefae1e1bf21...
refs/heads/main  node-cache-Linux-x64-npm-874...
refs/heads/main  node-cache-Linux-arm64-npm-8...
refs/pull/17/merge  node-cache-Linux-x64-npm-874...
refs/pull/17/merge  node-cache-Linux-arm64-npm-8...
{"max_cache_retention_days":7}
{"max_cache_size_gb":10}

Each scope keeps its own copy of a key. Large projects hit the ceiling with keys that change on every commit, and the symptom is thrashing, not an error. gh 29 cache delete <key> removes an entry; anything a later job must find belongs in an artifact.