Error guide / HTTP 429 Too Many Requests
429 Too Many Requests error
429 Too Many Requests means the server deliberately rejected your request because too many came from your address in a short time. In plain terms, the site is alive and working, but it is telling you to slow down. It is not a crash but an intentional limit that guards against overload, bots, and abuse. The response often carries a Retry-After header that says how long to wait before trying again.
Check your site
What causes it
Most often a rate limit on the server kicks in: aggressive limits, a bot or scraper hammering the site, or a plugin that keeps calling an API in a loop. Sometimes a WAF or CDN does the throttling (Cloudflare, LiteSpeed, ModSecurity). On the visitor's side the culprit is usually a VPN or a shared IP that sends too much traffic to the site.
How to fix it
- Wait and stop hitting refresh: every reload is another request that only extends the block. If the response includes a Retry-After header, it tells you how many seconds to wait before trying again.
- Turn off any VPN or proxy: when many people share one exit IP, the limit is reached fast and the server throttles everyone at once. Try a normal connection or mobile data instead.
- If your own site returns the 429, find the culprit in the logs: open Raw Access or Errors in cPanel and look for an IP or path with hundreds of requests (often /xmlrpc.php, /wp-login.php, or /wp-json/).
- On WordPress the usual cause is a plugin or wp-cron looping over admin-ajax.php or the REST API. Disable suspect plugins one by one and check whether the 429 goes away.
- Tune the limits sensibly: in LiteSpeed, mod_evasive, or ModSecurity raise the threshold for real visitors while keeping bot protection; on CloudLinux check the LVE limits (entry processes, concurrent connections) in cPanel, and in Cloudflare review the rate limiting rules.
- Confirm the site now answers consistently rather than intermittently: run it through the availability checker below a few times in a row.