Skip to content

ERR_STORAGE_WRITE_FAILED β€” Storage Write Failed

HTTP Status: 500 Retryable: Yes Automatic retry: None. Storage write operations are not automatically retried.

What the User Sees

Failed to save file to storage. (ERR_STORAGE_WRITE_FAILED)

What Causes This Error

Cloudflare R2 threw an error when attempting to write an object to the storage bucket. Possible causes include: R2 infrastructure outage, bucket storage quota exceeded, individual object too large for the R2 limits, or transient network issues between the Worker runtime and R2.

This error occurs during file upload (routes/files.ts:upload-data), chunk HTML storage during conversion, and conversion output storage. A write failure during conversion will cause the conversion to fail, and the user will need to retry.

R2 has a maximum object size of 5 TB per object, so size limits are rarely the cause. More commonly, write failures are transient infrastructure issues.

The structured logs will contain either β€œObject storage upload error:” or β€œR2 upload error” depending on where in the code path the failure occurred.

Resolution Steps

For Users

  1. Try uploading the file again. This is usually a temporary storage issue.
  2. If uploading a very large file, try compressing it first or splitting it into smaller parts.
  3. If the error occurs during conversion rather than upload, try the conversion again.

For Administrators

  1. Check R2 bucket usage and quotas in the Cloudflare dashboard. Verify the bucket has not hit any storage limits.
  2. Check https://www.cloudflarestatus.com for R2 incidents.
  3. Review the structured log for the specific error. Search for β€œObject storage upload error:” or β€œR2 upload error” in Grafana.
  4. Verify R2 bucket bindings in wrangler.toml are correct.
  5. If the bucket is near quota limits, clean up old conversion artifacts or increase the bucket quota.
  6. Check if the issue correlates with specific file sizes β€” very large files may hit Worker memory limits before reaching R2.