Sticky Sessions

Keep one exit IP for an entire download, scraper run, or session by appending a session id to your proxy username.

How it works

  • Append _session-<id> to your username, for example _session-download1.
  • Every connection that uses the same session id goes out through the same exit IP.
  • Generate a new id for each new task to rotate to a fresh IP whenever you want.

Example

# cURL — same IP for the whole run
curl -x socks5h://utente_session-download1:password@proxy.pinguproxy.com:12933 https://pinguproxy.com/ip
# yt-dlp — one IP for an entire download
# yt-dlp --proxy socks5h://utente_session-download1:password@proxy.pinguproxy.com:12933 "https://example.com/video"

Where it works

  • Rotating datacenter proxies (port 12933): the session pins the exit node, with a 30-minute default TTL on the server side.
  • Residential PAYG proxies (port 12934): the session pins the Evomi exit IP. You can combine it with _country-XX, e.g. utente_country-DE_session-download1.
  • Static proxies always keep the same IP, so no session suffix is needed.
Use a fresh session id per task and rotate it whenever you need a new IP. On datacenter proxies the session expires server-side after the default 30-minute TTL.