509 Bandwidth Limit Exceeded
HTTP response status code 509 Bandwidth Limit Exceeded is an unofficial server error originating from cPanel's bandwidth enforcement module, indicating the web hosting client exceeded the bandwidth allotment.
Usage
The 509 Bandwidth Limit Exceeded status code means the web hosting client is using a connection or hosting method with limited bandwidth, for example a fixed monthly allotment per the hosting contract, and the total bandwidth has been exceeded.
When this error occurs, an investigation into why more data is being transferred than expected is warranted. The error on the server side is resolved by upgrading the data allotment with the web hosting provider. This error is often temporary until the allotment resets for the next billing period, but no content is accessible to users during this time.
SEO impact
Search engines treat 509 the same as other 5xx server errors. Persistent failures reduce crawl rate and eventually remove affected URLs from the index.
Example
The HTTP client requests a resource using the HEAD method and the server responds with a 509 Bandwidth Limit Exceeded status code.
Request
HEAD / HTTP/1.1
Host: www.example.re
Response
HTTP/1.1 509 Bandwidth Limit Exceeded
Content-Type: text/html; charset=UTF-8
Vary: Accept-Encoding
Connection: close
How to fix
The hosting account exceeded its bandwidth allotment. Restore access immediately, then reduce bandwidth consumption to prevent recurrence.
Immediate fixes:
- Wait for the quota reset. Most hosting plans reset bandwidth monthly on the billing date. The site comes back online automatically.
- Upgrade the hosting plan. Contact the hosting provider or upgrade through cPanel to a plan with higher bandwidth. Some providers allow purchasing additional bandwidth as an add-on without a full plan change.
- Enable a CDN. Serving static assets (images, CSS, JavaScript, fonts) through a content delivery network offloads bandwidth from the origin server. Cloudflare, Fastly, and similar CDNs absorb the bulk of asset traffic.
Reducing bandwidth usage:
- Compress assets. Enable
gzip or Brotli compression
in the web server configuration. In Apache, load
mod_deflateand addAddOutputFilterByType DEFLATEdirectives. In nginx, setgzip on;and list the MIME types. - Optimize images. Convert images to WebP or
AVIF. Resize images to the display dimensions
instead of serving full-resolution originals.
Use responsive images with
srcsetto deliver the correct size per viewport. - Enable hotlink protection. Other sites
embedding images or files hosted on the account
drain bandwidth. In cPanel, enable hotlink
protection. In Apache
.htaccess, addRewriteCond %{HTTP_REFERER}rules to block unauthorized referrers. - Lazy-load non-critical resources. Defer
loading of below-the-fold images and videos
with the
loading="lazy"attribute.
Diagnosing unexpected bandwidth usage:
- Check access logs (
/var/log/apache2/access.logor equivalent) for traffic patterns. Sort by request count and bytes transferred to identify the largest consumers. - Look for bot traffic or scraping causing
excessive downloads. Block abusive user agents
or IP ranges in the server configuration or
.htaccess.
Code references
Rails
:bandwidth_limit_exceeded
Unverified symbol
The :bandwidth_limit_exceeded symbol is not
part of the standard
Rack::Utils::SYMBOL_TO_STATUS_CODE mapping.
Some third-party gems register this symbol,
but the symbol is not available in a default
Rails installation.
Takeaway
The 509 Bandwidth Limit Exceeded status code is an unofficial server error indicating the server reached the bandwidth allowance and the HTTP request was not processed.
See also
- Google: HTTP status codes and network errors
- 508 Loop Detected
- 503 Service Unavailable
- 500 Internal Server Error
- HTTP status codes