Rotating Proxy
A proxy that assigns a new IP address on each request or at a fixed interval.
A rotating proxy pulls a fresh IP from a pool each time your client opens a connection. The target server sees a different IP each time, so your traffic looks like it comes from multiple different users - not a single automated process.
Most providers implement rotation on their gateway servers. You connect to one endpoint (host:port) and the gateway handles IP assignment from its pool. You do not need to manage a list of IPs or code rotation logic yourself.
Rotation works on two models. Connection rotation assigns a new IP each time your client opens a connection. Session rotation (also called sticky sessions) holds the same IP for a window you choose - with us thirty seconds, fifteen minutes or one hour - then rotates.
Use per-request rotation for stateless operations: checking a product price, pulling a SERP result, or downloading a page you only need once. Use sticky sessions when your task has state: logging into an account, filling a multi-step form, or scraping paginated content where the site tracks session continuity.
The pool size matters. A small pool of 1,000 IPs rotates back to the same addresses quickly. A pool of millions of residential IPs rarely repeats, making detection much harder.
Where the rotation actually happens
Rotation means your outbound address changes over time rather than staying fixed. The important question is who performs the change, because that determines what you control.
With a gateway, the provider rotates for you: each new connection is matched to a different exit device, and you never see the pool. With a list of static addresses, nothing rotates by itself and your own code decides which address the next request uses.
The unit of rotation is the connection, not the request. A keep-alive session sends many requests down one open connection, so it stays on the address it started with until that connection closes. This surprises people whose scraper reuses a connection pool and reports the same address for minutes.
Rotation on our endpoints
Residential rotates by default and holds still when you ask it to. Static addresses never rotate on their own:
Rotate or hold
login:password@proxy.sotaproxy.com:10000 new exit per connection
login_c_US:password@... new exit, United States
login_c_US_s_5_ttl_15m:password@... one exit for 15 minutes
# Static: rotate by cycling through addresses you own
198.51.100.20:50100, 198.51.100.21:50100, ...- Drop the session suffix and you get a fresh exit per connection, which is what wide scraping wants.
- If your client pools connections, close and reopen them to force a new exit, or the pool keeps you on the old one.
- Rotation does not reset cookies or fingerprints. A logged-in session that changes address looks like a session that teleported.
- On static addresses, rotation is your job: round-robin across the list and give each address a rest between passes.
What rotation does not solve
It does not hide a browser fingerprint
The same client arriving from a hundred addresses is still the same client. Rotation spreads reputation, it does not change identity.
It does not help logged-in work
Accounts want stability. Rotating under a session is how people get logged out and flagged.
It is not per-request by default
The exit changes per connection. Connection reuse is why your scraper reports one address for a long run.
More rotation is not always better
Sites that expect a returning visitor treat a new address on every page as the anomaly.
What rotates, and what never does
Rotation is a property of the endpoint you bought, not a setting you can turn on anywhere.
| Endpoint | Rotates? | What triggers a change | Who decides |
|---|---|---|---|
| Residential gateway, no session suffix | Yes | every new connection you open | the gateway |
| Residential with _s_ and _ttl_ | Not until the clock runs out | the lifetime expiring, or the device going offline | you set the window |
| ISP address | No | nothing, it is yours for the term | you, by ordering another |
| IPv4 datacenter | No | nothing | you, by cycling your own list |
| IPv6 datacenter | No | nothing | you, by cycling your own list |
Three of the five rows do not rotate at all. If you bought static addresses and expected fresh exits, the rotation has to live in your code: round-robin the list and rest each address between passes.
Questions people actually type
What is a rotating proxy?
An endpoint that hands you a different outbound address over time instead of a fixed one. You connect to a single host and port, and the provider picks which exit device answers.
How often does the IP change?
On our residential gateway, on every new connection you open. Not on every request: if your HTTP client keeps a connection alive and sends ten requests down it, all ten leave from the same address.
Why does my scraper keep reporting the same IP?
Almost always connection pooling. Most HTTP clients reuse an open connection by default, so you stay on the exit it started with. Close and reopen the connection, or disable keep-alive, and the address changes.
Rotating or sticky, which do I need?
Rotating for stateless work where no single address matters: listings, prices, search results. Sticky for anything with state, because a login that changes address mid-flow looks like a stolen session.
Can I force a new IP on demand?
Yes. Open a new connection without a session suffix, or change the session number if you are using one. Both give you a different exit on the next request.
Do datacenter and ISP proxies rotate?
No. Those are addresses reserved for you for the term you paid for, and that is the point of them. Rotating through several means buying several and cycling them yourself.
Related terms
See this in practice
Ready to use rotating proxy?
SotaProxy gives you access to rotating residential, mobile, datacenter, and ISP proxies. No minimum commitment.
Get started