Add and save a SOCKS5 proxy in the desktop app
You might be here because: “how do I add a proxy” · “where do I put my proxy details” · “no proxies configured” · “can I paste host:port:user:pass” · “add proxy button does nothing” · “how to set a proxy for a profile” · “proxy setup” · “how to connect my residential proxy”
Short answer
Open Proxies → Add proxy, choose Type SOCKS5, give it a label, fill Host, Port and (if the provider gave them) Username and Password, then press Add proxy. It is saved to your account and tested automatically. Then choose it for a profile in the profile’s Edit.
Check first
- Are you signed in to the desktop app, and is the app up to date? (Old builds can be refused for saves — see ‘Please update Driftstack to keep editing’ (old desktop build refused).)
- If the app shows it is offline, reconnect and try again — proxy changes are saved to your account.
Likely causes and fixes
- Quick paste. The field “Quick paste — host:port:user:pass or user:pass@host:port” auto-fills Host, Port, Username and Password from one line.
- What kind of proxy works. It must have a public address (not
localhost,10.x,192.168.x…), use username/password rather than an IP allowlist, and be SOCKS5 — HTTP saves but cannot run a session. A warning appears under Host for addresses that will not work. - The Password field shows what you type. So you can check it against your provider’s dashboard; once saved it is never shown again. Username and password are optional for proxies that do not need them.
- Adding a proxy from inside New profile / Edit profile. With “+ Add new proxy…”, you must press Add proxy in that inline form before Create profile / Save changes, or the typed proxy is not added.
- “Add proxy” refused. Read the message: a private address, or the account’s proxy cap. See Proxy host must be a public internet address and Proxy limit reached.
- After saving. “Saving stores it on your account. A saved password can be replaced, never shown again.”. The row shows a Driftstack-side result — that is the one that predicts a session.
What makes a good proxy for Driftstack
You bring your own proxy; Driftstack does not supply one. On the trial it must be a SOCKS5 proxy; paid plans can also use OpenVPN or WireGuard. Any of them that connects will start a session, but a session runs best when the proxy can do four things.
1. Carry UDP. Safari uses UDP for HTTP/3 and for calls and video (WebRTC). With SOCKS5 that means the proxy must support UDP ASSOCIATE; many SOCKS5 proxies pass only TCP. An OpenVPN or WireGuard tunnel carries UDP inside it. Without UDP the session still runs, but HTTP/3 is switched off for it and WebRTC uses a slower fallback.
2. Let QUIC (HTTP/3) through. Some proxies pass UDP but block QUIC. Then sites fall back to HTTP/2.
3. Let WebRTC reach the internet from the proxy’s address. Calls, video and some sign-in checks ask a public server which address they see you from. Through a proxy that carries UDP, the answer is the address the proxy sends UDP from. With most proxies that is the same exit your web traffic uses.
4. Be fast and steady. Every page, picture and tap travels through your proxy. A slow or busy exit makes the whole session slow, and an exit address that changes in the middle of a session can sign you out of sites. Prefer a proxy with a fixed (“sticky”) exit for the length of your session, close to the place you want to appear in.
Check your proxy before you use it
In the desktop app, open Proxies and press Test (or Re-test) on the proxy’s row. The row shows the speed, the exit country and the UDP and QUIC chips; a grey chip means not measured yet, never “no” — see What the UDP / QUIC / HTTP/3 chips on a proxy mean. The full check runs during the trial and on paid plans, not once a trial has ended.
From code, POST /v1/account/me/proxies/{id}/test?check=full runs the same check:
| The reading | It means |
|---|---|
udp_probe: true |
UDP gets through (point 1) |
quic_probe: true |
HTTP/3 works through this proxy (point 2) |
latency_ms |
how long one round trip through the proxy takes; lower is better (point 4) |
exit_observed (on the proxy, from GET /v1/account/me/proxies) |
the exit’s address, country and time zone websites see |
null means not measured yet, never false; the quick check does not measure UDP or QUIC. If a reading is false, sessions still start, with the limits above. Driftstack does not sell or recommend a particular proxy provider.
If it still fails
Press Talk to a person in this chat (or open Help) and include: what you entered for host and port (never the password), and the exact message under the form.