Stop Downloading Dead Proxies — Build the Filter That Only Keeps Working Ones

Everyone asks for a bigger proxy list. Wrong move. A scraped free list is ~90% dead on arrival — and “alive” isn’t even the real test. The list is disposable; the FILTER is the asset. A proxy-checking bot is the machine that eats a garbage dump of IPs and hands you back a small pool that actually works. Here’s the whole toolbox to run one (or build your own) — free, self-hosted, no seller.

:chequered_flag: Start in 60 seconds — pick your lane:

:globe_with_meridians: No installApify Proxy Checker: paste your list in the browser, every proxy comes back graded on all 6 axes (alive · speed · country · protocol · elite/transparent).
:package: One binarymonosans/proxy-scraper-checker: closest thing to the whole filter in a single Rust binary — it even scrapes 100+ sources for you. Edit a config, run, get sorted lists.
:computer_mouse: Click-GUIfaiqsohail/ProxyChecker: download the .exe/.jar, import a list, hit go. Never open a terminal.

Everything below is just what those tools are actually testing — and the deeper gear once you outgrow the three above.

━━━━━━━━━━━━━━━━━━━━━━━

“Working” is 6 questions, not 1

  1. Alive — accepts a connection at all (most die right here).
  2. Speed — a 12-second proxy is dead for real work.
  3. Anonymity:warning: the one everyone misses: a transparent proxy still leaks your real IP in the headers. Only elite hides that a proxy is even in play. A “working” transparent proxy burns you.
  4. Protocol — HTTP / HTTPS / SOCKS4 / SOCKS5 (a checker that only pings HTTP labels good SOCKS “dead”).
  5. Geo / type — country + datacenter-vs-residential (tons of sites hard-ban datacenter ranges).
  6. Your target — the only test that truly counts: does it reach the site you actually want — not just google.

━━━━━━━━━━━━━━━━━━━━━━━

🖱️ Click-and-run — GUIs, zero terminal

├─ :wrench: faiqsohail/ProxyChecker.exe/.dmg/.jar; multithreaded HTTP/SOCKS check + anonymity + country, CSV export. (Java 8+)
├─ :wrench: unfx-proxy-checker — Electron GUI around a real rotating-judge system; sort/filter/export survivors in a grid.
├─ :wrench: ProxyHuntr — PyQt5 GUI; scrapes or loads your list, exports only Anonymous/Elite (verifies your real IP is hidden).
├─ :wrench: Nullroute — native Rust GUI (Win/Mac/Linux binaries); grades leak-level AND harvests tg://proxy MTProto links from Telegram channels.
├─ :wrench: KC-Checker — no-build Go binary + terminal UI; anonymity + a keyword ban-check against a target site + geo.
└─ :wrench: exelite Proxy-Checker — double-click run.bat; checks MTProto and HTTP/SOCKS against Telegram, --strict probes deeper.

⌨️ One-command CLI filters

├─ monosans/proxy-scraper-checker — Rust; scrapes 100+ sources + filters every axis at once, offline MaxMind geo. The all-in-one.
├─ mubeng — single Go binary: mubeng -f list.txt -c filters live + anonymity; add -a :port to re-serve survivors as a rotating IP. Two tools in one.
├─ proxybroker2 — maintained ProxyBroker fork; find --lvl High judges anonymity + DNSBL; serve = instant rotating pool.
└─ Crucible-proxycheckerpip install crucible-proxychecker; one command scrapes 67 sources + labels Elite/Anonymous/Transparent.

🔁 Deploy-once pools — a live-only API that never goes stale

├─ jhao104/proxy_pooldocker run; the 22k​:star: classic; scrapes + revalidates on a timer, GET /get = one live proxy.
├─ Python3WebSpider/ProxyPooldocker-compose up; scored Redis pool, /random. Cleanest architecture to fork.
├─ worldpool — 120+ sources; validates liveness + anonymity + SSL-strip/hijack detection + site reachability; REST + self-refresh every 20 min.
├─ unlim-proxy — two-stage: alive, then it must load a full Google page (kills the 4-in-5 that fake it); GeoIP + rotation API.
├─ yukkcat/socks5-proxy — Go SOCKS5 pool; drops CN/HK exits, local :1080 auto-rotates, :8080 dashboard.
└─ LokiPool — Rust; feed it your survivors, it ranks by speed and serves one stable best-node SOCKS5 port.

