Skip to content
Web & Dev Tools 6 min read Updated

Chrome, Edge and Firefox Error Messages: What Each One Means

Every common browser error (DNS, connection, SSL, server) in tables: the Chrome/Edge and Firefox code, what it means and which guide fixes it.

On this page

First: is it just you, or everyone?

Before looking up the code, run the most useful check: open the site from another network, for example your phone's mobile data instead of Wi-Fi, or put the address into the Uptime Checker, which requests it from our server, outside your own network.

  • Opens from elsewhere? The problem is your own connection or device (clock, antivirus, VPN, DNS settings), or the server has blocked your IP address.
  • Doesn't open anywhere? The problem is the site itself, and the owner or the hosting provider has to fix it.

The Uptime Checker shows whether the site answers from outside, the HTTP status code, the response time and, if it fails, the connection error message:

→ Uptime Checker → Domain Health Check

Where to find the error code

  • Chrome and Edge: the code is printed in capitals under the message, e.g. NET::ERR_CERT_DATE_INVALID. Edge is built on the same Chromium engine as Chrome, so it shows the same codes. On certificate errors the "Advanced" button reveals more detail.
  • Firefox: on certificate errors click "Advanced…" to see the code (e.g. SEC_ERROR_UNKNOWN_ISSUER). On connection errors Firefox usually shows no code: you recognise the error from the page title, e.g. "Unable to connect".
  • Safari: shows no code. Go by the message, e.g. "This Connection Is Not Private" for a certificate problem or "Safari Can't Find the Server" for a DNS problem.

The four loading steps, and where it got stuck

When you type an address, the browser takes four steps in order, a bit like visiting a shop: you find the address, reach the door, show ID, then ask for what you want. The error code tells you which step failed.

  1. Finding the address (DNS). The browser asks "which IP address does company.com have?". If there is no answer you see errors such as DNS_PROBE_FINISHED_NXDOMAIN or ERR_NAME_NOT_RESOLVED. Check it with the DNS Checker.
  2. Connecting to the server. It knocks on the server's "door" (port 80 for http, 443 for https). If the door is shut or nobody answers you see ERR_CONNECTION_REFUSED, ERR_CONNECTION_TIMED_OUT or ERR_CONNECTION_RESET. Check it with the Uptime Checker.
  3. Secure connection (SSL/TLS). It checks the site's certificate and agrees on encryption. All NET::ERR_CERT_… and ERR_SSL_… errors belong here. Check it with the SSL Checker.
  4. Getting the page (HTTP). The server sends the page or an error: redirect loops, 500/502/503/504, Cloudflare error pages. Check it with the Redirect Checker, the Uptime Checker and the Security Headers Checker.

The earlier the step that fails, the more basic the problem: a DNS error means the browser never even reached the server, so there is no point looking at the certificate or the page yet.

DNS errors: the browser can't find the address

Chrome / EdgeFirefoxWhat it meansGuide
DNS_PROBE_FINISHED_NXDOMAIN"Hmm. We're having trouble finding that site."DNS says the domain does not exist: it expired, was mistyped or has the wrong nameservers.DNS_PROBE_FINISHED_NXDOMAIN
ERR_NAME_NOT_RESOLVED"Hmm. We're having trouble finding that site."The DNS lookup failed: a subdomain without a record, nameservers that don't answer, broken DNSSEC.ERR_NAME_NOT_RESOLVED
DNS_PROBE_FINISHED_NO_INTERNET, DNS_PROBE_FINISHED_BAD_CONFIG"Looks like there's a problem with your internet connection." or "Hmm. We're having trouble finding that site."The problem is your own connection or the DNS settings of your device or router.Change DNS on Windows, on phone and router

Connection errors: the server doesn't answer

Chrome / EdgeFirefoxWhat it meansGuide
ERR_CONNECTION_REFUSED"Unable to connect"The server refused the connection: no web server on that port, or a firewall rejects your IP.ERR_CONNECTION_REFUSED
ERR_CONNECTION_TIMED_OUT, ERR_ADDRESS_UNREACHABLE"The connection has timed out"No answer at all: server down, a firewall silently dropping traffic, or a wrong IP in DNS.ERR_CONNECTION_TIMED_OUT
ERR_CONNECTION_RESET, ERR_CONNECTION_CLOSED, ERR_EMPTY_RESPONSE"The connection was reset", "The connection was interrupted"The connection started but was cut off midway: antivirus, VPN, the server's firewall or a crashing application.ERR_CONNECTION_RESET

