HTTP or SOCKS5?
Updated 2 min read
Short version: use HTTP unless your tool needs SOCKS5. An HTTP proxy handles https:// sites fine: the traffic stays encrypted inside a tunnel. Your proxy's Connection card says which protocol and port it speaks right now.
Which one?
- HTTP: what scrapers, HTTP libraries and browsers expect. Write the proxy URL as
http://, even forhttps://sites. - SOCKS5: for tools that only speak SOCKS, or non-HTTP traffic. Browsers won't send a password to a SOCKS5 proxy, so use HTTP in a browser: see Using the proxy in a browser, phone or app.
Using SOCKS5 with curl or Python? Use socks5h:// so the proxy resolves the site's hostname, not your machine. Python Requests needs pip install "requests[socks]" first.
See what your proxy speaks
Open Proxies, pick the line, click the proxy. The Connection card says which protocol it speaks and on which port.
Switch protocol
Not every proxy offers this. No Change protocol button? That proxy speaks only the protocol its Connection card shows.
- On the proxy, click Change protocol.
- Pick the protocol you want from the list. Only the ones that proxy supports are offered.
- Confirm, then update your tools with the port the Connection card now shows.
Anything still using the old protocol stops connecting straight away. The change is per proxy; for a batch of IPs, change each one.
Common mix-ups
- "wrong version number" SSL error: you wrote
https://in the proxy URL. Make ithttp://. - Works in curl, not in the browser: the browser is probably on SOCKS5 and won't send the password. Switch the proxy to HTTP with Change protocol.
- A 407: that's an HTTP proxy asking for credentials. SOCKS5 never sends one. See Got a 407 or a 403? Here's what they mean.
The longer explainer: SOCKS5 vs HTTP proxy.