🤖 Bots — paste in chat, get sorted results (Telegram / Discord)

├─ Polo9989/proxy-checker-botdocker compose up; paste up to 50k into Telegram → 9 sorted files back (working/dead/per-protocol/auth-fail/timeout).
├─ plyul/proxychecker — run your own Go bot; ships its own judge, validate SOCKS5 via bot commands.
├─ cyb3r-vishal/proxy-scraper — systemd daemon; scrapes 50+ sources, keeps only proxies passing 3+ endpoints, DMs a fresh list every 6h.
├─ ZerGo0/Proxybot — self-hosted Discord bot; keeps a checked HTTP/SOCKS list, serves on command.
├─ skynes/tg-proxy-checker — verifies MTProto/SOCKS5 by a real TDLib handshake with Telegram (not a fake ping); CLI + API + Docker.
└─ :speech_balloon: @ipfighter_ip_checker_bot — zero-install: DM a proxy/IP → geo + ISP + VPN/blacklist flags + trust scores. /batch for many.

🕵️ Anonymity & judges — own the test, don't trust a dead public one

├─ enseitankado/proxy-profiler — grades Elite→Transparent with HTTPS-CONNECT + MITM/tamper detection; ships its own Cloudflare-fronted judge.
├─ chill117/proxy-verifier — Node lib; bolt the anonymity axis onto your own scraper, point it at your judge.
├─ Superjulien/Proxycheck — tests cookie / Referer / POST support against a judge → proves it works on a real target, not just pings.
├─ :classical_building: runarbu ProxyMaid azenv judge — the classic azenv script (PHP/Perl); host it once and you own the judge URL that echoes every leaked header.
└─ :classical_building: traefik/whoamidocker run -p8080:80 traefik/whoami = instant judge; hit it through a proxy, elite = only the proxy IP shows.

🌏 Rare / other-language gems

├─ strongshuai/proxy-checker — CN; python server.py → localhost dashboard; grades stability A–D and tests Cloudflare + OpenAI/Gemini/Claude reachability (does it reach your API).
├─ HankNovic/ProxyClean — validates SOCKS5 from a mainland-China vantage point — an angle no Western tool has.
└─ tamld/proxy-checker — reference build wiring all 6 axes: mubeng liveness → residential/datacenter + ASN + risk → DMs the report. Steal the pipeline.

📥 Free auto-refreshed SOURCES — raw material to feed any tool above

├─ monosans/proxy-list — HTTP/SOCKS4/5 re-checked hourly; proxies.json carries protocol + latency + ASN + city (pre-filter before you even run a checker).
├─ proxifly/free-proxy-list — refreshed ~5 min, CDN-served (no rate limit), split by protocol AND country; pip install proxifly for one random live proxy.
├─ GeoNode API — a real queryable endpoint: ?protocols=socks5&country=US&anonymityLevel=elite filters server-side, skip half the checking.
├─ hookzof/socks5_list — auto-updated proxy.txt/.json + a country-picker Telegram bot from the same data.
└─ SoliSpirit/mtproto — MTProto proxy files re-verified every 12h; pull the raw URL or paste tg://proxy into Telegram.

━━━━━━━━━━━━━━━━━━━━━━━

:puzzle_piece: Wire it into a never-stale pipeline:
📥 source⚙️ filter🕵️ grade elite (your own judge)🔁 serve a live-only API → your script only ever sees proxies that work.
One concrete build: proxifly feeds → mubeng -c filters → traefik/whoami proves elite → mubeng -a :8080 re-serves the survivors as one rotating endpoint.

━━━━━━━━━━━━━━━
Stop hoarding lists. Own the filter — a dead proxy can’t hide from a real test.

6 Likes