Connection control · BusyIP field guide

Rotating vs sticky proxy sessions: a practical BusyIP guide

Rotation and stickiness answer different questions. Rotation lets the gateway select an exit for a new request. A sticky session asks it to keep using a particular device. Neither is a promise that every request has a unique or permanent IP address.

Use rotation for independent requests

With rotating mode, your client does not ask to remain pinned to an existing session device. This can suit independent public-page observations, where each request is a separate unit of work.

Rotation does not mean a unique address is available for every request. A small pool can select the same device again, and separate devices can sometimes appear behind shared network addressing. Inspect the address if the distinction matters to your work.

Use stickiness for a connected journey

Add a session identifier when multiple related requests should use the same exit device. In BusyIP, a session marker without an explicit mode is sticky by default.

A practical example is testing several pages in your own application in sequence. Keep the session identifier consistent across the sequence and avoid sharing it across unrelated jobs that should be isolated.

The username carries the choice

Append these markers to your dashboard username
IntentMarker
Rotating requests-mode-rotate
A named sticky session-session-review1
A residential session-session-review1-type-residential

The proxy secret remains the same. Country and type markers can be combined with the session settings. Use the complete syntax in the targeting documentation.

A pinned device can change its address

A sticky session stays with a device while that device remains available. Its network can assign a different IP address underneath the session. A different session identifier also does not guarantee a different IP address.

This matters for applications that bind state to an address. Record the observed exit IP and treat an address change as an explicit event, even when the session identifier has not changed.

Handle an offline exit explicitly

If the pinned phone disconnects, BusyIP returns a sticky-device-offline error instead of silently switching the session to another phone. This keeps the change visible to your client.

The proxy error headers are the useful place to inspect a failed HTTP CONNECT request: clients commonly discard the response body of a failed tunnel. Review X-Proxy-Error, X-Proxy-Message, and any retryability information available to your client.

Treat the session as part of your job state

Sessions that are idle for 24 hours are released. Use a deliberate session identifier for each connected job, keep it out of unrelated jobs, and record the exit address if the application’s behavior depends on it.

When an exit becomes unavailable, decide whether your job can start a new session or must stop for review. Automatically retrying a stateful action on a different route can make a test result difficult to interpret.

A practical session checklist

  • Use rotation for independent requests and stickiness for related requests.
  • Check that the country and network type you request have capacity.
  • Verify the actual exit address rather than assuming uniqueness.
  • Keep proxy errors separate from destination application errors.
  • Use bounded retries and clear job timeouts.
  • Re-test the full journey with your own client before increasing traffic.
Keep going

For the current endpoint details, targeting syntax, and error handling, use the BusyIP documentation. For pack prices and the complete metering disclosure, visit pricing.

Ask us about this guide →
Keep building your understanding

Your next good read.

All guides
Real connections. Your next request.

The internet looks different
through a real IP.

Try residential and mobile traffic with a free account.
No card. No subscription. No ticking clock.

Start with 1 GiB free Trial allowance is subject to monthly capacity. See trial details.