Comparison

Rotating or sticky proxies: which should you use?

Short answerUse rotating proxies when each request stands alone, as in price crawls and SERP checks, and sticky proxies when a site must see the same visitor across several pages, as in a basket or a dashboard. At Jade Proxies, sticky sessions last up to 30 minutes and both modes cost the same per GB.

$0.08/hour
Key figureOur price grid shows that keeping one dedicated carrier IP beyond the 30-minute sticky limit costs $0.08 per hour on a 30-day South and Southeast Asia port ($59.25 ÷ 720 hours).Source: Jade Proxies price grid, 29 October 2026

What is the difference between rotating and sticky proxies?

A rotating proxy gives a new IP for each new connection; a sticky proxy keeps one IP for a session you name. At Jade Proxies, each new connection gets an IP from the pool, usually a different one; to get a new IP on every request, send one request per connection (turn off keep-alive). Sticky sessions last up to 30 minutes (the IP can change earlier).

PointRotatingSticky
When the IP changesOn each new connectionWhen the session ends, or earlier if the device goes offline
UsernameNo session partsession-{id} and ttl-{minutes} added
Longest holdOne connection30 minutes
Price per GBSameSame
Typical jobsCrawls, SERP checks, price monitoringBaskets, dashboards, browser automation

How do you set rotation or a sticky session?

You set both in the proxy username, which follows the format USERNAME-country-{cc}-city-{city}-session-{id}-ttl-{minutes}. Leave out the session and ttl parts for rotation; add them for a sticky session.

  • country-{cc}: the two-letter country code, such as jp, kr, in or th.
  • city-{city}: the city, such as osaka, mumbai or bangkok; city availability varies.
  • session-{id}: any string you choose; requests with the same id share one IP.
  • ttl-{minutes}: the session length in minutes, up to 30.
# Rotating: each new connection gets an IP from the pool
curl -x http://USERNAME-country-th-city-bangkok:[email protected]:7777 https://api.ipify.org

# Sticky: the same session id keeps one IP for up to 10 minutes
curl -x http://USERNAME-country-th-city-bangkok-session-cart42-ttl-10:[email protected]:7777 https://api.ipify.org

Run the sticky command twice within 10 minutes and both calls print the same IP, unless the home device behind it goes offline; run the rotating one twice and the IPs usually differ. SOCKS5 clients connect to port 7778 with the same username.

Why does keep-alive stop rotation?

Rotation happens per connection, not per request, so a client that reuses one connection sends every request on it through the same IP. HTTP keep-alive, connection pools such as Python's requests.Session and HTTP/2 multiplexing all reuse connections. To get a new IP on every request, open one connection per request: call requests.get without a session, or send the header Connection: close. The Python requests guide shows both patterns.

Browsers create the opposite problem. A browser opens several connections to load one page, so in rotating mode the HTML, scripts and images of a single page can arrive through different IPs, which breaks sites that tie a visit to one address. Give each browser profile or Playwright context its own sticky session instead.

Per-request rotation also uses more traffic: every new connection repeats the TLS handshake, and usage counts all data sent and received through the proxy, headers included.

Which mode should you use for each job?

Pick rotation when requests are independent and a sticky session when the site follows a visitor across pages:

JobModeUsername settingsReason
Product pages on Shopee or LazadaRotatingcountry + city, keep-alive offEach page stands alone
Google Japan or Naver rank checksRotatingcountry + cityOne query per IP spreads the load
Ad check on a landing pageStickyttl-1 to ttl-5The page and its ad calls share one IP
Basket and checkout testingStickyttl-10 to ttl-30The cart is tied to the visitor
Dashboard of your own accountStickyttl-30, one fixed idLogins can drop when the IP changes
Playwright or Puppeteer runsStickyone id per browser contextBrowsers open many connections
Managing a brand's social accountDedicated mobile portRotate only when neededNeeds one IP for days
Hotel and fare monitoringRotatingcountry + cityEach search is independent

The Shopee and Lazada guide applies these settings to marketplace crawls.

What if 30 minutes is not long enough?

Use a dedicated 4G/5G mobile port, whose carrier IP changes when you decide: new IP on demand by rotation link or API call, at most once every 30 seconds, or on an automatic timer from every 2 minutes to every 24 hours. Our price grid shows that a port costs $0.08 per hour on a 30-day South and Southeast Asia plan ($59.25 ÷ 720 hours) and $0.12 per hour in Japan, South Korea, Taiwan, Hong Kong or Singapore ($89.25 ÷ 720 hours).

Data on a port is billed per day, not per GB, under fair use (the carrier may slow or pause very heavy use), and each rotation reconnects the port to the carrier and usually takes 5–15 seconds. The mobile proxies page lists the carriers per country.

Why can a sticky IP change before the session ends?

A sticky residential IP can change early because it belongs to a real home device, and that device can go offline at any moment, which ends the session. Write retries into the client: when a request fails or the exit IP changes, start a new session id and repeat the step.

Rotating and sticky traffic cost the same, $1.50 for 1 GB down to $0.50/GB from 100 GB, as listed on the pricing page.

Frequently asked questions

How long does a sticky session last at Jade Proxies?

Up to 30 minutes, set with ttl-{minutes} in the username. The IP can change earlier if the home device behind it goes offline, so build retries into your client.

How do I get a new IP on every request?

Leave the session part out of the username and send one request per connection, with keep-alive turned off. Each new connection gets an IP from the pool, usually a different one.

Can I run several sticky sessions at the same time?

Yes. Give each session its own id, for example one per browser profile or per basket test. Each id is tracked as a separate session with its own exit IP from the pool.

Is rotating or sticky better for web scraping?

Rotating, for most crawls: product pages and search results are independent requests, and spreading them over many IPs keeps the load per address low. Switch to sticky sessions only for flows that span several pages.

Does a sticky session cost more?

No. Rotating and sticky traffic share the same per-GB price, from $1.50 for 1 GB to $0.50/GB from 100 GB, and the traffic never expires.

Test 10 GB of Asian residential IPs for $6.60

Top up from $25 in BTC, ETH, USDT, USDC, SOL, LTC. No ID, no selfie. Unused balance never expires.