SlowDown AWS Origin: Platform & cloud Last updated 12 Oct 2026

S3 SlowDown: Please reduce your request rate (503)

S3 is throttling requests to a prefix because the request rate is above what it can currently serve.

Exact message you may see Please reduce your request rate503 Slow Down
Seen on: AWS

Meaning

S3 scales per prefix (about 3,500 writes and 5,500 reads per second each) and needs time to scale up. Bursts against one prefix, or many small requests (lists, HEADs) trigger 503 SlowDown. SDKs retry automatically but can exhaust retries.

Common causes

  • Bursty traffic to a single prefix
  • Many tiny objects/requests (per-file uploads, frequent LIST)
  • Retries without backoff amplifying load
  • Lifecycle/versioning delete storms

⚡ Quick fix

  1. Spread keys across prefixes
  2. Use exponential backoff (adaptive retry mode)
  3. Batch work (fewer, larger objects; S3 Batch Operations)

Detailed fix by platform

Python

  1. python
    from botocore.config import Config
    s3 = boto3.client("s3", config=Config(retries={"max_attempts": 10, "mode": "adaptive"}))

How to diagnose

  1. Prefix — Are all keys under one prefix?
  2. Rate — CloudWatch request metrics
  3. Retries — SDK retry mode

🔧 Still not fixed?

Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:

Where this error sits

Origin: Platform & cloud. Errors that are often confused with or caused by this one (click to open):

1015 — Cloudflare Error 1015: You are being rate limited (Cloudflare)1015503 — HTTP 503 Service Unavailable (HTTP)503AccessControlListNotSupported — AccessControlListNotSupported: The bucket does not allow ACLs (AWS)AccessControlListNotS…AccessDenied — AWS S3: AccessDenied (403) when calling GetObject / PutObject (AWS)AccessDeniedauth/too-many-requests — Firebase Auth: auth/too-many-requests — Access to this account has been temporarily disabled due to many failed login attempts (Authentication)auth/too-many-requestsBucketAlreadyExists — BucketAlreadyExists: The requested bucket name is not available (AWS)BucketAlreadyExistsconcurrent_requests_limit — API Error: Too many concurrent requests (concurrency limit reached) (API)concurrent_requests_l…NoSuchKey — AWS S3: NoSuchKey / NoSuchBucket — The specified key/bucket does not exist (AWS)NoSuchKeySlowDown

Explore the map of this error Full error map →

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.

💬 What worked for others

No tips yet — did something else fix this for you?

Share what worked for you

Tips are checked by an editor before they appear. Links are removed.