GitHub Actions "artifact upload failed with status 500"
A 500 from the artifact service is a server-side failure, not a problem with your files. The upload client may retry internally; if it still fails, re-running the job usually succeeds once the backend recovers.
What this error means
An upload-artifact step fails with a 500 status from the artifact service.
github-actions
##[error]Artifact upload failed with status code 500 (Internal Server Error).
Failed to upload artifact 'build-output' after retries.Common causes
Transient artifact-service error
A backend 500 interrupted the upload; it is non-deterministic and unrelated to your config.
How to fix it
Retry the upload
- Re-run the job to retry the upload.
- Check the GitHub status page if 500s persist across runs.
Let managed runners absorb the blip
- Latchkey auto-retries transient artifact-service failures, so an isolated 500 does not surface as a failed pipeline.
How to prevent it
- Treat one-off artifact 500s as transient and retry.
- Avoid changing workflow logic in response to a single backend error.
Related guides
GitHub Actions "has encountered an internal error" (retry)Handle "GitHub Actions has encountered an internal error while running your job" - a transient server-side fa…
GitHub Actions "No files were found" - actions/upload-artifact v4 FailuresFix actions/upload-artifact@v4 failures - "No files were found with the provided path", a wrong working direc…
GitHub Actions "Failed to download artifact" / artifact not foundFix GitHub Actions "Failed to download artifact" - download-artifact could not find an artifact, usually a na…