Check whether your SOCKS5 proxies work
Paste one SOCKS5 proxy per line. Our server connects to this site through each one and shows whether it works, the IP and country it presents, and how fast it responds.
Valid proxies recognized: 0
Testing HTTP proxies? Use the batch HTTP proxy checker.
Supported formats: host:port, host:port:username:password and username:password@host:port. Start a line with http:// or socks5:// to choose its protocol (without a prefix the page's protocol is used, and https:// is treated as an HTTP proxy). The host can be IPv4, IPv6 (written as [::1]:8080) or a domain.
Up to 20 proxies per run and 4 runs per minute. The limits are tight on purpose, because our server is connecting to proxies on your behalf. Only public addresses are checked, and ports of common services (such as 22, 25 and 3306) are refused. Your proxy addresses and credentials are used only for this test and are never saved or logged.
How this check works
How the detected IP is measured
Our server connects to your SOCKS5 proxy, negotiates authentication (none, or username and password as in RFC 1929) and sends a CONNECT request for this site, with the target written as a domain so the proxy resolves it. Through that tunnel it requests an endpoint on this site over HTTPS and reads the address the endpoint saw. That is the IP your proxy presents.
A failure doesn't always mean a broken proxy
The test runs from our server, not from your network. A proxy that only allows certain source IPs, uses a different authentication method, can't be reached from our network, or listens on a port we block will show as failed. The Reason column names the category, and if you are unsure, test again from your own network to compare.
We don't store your proxies
The proxy address, username and password are used only for this one request: they are not saved, logged or cached, and the results never send the password back. The exported CSV contains only host:port. The Copy working proxies button builds its text in your browser from the lines you typed, without going through our server.
Why 20 proxies per run
This tool makes our server connect to any proxy address you give it, so the limits are tight: 20 proxies per run, 4 runs per minute, 5 tested at the same time, up to 10 seconds each, and public addresses only. That keeps it from being abused as a scanner and lets 20 proxies finish within about a minute. For more, paste them in batches.
How to use it
- Paste one SOCKS5 proxy per line, up to 20. Supported formats are host:port, host:port:username:password and username:password@host:port, optionally with a socks5:// prefix. The host can be IPv4, IPv6 (written as [2001:db8::1]:1080) or a domain.
- Check the counters under the box: how many lines were recognized, how many were unrecognized (and ignored) and how many duplicates were removed. If you have more than 20, split them into batches. If some lines are HTTP proxies, start those lines with http://.
- Click Start test. The server tests 5 proxies at a time and waits up to 10 seconds for each, so 20 proxies usually finish within a minute.
- Read the results table: status, detected IP, country, ISP, HTTP status and response time, plus a reason for each failure. For a failed row, start with the reason to tell a bad proxy apart from an authentication or source-IP restriction.
- Click Export CSV to save the table (without credentials), or Copy working proxies to copy the working lines exactly as you typed them. Click Clear to start over. You can run 4 tests per minute.
Every column and option explained
Each column of the results table, plus how the input box works and what limits apply.
- Proxy list (input)
- One proxy per line, up to 20. A line can be up to 300 characters and the whole box up to 30,000. Identical lines are removed automatically, and lines in an unknown format are ignored and counted.
- Protocol
- This page tests SOCKS5 by default. A line that starts with http:// or https:// is tested as an HTTP proxy (the CONNECT method) and the Protocol column says so, so a mixed list can be checked in one run. socks5h:// is accepted too and behaves the same, because the proxy resolves the target domain anyway.
- Authentication
- Without credentials only no-authentication is offered. With credentials, username and password (RFC 1929) is offered as well, and the proxy picks. The username and password can each be up to 255 bytes, which is the SOCKS5 protocol limit.
- Status
- Working means a normal response from our endpoint came back through the proxy (HTTP 200 with a valid IP). Everything else is Failed, and the last column says why. Only TCP CONNECT is tested, not UDP.
- Detected IP
- The address our endpoint saw, which is the IP the proxy presents. It can differ from the proxy address you entered and may be IPv6.
- Country
- Estimated from the detected IP's registration data, shown in the page language with a flag. A data-center IP may show where it is registered. It shows a dash when the lookup found nothing or the lookup allowance ran out.
- ISP / organization
- The carrier or organization that owns the detected IP, with its ASN in small text below. It comes from an IP database; on the free data tier it may be only the AS name. At most the first 20 distinct detected IPs are looked up per run.
- HTTP status
- On success it is the 200 returned by our endpoint through the proxy. On failure it appears only if the target actually returned a status code. It is a dash when the proxy could not be reached or rejected the SOCKS5 handshake, because SOCKS5 error codes are not HTTP status codes.
- Response time
- The total time in milliseconds from starting the connection to the proxy until our endpoint's response was fully read. It includes the SOCKS5 handshake, the TLS handshake and the request, but not the time to resolve the proxy's own domain. Each proxy has a 10-second limit.
- Reason
- Unrecognized format, not a public address or a blocked port, proxy domain could not be resolved, timed out connecting, connection refused, authentication rejected (wrong credentials, an unsupported method or a rule that forbids it), unexpected reply from the proxy, HTTPS through the proxy failed, or the check timed out.
- Summary, filter and export
- Counts of tested, working and failed proxies appear above the table. When there are both working and failed rows you can filter by status. Export CSV includes every column (never credentials) and Copy working proxies copies the working lines you typed.
SOCKS5 proxy checker FAQ
How does this tool check a SOCKS5 proxy?
Our server connects to the SOCKS5 proxy you entered, negotiates authentication and sends a CONNECT request so the proxy opens a tunnel to port 443 on this site (the target is a domain, resolved by the proxy). Through that tunnel it requests /api/tools/my-ip over HTTPS and verifies the certificate. The IP returned is the detected IP, and the time for the whole exchange is the response time.
Do you store my proxies, usernames or passwords?
No. The proxy address, username and password are used only for this test. They aren't stored, logged or cached, and the results never send the password back. The exported CSV contains only host:port, without credentials.
My proxy works elsewhere. Why does it fail here?
There are four common reasons: the proxy only allows whitelisted source IPs and the connection comes from our server; the authentication method or credentials don't match; our server can't reach the proxy over the network; or the proxy port is one of the common service ports we block. A failure only means this check didn't get through from here. Testing from your own network helps you compare.
Which input formats work?
One proxy per line: host:port, host:port:username:password or username:password@host:port, with or without a socks5:// prefix. The host can be an IPv4 address, an IPv6 address (written as [2001:db8::1]:1080) or a domain. Passwords may contain colons and @. A line that starts with http:// is tested as an HTTP proxy.
How many proxies can I test, and why the limits?
Up to 20 per run, 4 runs per minute for each visitor, 5 tested at the same time, up to 10 seconds each, public addresses only, and common service ports such as 22, 25 and 3306 are refused. The limits keep a tool that connects to arbitrary addresses on your behalf from being abused, and keep results arriving within a minute. For more proxies, test in batches.
What is the difference between SOCKS5 and HTTP proxies? Is UDP tested?
An HTTP proxy forwards TCP connections with the CONNECT method, while SOCKS5 works at a lower level and can forward UDP as well. This page tests only the TCP CONNECT path, which shows that HTTPS sites can be reached through the proxy. It does not test UDP (UDP ASSOCIATE), so check separately if you need it for games or voice.
More free tools
Need an IP in a specific country?
AnboVPN offers dedicated IPs in many regions, and shared IPs billed by data. Compare the options and pick the location you need.