Proxies

How to check if a proxy is working: IP, location, speed and blocklists

A proxy that connects isn't necessarily a proxy that works. Check four things: that it connects with a different exit IP, that the IP is where you expect, that it is fast enough, and that the address isn't on a blocklist. Then check it inside the browser. Here is how, by hand and in SoftGlaze.

To check if a proxy is working, test four things in this order: that it connects and the exit IP is different from your own, that the exit IP is in the country or city you paid for, that it responds fast enough to use, and that the address isn't listed on a public blocklist. A proxy can pass the first test and fail the other three. Once it passes, check it once more inside the browser, where WebRTC and the timezone can still give your real location away.

Step 1: does it connect, and with which IP?

The quickest test needs nothing but curl in a terminal. Ask an IP lookup service for your address, once through the proxy:

curl -x "http://USERNAME:PASSWORD@HOST:PORT" https://ipinfo.io/json
curl -x "socks5h://USERNAME:PASSWORD@HOST:PORT" https://ipinfo.io/json

Use the first line for an HTTP proxy and the second for SOCKS5. The h in socks5h tells curl to let the proxy look up the site's name, which is how a browser uses SOCKS5 too. The curl manual lists the other proxy options.

If it works, you get back a short block of JSON describing the proxy's exit address, not yours. If it fails, the error usually says why: a timeout means nothing answered, "connection refused" means the port is wrong or closed, and a 407 response means the username or password was rejected.

Step 2: is the IP where it should be?

Read the lookup result rather than just noticing that it changed:

  • ip: the address sites will see.
  • country, region and city: where IP databases place that address. Different databases can disagree by a city or two; a different country is a real problem.
  • org: the network that owns the address. A hosting company's name means a datacenter address, a consumer internet provider means residential or ISP. Residential vs datacenter proxies explains why that matters.
  • timezone: what a profile using this proxy should report as its timezone.

Step 3: is it fast enough?

Latency is the time for a request to go out and come back through the proxy. Run the same request a few times, because one slow answer may be a fluke, and test from the computer the profiles will actually run on. SoftGlaze's own speed ratings are a reasonable guide: under 500 ms is fast, under 1,500 ms is good, under 3,000 ms is OK, and anything slower is slow. Pages through a slow proxy load sluggishly and are more likely to time out.

Step 4: is the address on a blocklist?

DNS blocklists, also called DNSBLs, are public lists of addresses seen sending spam or abuse. They are run by groups such as Spamhaus, SpamCop and Barracuda. You check an address by reversing its four numbers and looking that name up under the list's zone: a reply in the 127.0.0.x range means it is listed, no answer means it isn't.

A listing is a warning, not a verdict. These lists are mainly used for email, and plenty of sites never consult them. But an address on one usually has a history, and that history can follow you into a sign-up form or a payment check.

How SoftGlaze Browser checks a proxy

In SoftGlaze, Check on a proxy's row, or Test All for the whole pool, runs these steps for you. Each check:

  1. Connects through the proxy to ipinfo.io and reads the exit IP and its location.
  2. Probes two more endpoints through it, Google's generate_204 page and Cloudflare's trace page, timing each one.
  3. Looks the exit address up on three DNS blocklists: Spamhaus, SpamCop and Barracuda. Versions up to 1.0.21 also asked SORBS, which was shut down in June 2024; 1.0.22 dropped it.
  4. Turns the results into a score and a grade from A to F.
Proxy health check log in the SoftGlaze demo: 39 of 39 proxies checked, 36 healthy and 3 failed, each line showing country, city, latency, 3 of 3 sites reached and a grade such as A Excellent, with one proxy marked blacklisted on Spamhaus.
A Test All run over a whole pool, with country, latency, grade and blocklist result per proxy. Shown in the interactive demo with sample data.

The score starts from the share of the three endpoints the proxy reached. It loses 8 points if the average response is over 800 ms, 18 if it is over 1,500 ms and 30 if it is over 3,000 ms, and 12 points for each blocklist that lists it, up to 30. A score of 90 or more is an A, 80 a B, 65 a C and 45 a D; below that is an F. A proxy that can't reach the lookup service at all is graded F, Dead.

Diagram of how SoftGlaze grades a proxy: three probes give a base score from the share reached, minus 8, 18 or 30 points for average latency over 800, 1,500 or 3,000 ms, minus 12 per blocklist listing up to 30, then A at 90, B at 80, C at 65, D at 45, otherwise F.
How the A to F grade is worked out, from the app's source.

The pool's filters use the same measurements. "Fast" means 2 seconds or less, and you can filter for proxies flagged on a blocklist. A proxy that fails keeps its row, so you can test it again later instead of losing it.

Keep checking after day one

Proxies change. Residential addresses go offline, a datacenter range gets listed, a provider has a bad night. In SoftGlaze, Auto-check every N minutes re-tests the pool on a schedule while the app is open, and Health history charts each proxy's latency over time, including the ones that were verified before and failed later. Failover to healthy then skips proxies whose last check failed when a profile launches, which sticky vs rotating proxies explains.

The checks that need a browser

A proxy that passes all four steps can still be undone by the browser using it:

  • WebRTC can reveal your real IP to a page even though the page loads through the proxy. See WebRTC leaks.
  • Timezone and language that don't match the exit IP contradict the address. SoftGlaze sets both from the proxy's location at launch unless you turn geo auto-match off.

The proxy docs list every result a check returns. Run Leak Check on the profile after you assign the proxy. It tests the proxy and the profile's settings together and scores them out of 100. The proxy pool page shows where all of this lives in the app.

Questions people ask

Why does a proxy pass one checker and fail another?

They test different things from different places. One may only open a connection, another may load a page through it, and a busy proxy can simply time out once. Test more than once before you give up on it.

What does ETIMEDOUT mean?

Nothing answered in time. The proxy may be offline, the host or port may be wrong, or your network may block that port.

Should I delete a blocklisted proxy?

Not automatically. Note which list it is on and how the sites you use react. For anything involving sign-ups or payments, a clean address is the safer choice.

Does SoftGlaze include proxies?

No. You add your own, by pasting a list or by connecting one of the 36 supported provider accounts, and the app checks them.

Run Test All on a sample pool in the interactive demo and see the grades. No download.

  • Guides

    Antidetect browser vs VPN vs proxy: what each one actually changes

    A VPN changes the IP address of your whole device. A proxy changes it for one app or one browser profile. An antidetect browser separates cookies and device values per profile, and gives each profile its own proxy. They solve different problems; here is which one you need, and when to combine them.

  • Automation

    MCP browser automation: how AI agents can drive real browser profiles

    MCP lets an AI app like Claude, Cursor or VS Code call tools, and a browser MCP server turns those tools into clicks, typing and page reads. Here is how browser MCP works, the three kinds of browser it can drive, the risks to plan for, and how SoftGlaze AI, a Beta since version 1.0.22, keeps each profile's proxy and puts every change behind your approval.

  • Teams

    How to share account access with your team without sharing the password

    Sending a password and a 2FA code over chat is the worst way to share an account. Here are the three better options, in the order to try them, what each one protects, and how SoftGlaze lets a teammate use a signed-in profile without ever seeing its password, proxy login or 2FA secret.

See the product the notes are about