Cloudflare error codes list: every 52x and 1xxx error explained

Cloudflare shows two families of errors. The 52x ones mean Cloudflare reached for your server and something went wrong there. The 1xxx ones mean the request was stopped or misrouted inside Cloudflare itself. Knowing which family you are in saves most of the debugging.

The two families

FamilyWho is brokenWhere to look first
520–526Your origin server, or the path from Cloudflare to itIs the server up? Does curl on the server itself work? Origin firewall, TLS certificate, slow requests
530 + 1xxxA Cloudflare setting, DNS record, Tunnel or WorkerThe 1xxx number on the page, then DNS, Security Events, Tunnel status or Workers logs

52x errors (origin side)

CodeNameWhat it meansFirst check
520Web server is returning an unknown errorThe origin replied with something empty, invalid or resetOrigin error logs, crashes, huge headers
521Web server is downThe origin refused the TCP connectionIs the web server running? Does the firewall allow Cloudflare IPs?
522Connection timed outThe TCP handshake to the origin never finishedFirewall dropping packets, wrong origin IP, overloaded server
523Origin is unreachableCloudflare could not route to the origin at allOrigin IP in DNS is wrong or the network is down
524A timeout occurredConnected, but no HTTP response within about 100 secondsSlow request; move long jobs to a queue or stream progress
525SSL handshake failedTLS between Cloudflare and origin failedOrigin listens on 443 with a certificate, SNI and ciphers OK
526Invalid SSL certificateFull (strict) mode and the origin certificate is expired, self-signed or for another nameRenew or install an Origin CA certificate

1xxx errors (Cloudflare side)

CodeNameWhat it meansFirst check
1000DNS points to prohibited IPAn A record points at a Cloudflare IP, causing a loopPoint the record at your real origin IP
1001DNS resolution errorThe hostname is not set up on Cloudflare, or a CNAME target is missingDNS record exists and is proxied; target domain is active
1003Direct IP access not allowedSomeone browsed to a Cloudflare IP address instead of a hostnameUse the domain name
1006, 1007, 1008Access deniedThe site owner banned your IP addressOwner: IP Access rules
1009Country or region bannedThe owner blocks the country your IP maps toTry another network or VPN exit; owner: country rules
1010Browser signature bannedA bot or browser-integrity rule rejected the clientSend a normal User-Agent; owner: Browser Integrity Check
1015You are being rate limitedA rate limiting rule fired (sent as HTTP 429)Slow down; owner: rate limiting rule threshold
1016Origin DNS errorCloudflare could not resolve the origin hostnameCNAME target or origin hostname resolves publicly
1020Access deniedA WAF or custom firewall rule blocked the requestRay ID in Security Events
1033Cloudflare Tunnel errorThe hostname points to a tunnel with no connected connectorIs cloudflared running and connected?
1101Worker threw exceptionA Worker script crashed with an uncaught errorwrangler tail or Workers Logs
1102Worker exceeded resource limitsA Worker ran out of CPU time or memoryProfile the Worker; check plan limits

The Ray ID is your best clue

Every Cloudflare error page shows a Ray ID and the data centre that served it. The site owner can paste that Ray ID into Security Events (for 1xxx blocks) or match its timestamp in origin logs (for 52x errors). You can also get it without a browser:

curl -sI https://www.example.com/ | tr -d '\r' | grep -iE '^(HTTP|cf-ray|server)'
# HTTP/2 522
# server: cloudflare
# cf-ray: 8f1c2d3e4a5b6c7d-LHR

Is it me or the site?

To check what an ordinary HTTP status code means in plain words, use the Anvil HTTP status API, which also knows the Cloudflare 52x codes.

Related

502 Bad Gateway · 504 Gateway Timeout · 503 Service Unavailable · 429 Too Many Requests · DNS_PROBE_FINISHED_NXDOMAIN · ERR_CONNECTION_RESET · Wirebook status-code lesson

Questions

What is the difference between Cloudflare 52x and 1xxx errors?

52x errors (520–526) mean Cloudflare could not get a good answer from your origin server. 1xxx errors mean the request was stopped or misrouted by a Cloudflare setting, DNS record, firewall rule, Tunnel or Worker.

What is Cloudflare error 530?

530 is the HTTP status Cloudflare uses when it shows a 1xxx error page. Look for the 1xxx number on the page (for example 1016 or 1033) to find the real cause.

Is a Cloudflare error my fault as a visitor?

For 52x errors, no: the site’s server is broken. For 1006–1010, 1015 and 1020 a rule matched your request, so a different network, no VPN, or waiting can help.

Where do I find the Ray ID?

At the bottom of every Cloudflare error page, and in the cf-ray response header. Site owners search it in Security Events.

Why does Cloudflare say the host is working but the site is not?

The error page shows three boxes: you, Cloudflare, the host. A red host box means a 52x origin problem; Cloudflare itself is fine.

Published · updated .

Try it

Related guides

Newest guides