Skip to content
Latchkey

actions/upload-artifact "Failed to CreateArtifact: 429" in CI

upload-artifact v4 calls CreateArtifact on the new backend; when many jobs upload at once, the service can return 429 (Too Many Requests). It is transient and retryable, so a re-run or fewer concurrent uploads usually clears it.

What this error means

The upload step fails with "Error: Failed to CreateArtifact: Received non-retryable error" or a retryable "(429) Too Many Requests" during a wide matrix or many simultaneous workflow runs.

upload-artifact
Error: Failed to CreateArtifact: Received non-retryable error: Failed request: (429) Too Many Requests

Common causes

A burst of concurrent artifact uploads

A wide matrix or many parallel runs all calling CreateArtifact in a short window trips the backend rate limit.

Rapid repeated uploads from one workflow

Many upload steps firing back to back concentrate load on the artifact service.

How to fix it

Re-run; 429 is usually transient

Most CreateArtifact 429s do not repeat. Re-run the failed job, and if it is sporadic the upload succeeds the next time.

Throttle concurrent uploads

  1. Cap matrix width or use max-parallel to spread uploads over time.
  2. Combine multiple outputs into fewer artifacts so there are fewer upload calls.
  3. Stagger jobs that all upload at the very end.
.github/workflows/ci.yml
strategy:
  max-parallel: 5
  matrix:
    shard: [1, 2, 3, 4, 5, 6, 7, 8]

How to prevent it

  • Keep concurrent artifact uploads modest with max-parallel.
  • Consolidate outputs into fewer artifacts.
  • Treat sporadic 429s as transient and re-run.

Frequently asked questions

What causes ""Failed to CreateArtifact" (429)"?
A wide matrix or many parallel runs all calling CreateArtifact in a short window trips the backend rate limit.
How do I fix "Failed to CreateArtifact" (429)?
Most CreateArtifact 429s do not repeat. Re-run the failed job, and if it is sporadic the upload succeeds the next time.

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card