Geonode logo
Network errors

How to Fix ERR_CONNECTION_TIMED_OUT in Chrome

Two checks any visitor can run, three ranked fixes, and how to tell this code from ERR_TIMED_OUT.

Updated

TL;DR

ERR_CONNECTION_TIMED_OUT is Chrome reporting that its request to open a connection got no reply before the operating system stopped waiting. If other sites also fail, fix your own connection first; if only this one does, wait or tell its owner.

How Chrome and its tools show a connection timeout

Recorded in Chrome against a port that drops connections; the summary names your own host.

WhereWhat you see
Chrome, public siteThis site can't be reached. www.example.com took too long to respond. ERR_CONNECTION_TIMED_OUT
Chrome, local dev serverThis site can't be reached. localhost took too long to respond. ERR_CONNECTION_TIMED_OUT
Chrome console, failed image or fetch()Failed to load resource: net::ERR_CONNECTION_TIMED_OUT
fetch() in the page's JavaScriptTypeError: Failed to fetch
Puppeteer page.goto()net::ERR_CONNECTION_TIMED_OUT at https://example.com/
Playwright page.goto()page.goto: net::ERR_CONNECTION_TIMED_OUT at https://example.com/

Why this happens

Nothing on the other end answered Chrome, not even with a no.

Your computer sent its opening connection packet several times and heard nothing back: a firewall discarded it, the server was too busy to accept it, or the network lost it.

Diagnose your ERR_CONNECTION_TIMED_OUT first

The first two need only a browser and another device; the rest are for developers and site owners.

  • Open the address on another device on the same Wi-Fi; if it loads there, the cause is on this computer, not the network or site.

  • Open two other sites in new tabs; if they also time out, your connection or a pending Wi-Fi sign-in is at fault.

  • From a phone, open your dev server by the computer's LAN IP; a timeout means a firewall drops it, a refusal means localhost-only binding.

  • Run curl -v with the URL; timed out after the Trying line, instead of Connected to, means nothing at that IP and port answered.

  • If you run the site, request it from the server itself; an answer there while visitors time out means a firewall drops outside traffic.

Solutions ranked by effectiveness

Most visitors need the first card; the second covers one silent site, the third phones testing your dev server.

  1. Most common fix

    Fix your connection, Wi-Fi sign-in or firewall

    Applies when other sites also time out, or only this computer fails. Your network or this computer's security software is stopping the replies.

    1. On public Wi-Fi, such as a cafe's, finish the network's sign-in page, then reload.

    2. Check the cables, then reboot your router and modem, as Chrome's Details panel advises.

    3. Allow Chrome in your firewall or antivirus; if listed already, remove and re-add it.

  2. Check next

    Wait for, or report, a silent site

    Applies when every other site loads fine. Its server is down or overloaded, or a firewall there drops your address; only its owner can change that.

    1. Keep the tab in view; Chrome retries it after 1, 5 and 30 seconds.

    2. Look up your public IP on a What is my IP page.

    3. Email that IP and the time of the error to the site's support.

  3. For developers

    Let other devices reach your dev server

    Applies after the third check times out. Windows blocks incoming connections unless a rule allows the program.

    1. On Windows, add Node.js or your server under Allow an app through firewall.

    2. If you once cancelled Windows' firewall prompt for it, delete the block rules it created.

    3. Check that Windows marks your home Wi-Fi as a Private network, not Public.

    4. On macOS, add the app in Firewall > Options; switch off Block all incoming connections.

Stop the ERR_CONNECTION_TIMED_OUT from coming back

For site owners: settings that keep real visitors from meeting silence.

  1. On busy servers, raise nginx's listen backlog (default 511 on Linux) and net.core.somaxconn; a full queue ignores new connection requests.

  2. Refuse unwanted visitors with a 403 page, not a silent firewall drop, so anyone blocked by mistake learns why.

  3. Log the packets your firewall drops, so a visitor's IP and error time lead you to the rule.

Match a visitor's internet providerISP targeting loads your own site from an IP on that provider's network.
Try residential proxies

Related errors

Learn more

FAQ

Nothing replied to Chrome's connection request in time, so no page was ever requested. The silence came from the server or something on the way to it, never from the page's content.

Both show the same error page. ERR_CONNECTION_TIMED_OUT means the system gave up opening the connection; ERR_TIMED_OUT means a later step stalled or a Chrome limit ran out, such as 30 seconds for a secure handshake or four minutes to connect.

Sometimes. A site's firewall may silently drop traffic from addresses it has blocked, which looks exactly like an outage. Only the site's owner can lift that block, so ask them instead of working around it.

Not for sites it carries: an unreachable proxy shows ERR_PROXY_CONNECTION_FAILED. With a proxy set, this code comes from hosts Chrome contacts directly, such as bypass-list entries and localhost.

Check the firewall in front of the server first: a cloud security group without rules for ports 80 and 443 drops every visitor. Open both to 0.0.0.0/0 and, for IPv6, ::/0.

Chrome, driven by Puppeteer, got no reply when connecting to that URL, and page.goto() passes the error on. If the system waits past the 30-second navigation default, TimeoutError: Navigation timeout of 30000 ms exceeded comes first.

Test as an outside visitor

Residential proxies load your own pages through real residential IPs outside your network.