Certificate and SSL errors

Chrome / EdgeFirefoxWhat it meansGuide
NET::ERR_CERT_COMMON_NAME_INVALIDSSL_ERROR_BAD_CERT_DOMAINThe certificate was issued for a different name, usually www instead of non-www or the reverse.ERR_CERT_COMMON_NAME_INVALID
NET::ERR_CERT_AUTHORITY_INVALIDSEC_ERROR_UNKNOWN_ISSUER, MOZILLA_PKIX_ERROR_SELF_SIGNED_CERTThe browser doesn't trust the issuer: a self-signed certificate, an incomplete chain or antivirus interfering.ERR_CERT_AUTHORITY_INVALID
NET::ERR_CERT_DATE_INVALIDSEC_ERROR_EXPIRED_CERTIFICATEThe certificate has expired, or your device's clock shows the wrong date.ERR_CERT_DATE_INVALID
"…because the website uses HSTS" (together with a NET::ERR_CERT_… code)"Did Not Connect: Potential Security Issue"A certificate error on a site that uses HSTS, which is why there is no "proceed" option.HSTS message
ERR_SSL_PROTOCOL_ERRORSSL_ERROR_RX_RECORD_TOO_LONGThe server doesn't speak proper HTTPS on port 443, often because SSL was never set up.ERR_SSL_PROTOCOL_ERROR, SSL_ERROR_RX_RECORD_TOO_LONG
ERR_SSL_VERSION_OR_CIPHER_MISMATCHSSL_ERROR_NO_CYPHER_OVERLAP, SSL_ERROR_UNSUPPORTED_VERSIONBrowser and server can't agree on encryption: the server only offers old TLS, or has no certificate for that name.ERR_SSL_VERSION_OR_CIPHER_MISMATCH
"Not secure" in the address barCrossed-out padlockThe page loads over http, without encryption."Not secure"
Padlock missing on an https pagePadlock with a warningMixed content: some images or scripts still load over http.Mixed content

For any certificate error, the SSL Checker shows which names the certificate covers, when it expires, whether the chain is complete and which TLS versions the server accepts:

→ SSL Checker → Security Headers Checker

Page and server errors

Chrome / EdgeFirefoxWhat it meansGuide
ERR_TOO_MANY_REDIRECTS"The page isn't redirecting properly"The site sends the browser round in a redirect loop, often http↔https or www↔non-www.ERR_TOO_MANY_REDIRECTS
"HTTP ERROR 500", 502, 503, 504The server's own error pageThe server answered, but with an error: a plugin, memory, overload or a problem between a proxy and the application.500–504 errors
ERR_HTTP2_PROTOCOL_ERROR, ERR_QUIC_PROTOCOL_ERRORUsually a half-loaded page or "The connection was interrupted"The server's response was cut off or corrupted mid-transfer over HTTP/2 or HTTP/3.ERR_HTTP2_PROTOCOL_ERROR
Cloudflare "Error 520–526", "Error 1016"Same page in every browserCloudflare is up, but it can't talk properly to your own server.Cloudflare 521, 522, 525, 526

More: my website won't open and I still see the old site after migrating.

Common mistakes

  • Clicking "Proceed to the site (unsafe)" on a page where you will type a password or card details.
  • Testing only from your own computer: always also try another network or the Uptime Checker.
  • Clearing the browser cache when the problem is the site's certificate or DNS: the cache doesn't help there.
  • Switching antivirus off for good instead of turning off only its HTTPS scanning when that is the cause.

FAQ

Why do Chrome and Firefox show different codes for the same problem?
Each browser uses its own names. For example, a certificate for the wrong name is NET::ERR_CERT_COMMON_NAME_INVALID in Chrome and Edge and SSL_ERROR_BAD_CERT_DOMAIN in Firefox. The tables on this page map the codes to each other.
Is it dangerous to click "proceed" on a certificate error?
The browser cannot confirm it is talking to the right site. It is usually a configuration slip, but you can't know that: don't enter passwords or card details until it is fixed.
How do I know whether my computer or the site is to blame?
Open the site from another network (e.g. mobile data) or check it with the Uptime Checker, which requests it from outside. If it opens from elsewhere, the problem is your own connection or device.

Try it now

Related guides

Report a bug