Loading page content.
Loading page content.
Agency operations
Platforms do not object to an agency running many client accounts. They object to many accounts sharing one address and one browser fingerprint. Giving each account a stable, dedicated identity is the difference.
The problem
Platform trust systems look for accounts that behave like one operator rather than many people. The strongest signal available to them is shared network identity: twenty accounts posting from one office address, at one cadence, from one browser build. When the system acts, it rarely acts on one account — it acts on the cluster, and an agency loses the client's account alongside its own.
Rotation makes it worse, not better. A personal account whose sign-in location moves between three countries in a day is a textbook compromise pattern, and the response is a security challenge or a lock. Anything holding a persistent session needs a stable address, which is the opposite of what a scraping workload wants.
The third factor is history. A residential address that has served one account consistently for months is unremarkable. A brand new address that immediately signs into an established account is the pattern that triggers a verification step, which is why moving accounts between exits is the most common self-inflicted lockout.
Why proxies
This is the workload where rotation is the wrong tool. What an account needs is an address it keeps: an ISP-registered residential IP that is not shared with anyone else and does not change from one session to the next. Consistency is the trust signal, and it accrues over time.
Dedication matters as much as stability. A shared address links the accounts that use it, which is exactly the association an agency needs to avoid. One address per account, held for the life of the engagement, keeps each client's account isolated on the only axis the platform can see cheaply.
Recommended product
Dedicated ISP addresses that stay yours, with unmetered bandwidth
from $1.60/IP/day
Accounts that must look like they are operated from a phone — and platforms where mobile signals carry more trust — are better served by a dedicated carrier port, at a higher cost per account.
from $2.65/GB
Read-only work such as competitor research, hashtag monitoring and public engagement analysis has no session to protect and is far cheaper on the rotating pool.
Worked example
The operational rule is that the mapping from account to exit address never changes. Storing that mapping in configuration rather than in a person's memory is what stops an account being opened from the wrong exit at eleven at night.
import { chromium } from "playwright";
// One record per managed account. The address is part of the account's
// identity: changing it is a migration, not a configuration tweak.
const ACCOUNTS = {
"client-alpha": {
proxy: { server: "http://198.51.100.24:8080", username: "fp_alpha", password: "Xk7mQ2pTz9vRn4Ls" },
profileDir: "./profiles/client-alpha",
locale: "en-GB",
timezoneId: "Europe/London",
},
"client-beta": {
proxy: { server: "http://198.51.100.57:8080", username: "fp_beta", password: "Lp3wR8xKd2mVt6Qn" },
profileDir: "./profiles/client-beta",
locale: "de-DE",
timezoneId: "Europe/Berlin",
},
};
export async function openAccount(name) {
const account = ACCOUNTS[name];
if (!account) throw new Error(`Unknown account: ${name}`);
// A persistent context keeps cookies, local storage and the device profile
// on disk, so the account resumes its own session instead of starting a new
// one from an address it has never signed in from.
return chromium.launchPersistentContext(account.profileDir, {
proxy: account.proxy,
locale: account.locale,
timezoneId: account.timezoneId,
viewport: { width: 1280, height: 800 },
});
}Replace the credential with the one in your dashboard. The gateway host, port and username format are the same across every product.
Pitfalls
Each of these is common, cheap to fix, and expensive to leave in place. They are listed in roughly the order teams hit them.
A sudden change of sign-in location on an established account triggers verification. When a migration is unavoidable, move during ordinary working hours in the account's own timezone, sign in without immediately publishing, and give it a few normal sessions before resuming automation.
One address per account, not one per client and not one per agency pod. The moment two accounts share an exit, they are associable, and an action against one becomes a risk to the other.
Twelve accounts posting at exactly the top of the hour is a pattern no group of humans produces. Jitter the schedule per account and let each client's calendar differ.
Rotation is designed to give a new address per request, which for an authenticated session means a new sign-in location on every action. It is the fastest way to get a portfolio challenged, and it is a product choice rather than a configuration mistake.
Questions
Start on 50MB of free residential bandwidth, measure your own targets, and scale into volume tiers that step the rate down as the job grows. Unused bandwidth never expires.
No card required for the trial. Cancel or downgrade at any time.