What Is a Rotating Proxy? How IP Rotation Works
A rotating proxy automatically changes the exit IP address it uses, so your requests appear to come from many different sources instead of one. It's the standard defense against rate-limiting and IP bans: spread traffic across a large pool and no single IP looks suspicious.
How rotation works
You connect to one stable endpoint. Behind it, the provider holds a pool of IPs and assigns them to your requests according to a policy:
- Per-request rotation — each request (strictly, each new connection) can go out a different IP. Maximum spread, ideal for large numbers of independent lookups.
- Time-based rotation — the IP changes on an interval (say, every few minutes).
- Sticky sessions — the same IP is held for the life of a session so a multi-step flow stays consistent.
Sticky vs rotating: the important distinction
These sound opposite but you usually need both, for different jobs.
Rotating (per request) is right when each request is independent — scraping thousands of product pages, checking prices, collecting search results. Changing IP constantly is exactly what you want.
Sticky is right when a task spans multiple requests that must look like one user — logging in, adding to a cart, paginating through a session, anything with cookies or CSRF tokens. If the IP flips mid-flow, the target sees a “user” teleporting between locations and trips its anti-bot checks.
Rule of thumb: rotate per request for independent reads; go sticky for anything stateful.
For a task-by-task breakdown, see Sticky vs Rotating Proxy Sessions.
The trap: rotating too aggressively
A common mistake is rotating on every connection when loading a single page. A modern web page fires dozens of sub-requests (CSS, JS, images, API calls) in a couple of seconds. If each one exits a different IP, the target sees one “browser” whose IP changes 50 times mid-render — a dead giveaway. Good rotating proxies keep the burst of connections that make up one page-load on a single IP, then rotate once that burst is over. That balance — rotate between tasks, stay stable within a task — is what keeps you unblocked.
Pool quality matters as much as rotation
Rotation only helps if the pool is large and the IPs are trusted. A thousand rotating datacenter IPs from one obvious hosting range will all get blocked together. The same rotation across a large residential pool is far more resilient. Rotation and IP type are two separate levers; tune both.
Putting it together
A rotating proxy is one feature of an endpoint, not a separate product. On o2co (HTTP or SOCKS5 on one port) you choose per connection, in the username. The plain username is burst-sticky: connections from the same machine share one exit while traffic keeps flowing, and after about a minute idle the next one may get a fresh exit. Add -rotate (USERNAME-rotate:PASSWORD@HOST:PORT) and every new connection may leave from a different exit — per connection, not per request, so a keep-alive connection keeps its exit until it closes. Add -country-xx to pick the exit country; it combines with -rotate. Sticky mode, which holds one exit per source IP for longer, is an account setting. For a full scraping setup, see Proxies for Web Scraping. Get 1 GB free or see pricing.