Agents on both
import { HttpsProxyAgent } from "https-proxy-agent";
const agent = new HttpsProxyAgent(process.env.PROXY_URL);
const res = await axios.get(url, { httpsAgent: agent, proxy: false });This works with Rayobyte gateways and Webshare backbone or direct IPs. See Rayobyte with Node.js, Webshare with Node.js and Node.js and Axios proxies.
Rotation
- Webshare: a rotate suffix on the backbone username, or cycle through your downloaded list and create an agent per IP.
- Rayobyte: the gateway rotates per connection; add a session ID to hold an IP.
Differences
| Rayobyte | Webshare | |
|---|---|---|
| Easy sites | Rotating datacenter per GB | Per-IP lists |
| Protected sites at volume | Residential from $2/GB at 50 GB | Monthly residential plans |
| Drop-in unblocking | Web Unblocker | None |
| SOCKS5 | Yes, plus UDP | Yes |
Which to choose
Webshare for cheap lists and free development; Rayobyte for residential at volume and drop-in unblocking. With Geonode: Node.js across all three.
Residential tip: Both sides of this comparison can be tested at no cost: Rayobyte has a free trial with no card, and Webshare has a permanent free plan with 10 datacenter proxies. See using Rayobyte with Node.js.
A real-world example
A Node.js service checks product availability for a reseller every 15 minutes across 60 shops. It keeps one HttpsProxyAgent for a Webshare backbone URL with a rotate suffix and another for Rayobyte Premium Residential. Eight shops that block datacenter IPs are mapped to the Rayobyte agent; the rest use Webshare. A p-limit queue keeps 40 requests in flight at most.
Retry helper
async function withRetry(fn, tries = 3) {
for (let i = 0; i < tries; i++) {
try { return await fn(i); } catch (e) { if (i === tries - 1) throw e; }
}
}Pass the attempt number into fn so later attempts can switch to a new session or a different provider.
Pros and cons for Node.js
Rayobyte
- Rotating pools and a drop-in unblocker.
- Cheaper residential at volume.
Webshare
- Cheap lists and a simple backbone gateway.
- Node.js samples in its docs.
Budget tip: If the job only needs a fixed list of IPs, Webshare sells datacenter and static residential proxies by the IP, often for less than a per-GB plan would cost. More in using Webshare with Node.js.
Bottom line
Use two agents, one per provider, and route by domain.
Rayobyte, Geonode and Webshare are three options among many. Our best proxies in 2026 guide explains how to match a proxy type to each task, and cheap proxies that work shows where budget providers fit.
Proxy tip: For a second opinion on hard targets, run the same test through Geonode residential proxies, which support sticky sessions up to 24 hours and ASN targeting. We compare the two in using Geonode with Node.js.
Key takeaways
- Proxy agents work identically on both.
- Webshare rotates via backbone suffixes or your list; Rayobyte via gateway sessions.
- Webshare is cheaper per IP; Rayobyte for residential volume and unblocking.
FAQ
Why does Axios ignore my proxy agent?
Set proxy: false.
Do both work with native fetch?
Yes, via undici's ProxyAgent.
Which supports SOCKS5 in Node.js?
Both, via socks-proxy-agent.
How do I keep one IP for several requests?
Reuse the same agent with a sticky session in the username; create a new agent to change IP.
Can I use Got or undici instead of Axios?
Yes; both accept proxy agents.
Which proxy agent package should I use?
https-proxy-agent for Axios and Got, undici's ProxyAgent for native fetch.
Does Node.js support SOCKS5 with both?
Yes, through socks-proxy-agent.
Editorial note: Proxy providers change their pools, features and prices often, so treat any figures here as typical ranges at the time of writing and confirm current terms with the provider before you buy.