529
HTTPERRORNotable5xx Server Error (Unofficial)MEDIUM confidence

Site Is Overloaded

Production Risk

Medium — indicates the service is temporarily unavailable due to load. Use retry with backoff.

What this means

529 Site Is Overloaded is used by Qualys and Shopify to indicate that the server cannot handle the request because it is currently overloaded. It signals that the client should retry after a backoff period.

Why it happens
  1. 1The server is receiving more requests than it can process at the current time.
  2. 2A traffic spike (flash sale, viral content, DDoS) has overwhelmed the server's capacity.
  3. 3Insufficient server resources for the current load.
How to reproduce

A Shopify store launches a flash sale and receives 10× normal traffic, exceeding server capacity.

trigger — this will error
trigger — this will error
GET /products/sale-item HTTP/1.1
Host: mystore.myshopify.com
# During peak traffic surge

expected output

HTTP/1.1 529 Site Is Overloaded

Fix

Implement exponential backoff and retry

WHEN Programmatically accessing an API that returns 529.

Implement exponential backoff and retry
async function fetchWithRetry(url, retries = 3) {
  for (let i = 0; i < retries; i++) {
    const res = await fetch(url);
    if (res.status !== 529) return res;
    await new Promise(r => setTimeout(r, Math.pow(2, i) * 1000));
  }
}

Why this works

Retries with increasing delays, reducing load on the overloaded server.

What not to do

Do not immediately retry 529 responses in a tight loop

Tight retry loops make overload worse. Always back off.

Version notes
Qualys/Shopify

Not a standard IETF code. Use 503 Service Unavailable with Retry-After in your own APIs.

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All HTTP errors