Kameleo is an anti-detect browser with a strong automation side: you can run profiles by hand, or create and start them from code through its local API. Either way, each profile needs its own IP address to stay truly separate. This guide covers Kameleo proxy setup with ProxyEmpire: the fields to fill in, testing the proxy before launch, setting proxies from the API in Python and JavaScript, and when to use residential, mobile or static residential proxies.
The short version
In a Kameleo profile’s proxy settings, choose HTTP or SOCKS5, enter host v2.proxyempire.io, port 5000 and your ProxyEmpire proxy username and password, then run the proxy test before launching. From code, pass a proxy object with the type, host, port, and your username and password as id and secret, and stop the profile before you change its proxy.
Why Kameleo Needs a Proxy
Browser isolation stops at the networkKameleo creates browser profiles with their own fingerprints and storage, so sites can’t connect them through cookies or device characteristics. It is used for multi-account management and for automated work, where scripts drive profiles through tools such as Playwright, Puppeteer or Selenium.
What Kameleo doesn’t change is your IP address. Without a proxy, every profile, manual or automated, reaches the web from the same connection. For accounts, that shared IP is an easy way for a platform to link them. For automation, it means every request comes from one address, which gets rate-limited or blocked quickly. A Kameleo proxy gives each profile its own IP in the location you choose.
Residential IPs come from real home connections and are the default choice for both accounts and web data work. Mobile IPs come from 4G carrier networks and are shared by many real subscribers, which makes them the hardest for platforms to block. Datacenter IPs are fast and cheap, and fine for lightly protected sites, but easy to recognise as hosting traffic.
What you need
- Kameleo installed and running.
- A ProxyEmpire account with bandwidth. The $1.97 trial includes 100 MB of residential and 50 MB of mobile bandwidth.
- For automation: Kameleo’s local API client for Python or JavaScript.
Step 1: Get Your ProxyEmpire Proxy Details
Everything is built into the usernameIn the ProxyEmpire dashboard, open the Proxy Manager to reach the Connection Builder. Choose Residential or Mobile, a country, and, under the advanced settings, a region, city or ISP (carrier on mobile) if you need one. Residential and mobile can also be targeted by ZIP, ASN and OS fingerprint at no extra cost. Static residential and datacenter proxies are targeted by country.
Choose the IP rotation:
- Same IP gives a sticky session with no fixed time limit; the IP stays until you rotate it or the device behind it goes offline. Use it for logged-in profiles.
- Every request rotates on every request, which suits scraping profiles that never log in.
- Custom TTL rotates on a timer you set, up to two hours.
You’ll see host v2.proxyempire.io, port 5000, a username, a password, a Test proxy settings button and a full proxy string to copy. The location and session are encoded in the username, which is convenient for automation: to move a profile to another city or give it a new IP, you only change the username. ProxyEmpire supports HTTP, HTTPS and SOCKS5; HTTP and SOCKS5 use the same details, and authentication is by username and password.
Step 2: Add the Proxy to a Kameleo Profile
Built-in proxy manager, then test- Open proxy settingsCreate a new profile or edit an existing one and go to its proxy settings.
- Pick the typeChoose HTTP or SOCKS5. Kameleo also supports SSH tunnels.
- Fill in the fieldsEnter the host and port, then the username and password from the Connection Builder.
- Test the proxyRun Kameleo’s proxy test before launching the profile.
- LaunchStart the profile and check its IP and location on any IP-check page.
Kameleo’s proxy test checks the connection without starting the browser. It tries to reach several well-known sites, including Google, Archive.org and Wikipedia, through the proxy, and if any of them loads, the proxy works. It’s a quick way to catch a typo before you spend time on a profile. Run it again whenever you change the targeting, because a new city or session means a new username, and a mistyped username is the most common reason a previously working profile stops connecting.
Kameleo can also take the proxy as a single string, which saves typing when you copy the full proxy string from ProxyEmpire. HTTP is suitable for all websites, including HTTPS ones, since the browser tunnels encrypted traffic through the proxy; choose SOCKS5 if your workflow prefers it.
Keep the profile’s timezone, geolocation and WebRTC in line with the proxy’s location, not your computer’s. ProxyEmpire carries TCP traffic, not UDP, so WebRTC should be masked or show the proxy’s address rather than your own.
Setting Kameleo Proxies from the API
For Playwright, Puppeteer and Selenium setupsWhen you create profiles from code, the proxy is part of the profile request. Kameleo’s proxy object has a value for the type and an extra block with the host, the port, and, for authenticated proxies, id for the username and secret for the password.
from kameleo.local_api_client.models import CreateProfileRequest, ProxyChoice, Server
fps = client.fingerprint.search_fingerprints(browser_product='chrome')
profile = client.profile.create_profile(CreateProfileRequest(
fingerprint_id=fps[0].id,
name='US store 1',
proxy=ProxyChoice(
value='http',
extra=Server(host='v2.proxyempire.io', port=5000,
id='your-proxyempire-username', secret='your-proxyempire-password')
)
))
const fps = await client.fingerprint.searchFingerprints(undefined, undefined, "chrome");
const profile = await client.profile.createProfile({
fingerprintId: fps[0].id,
name: "US store 1",
proxy: {
value: "http",
extra: { host: "v2.proxyempire.io", port: 5000,
id: "your-proxyempire-username", secret: "your-proxyempire-password" }
}
});
Two rules from Kameleo’s documentation matter here. First, stop a profile before you change its proxy settings; switching the proxy while a profile is running can cause network problems and isn’t supported. Second, keep credentials out of your code: read the ProxyEmpire username and password from environment variables or a secrets store.
Because the ProxyEmpire username carries the targeting and session, a script can give every profile its own IP by building one username per profile from the Connection Builder or the Proxy list panel, then passing it as id.
Running Many Kameleo Profiles
One session per identity, rotation for scrapingThere are two common Kameleo patterns, and they want different proxy settings:
- Account profiles need a stable identity. Give each one its own Same IP session, keep it in the same country and, ideally, the same city, and replace a dropped IP with a new session in that same city.
- Data collection profiles don’t log in. They can use Every request rotation, so each page load comes from a different IP and no single address hits the site too often.
Mixing the two is where problems start: an account profile on a rotating username changes IP between page loads, which looks nothing like a real person. When a profile misbehaves, check which kind of username it has before anything else.
For large runs, generate usernames in bulk with the Proxy list panel in ProxyEmpire’s Connection Builder: set the list length and the host:port:user:pass output format, then map one line to each profile. Pace your requests to what the target site can handle.
Bandwidth planning is simpler than it looks. Account profiles use little data, since they mostly load a handful of pages per session, while scraping profiles can use a lot. If you run both, consider separate ProxyEmpire sub-users for each workload, so a heavy scraping job can never use up the bandwidth your account profiles depend on. Everything you don’t use rolls over, so there’s no penalty for buying a plan that leaves headroom. And if a run fails halfway, check the failed profiles’ usernames first: a typo in one generated line affects only that profile, which is why mapping one line per profile makes problems easy to trace.
Which ProxyEmpire Proxy to Use with Kameleo
Match the IP to the job| Rotating residential | Rotating mobile | Static residential | |
|---|---|---|---|
| IP source | Home broadband | 4G carrier networks | Residential ISP ranges |
| In Kameleo | Sticky per account, or rotating for scraping | Sticky per account | One IP per profile |
| Targeting | Country to ZIP, ISP, ASN | Country to ZIP, carrier, ASN | Country |
| Best for | Accounts and web data | Social media and app-first platforms | Accounts that must keep one IP |
| Price | $3.50/GB, down to $1.50/GB | $4.50/GB, down to $2.00/GB | $3.50 for one IP, down to $2.00/IP a month |
Rotating residential covers most Kameleo work, sticky for accounts and rotating for data collection. Mobile suits strict platforms, and static residential, sold in 24 countries, suits accounts that should always use the same address. One ProxyEmpire account covers all three, and unused bandwidth rolls over.
Troubleshooting a Kameleo Proxy
When the proxy test fails| Problem | Likely cause and fix |
|---|---|
| Proxy test fails | Usually a typo or an old password. Copy the details from the Connection Builder again. |
| API profile has no connection | Check that the username is in id and the password in secret, and that the port is 5000. |
| Network errors after changing proxy | The proxy was changed while the profile was running. Stop the profile, change the proxy, then start it again. |
| IP changes between page loads | The profile uses an Every request username. Use Same IP for anything that logs in. |
| Stopped working | Check your bandwidth balance and whether targeting changed, which changes the username. |
| One site won’t load | Some site categories are restricted on ProxyEmpire by default, including banks, payment processors such as PayPal and Stripe, and crypto exchanges, and only ports 80 and 443 are open. Access can be reviewed after KYC and a use-case explanation to support. |
ProxyEmpire support is available 24/7 through live chat in the dashboard. Learn more about Kameleo on its official site, and for headless automation without an anti-detect browser, see our guide to Puppeteer proxies.
Kameleo Promo Code
For ProxyEmpire customersProxyEmpire customers get 50% off their first month of Kameleo with the promo code ProxyEmpire50. It applies to the first month only. See Kameleo’s plans here and enter the code at checkout.
Kameleo Proxy FAQ
Straight answersWhat is the best proxy for Kameleo?
Rotating residential proxies suit most Kameleo work: a sticky session per account profile, or rotation per request for data collection. Use rotating mobile proxies for strict social platforms and static residential proxies when an account must keep one IP.
How do I add a proxy in Kameleo?
In the profile’s proxy settings, choose HTTP or SOCKS5, enter v2.proxyempire.io and port 5000, add your ProxyEmpire username and password, and run the proxy test before launching.
How do I set a proxy through the Kameleo API?
Pass a proxy object in the profile request: value set to http or socks5, and extra with host, port, id (username) and secret (password). Stop the profile before changing its proxy.
Which proxy types does Kameleo support?
HTTP, SOCKS5 and SSH. ProxyEmpire supports HTTP, HTTPS and SOCKS5; HTTP and SOCKS5 use the same host, port, username and password.
Can I rotate IPs in Kameleo?
Yes, by using a ProxyEmpire username set to Every request, which gives a new IP on each request. Use that only for profiles that don’t log in; account profiles should stay on a sticky session.
Why does Kameleo say not to change the proxy while a profile runs?
Switching the proxy mid-session can cause network problems and isn’t supported. Stop the profile, update the proxy, then start it again.
What is the best mobile proxy for Kameleo?
A rotating mobile proxy on a sticky session, targeted to the account’s country and, if needed, its carrier. ProxyEmpire’s mobile IPs come from 4G carrier networks, with city, carrier and ASN targeting included.
Is there a Kameleo promo code?
Yes. ProxyEmpire customers get 50% off the first month of Kameleo with the code ProxyEmpire50.
Can I test ProxyEmpire with Kameleo first?
Yes. The $1.97 trial includes 100 MB of residential and 50 MB of mobile bandwidth, and unused trial bandwidth doesn’t expire.
References
Primary documentation- Kameleo Developer Center β Using proxy servers. developer.kameleo.io/tutorials/using-proxy-servers
- Kameleo Knowledge Base β Built-in Proxy Manager: HTTP, SOCKS5 or SSH proxies. help.kameleo.io/article/62-built-in-proxy-manager
Give every Kameleo profile its own real IP
Residential, 4G mobile and static residential proxies with city, ZIP, ISP and carrier targeting included, sticky or rotating sessions, bandwidth that rolls over and 24/7 support from real people. Try it for $1.97.



