Documentation Python quickstart Blog Free tools Enterprise solutions hello@quanticdata.ioLog in

How to set up a proxy in Kameleo: add it, test it, fix the errors

Setting up a proxy in a Kameleo profile in four steps: generate a sticky line in the QuanticData endpoint generator with the user:pass@host:port format, paste it into the host field under With Proxy with HTTP on port 8080 or SOCKS5 on port 1080, run Test Proxy for the location, then Save and Start; the card lists the three things to check when the profile does not start.
Setting up a proxy in a Kameleo profile in four steps: generate a sticky line in the QuanticData endpoint generator with the user:pass@host:port format, paste it into the host field under With Proxy with HTTP on port 8080 or SOCKS5 on port 1080, run Test Proxy for the location, then Save and Start; the card lists the three things to check when the profile does not start.

To add a proxy in Kameleo, open the profile, set Proxy to With Proxy, choose HTTP for port 8080 or SOCKS5 for port 1080, paste the line as user:pass@host:port into the first field, click Test Proxy, then Save & Start. Give every profile its own sticky session. Below: each step, mobile and ISP lines, the local API and each error.

Kameleo gives every browser profile its own fingerprint and, through its built-in proxy manager, its own connection: HTTP, SOCKS5 or SSH, set profile by profile. The proxy decides which IP address and which country the sites see, so it has to agree with the rest of the profile: language, time zone, location. The field names below are the ones in Kameleo's own Knowledge Base and Developer Center, the values come from the QuanticData endpoint generator, and the test result in the pictures is a real check of a Sweden line made on 23 October 2026.

What you need before you start

  • Kameleo installed, with an account. Its Free plan already lets you set a proxy on each profile; paid plans add concurrent browsers and team features.
  • A proxy plan. Residential Premium, ISP or mobile: all of them work in Kameleo. The table further down says which one fits which profile.
  • The four values: host, port, username and password. In the QuanticData dashboard they are under My proxies, on the plan's page, in the Endpoint generator.

The proxy format Kameleo reads

A Kameleo profile has four proxy fields: IP or Hostname, Port, Username (Optional) and Password (Optional). Kameleo's documented shortcut is to paste one line into the first field in the layout username:password@hostname:port; it splits the line and fills the four fields for you. In the QuanticData generator, set Output format to user:pass@host:port and the Preview gives exactly that line.

# Residential Premium, Sweden, one session kept for 60 minutes, HTTP
USER-country-se-sid-p01-ttl-60m:PASS@residentialpremium.quantumproxies.io:8080

# the same session over SOCKS5, on its own port
USER-country-se-sid-p01-ttl-60m:PASS@residentialpremium.quantumproxies.io:1080

# the four values, if you type them by hand
IP or Hostname   residentialpremium.quantumproxies.io
Port             8080
Username         USER-country-se-sid-p01-ttl-60m
Password         PASS

The username is the whole string, with everything after the first dash: -country-se picks Sweden, -sid-p01 names the session and -ttl-60m keeps it for 60 minutes. Copy it whole. A username cut at the first dash still logs in, but the profile then leaves from a random country on a new IP at every request.

Three notes from Kameleo's page on connection strings: a password with special characters may need URL encoding, an IPv6 address goes in square brackets, and Kameleo guesses the proxy type from the port. That last one matters: after pasting, look at which of HTTP, SOCKS5 or SSH is selected before you test.

Step by step: add a proxy to a Kameleo profile

The QuanticData Endpoint generator for a Residential Premium plan: Sweden selected, Session set to Sticky with a 60-minute TTL, HTTP protocol, output format user:pass@host:port and the preview line, with the username and password blurred
Step 1 in the QuanticData dashboard: country, sticky session, protocol and the user:pass@host:port format that Kameleo parses.
  1. Generate the line. In the QuanticData dashboard open My proxies, then your plan. In the Endpoint generator choose the Country (and a Region or City if the profile needs one), set Session to Sticky, set Session TTL (minutes) to at least the time the profile stays open, choose the Protocol and set Output format to user:pass@host:port. Copy the line from Preview; Connection details shows the same four values one by one.
  2. Open a profile in Kameleo. On the Profiles screen click New, or open an existing profile to edit it.
  3. Match the language to the proxy. Kameleo recommends that the profile's language follows the proxy's country: Swedish (Sweden) for a Sweden line.
  4. Set Proxy to With Proxy and choose the type that matches the port: HTTP for 8080, SOCKS5 for 1080. Leave SSH alone; QuanticData lines are HTTP or SOCKS5.
  5. Paste the line into the IP or Hostname field. Kameleo fills Port, Username and Password. Check that the username arrived whole and that the type is still the one you chose.
  6. Click Test Proxy. The Test Proxy window lists the Server details (address and protocol) and the Test results: your own connection, the proxy over IPv4, HTTPS through the proxy and the location of the IP. The country has to match the -country- in the username.
  7. Close the window and click Save & Start (or Save to start it later). In Advanced settings, keep the Location tab on Automatic: WebRTC, time zone and geolocation then follow the proxy's IP.
Kameleo new profile form with six numbered arrows: 1 language Swedish (Sweden) to match a Sweden proxy, 2 With Proxy, 3 HTTP for port 8080 (SOCKS5 for 1080), 4 the QuanticData line pasted and split into host residentialpremium.quantumproxies.io, port 8080, username USER-country-se-sid-p01-ttl-60m and password, 5 Test Proxy, 6 Save and Start
Steps 3 to 7 in Kameleo, redrawn with our values: the pasted line already split into the four fields.
Kameleo Test Proxy window for residentialpremium.quantumproxies.io:8080 over HTTP: the connectivity and location checks ticked and the server located in Stockholm, Sweden, the result of a real check of a QuanticData Sweden sticky line on 23 October 2026, region Stockholm, time zone Europe/Stockholm, IP masked
The test of step 6. The location is real: a QuanticData Sweden line checked on 23 October 2026 left from Stockholm, time zone Europe/Stockholm.

The test also runs on its own every time a profile starts: Kameleo checks the proxy before it launches the browser, and if the check fails the browser does not open. The test reaches the web through well-known sites (Google, Archive.org, Wikipedia), so a proxy that only allows a short list of domains can fail it while working fine for those domains.

One sticky session per profile

Kameleo's own recommended settings give three proxy rules: never use the same proxy for two different profiles, keep the same proxy on a profile over time, and do not switch proxies while a profile is running (stop it first). A sticky session covers all three. It keeps one IP for as long as the session lives, and the session lives in the username, so the line never has to change once it is saved in the profile.

# profile 1: Sweden, one session for a working day
USER-country-se-sid-p01-ttl-480m:PASS@residentialpremium.quantumproxies.io:8080

# profile 2: same plan, its own session (never reuse p01)
USER-country-se-sid-p02-ttl-480m:PASS@residentialpremium.quantumproxies.io:8080

# profile 3: Sweden, open all day
USER-country-se-sid-p03-ttl-1440m:PASS@residentialpremium.quantumproxies.io:8080
  • A different session ID in every profile. Two profiles on the same line share one IP, which is exactly what Kameleo tells you to avoid.
  • A lifetime longer than the work. The generator accepts up to 1440 minutes, a full day. When the session ends, the next request gets a new IP, and a site can see that as a new login location.
  • The country in the username. Without -country- the exit can be anywhere, and the profile's language and time zone will not match it.
  • A new IP when you want one. Stop the profile, change the session ID (-sid-p02 instead of -sid-p01), test, start. The old line keeps working until its lifetime ends.

With Session set to Sticky, the generator makes as many lines as the Quantity field says, ten by default, each with its own session ID, and Copy all or Download takes them out in the same format. One line per profile. Kameleo's Settings also has Default Proxy Settings, which fill every new profile with the same proxy: handy for the host and port, but change the session ID in each profile before you start it.

The Generate 10 sessions button in the QuanticData Endpoint generator with Copy all and Download, and the list of Sweden sticky lines ready to copy, credentials blurred
One line per profile: every generated line has its own session ID.

Residential Premium, ISP and mobile proxies in Kameleo

Proxy typeIn KameleoGood for
Residential PremiumOne sticky line per profile, pasted as user:pass@host:port; country, region, city or ISP in the username; username and password onlyMost profiles: home IPs in the country you choose
ISPFixed IPs under Assigned IPs, copied as Username:Password@IP:Port; one IP per profileLong-lived accounts that should keep the same address
MobileA Mobile profile (Android or iOS) with a sticky line that has -type-mobile in the username; HTTP 8080 or SOCKS5 1080; IP whitelist availablePhone-first platforms and accounts tied to mobile networks

Residential Premium

Everything above is the Residential Premium setup: the generator's line pasted into the host field, HTTP on 8080 or SOCKS5 on 1080, one session ID per profile. Premium lines authenticate with username and password, so fill both fields. For a local exit, choose a Region or City in the generator; the targeting goes into the username and Kameleo's Location settings follow it. Plans and coverage are on the pages for QuanticData residential proxies and Sweden residential proxies.

ISP

An ISP plan lists its fixed IPs under Assigned IPs. Set its Output format to Username:Password@IP:Port, copy one line and paste it into the IP or Hostname field, exactly like a Residential Premium line. Give each profile one IP and keep it there: the address is static, so there is no session ID to manage, and the profile shows the same IP every time it starts. More on the plans: ISP proxies.

Mobile

Kameleo emulates phones on the desktop: under Device choose Mobile, then Android (Chroma) or iOS (Safari). Its separate Android app stopped working on 28 September 2025, so emulated profiles are the way to run a mobile fingerprint. A mobile proxy goes in the same four fields: in the mobile generator choose the gateway (Global, USA, EU or Asia), Sticky, HTTP 8080 or SOCKS5 1080 and user:pass@host:port, then paste. The username carries -type-mobile and its own -sid-.

Kameleo mobile profile form with four numbered arrows: 1 Device Mobile and OS Android, 2 a QuanticData mobile line on mobile.quantumproxies.io port 8080 over HTTP, 3 the username USER-country-se-type-mobile-sid-p02-ttl-60m with its own session, 4 Save and Start
An Android profile on a QuanticData mobile line from Sweden. Redrawn screen with our values.

Mobile plans also offer IP whitelist authentication: add your computer's IP in the generator's IP whitelist section, take the host:port list it gives, and leave Kameleo's Username and Password empty, which is why they are marked Optional. Pages: QuanticData mobile proxies and Sweden mobile proxies. For why each profile needs its own address, see residential proxies for antidetect browsers.

Setting the proxy from code: Kameleo's local API

Kameleo runs a local API on your computer (by default at http://localhost:5050) with SDKs for Python, JavaScript and C#: the route for profiles started from a script. A proxy is a ProxyChoice: the type, plus a Server with host, port, id (the username) and secret (the password). With a client created as in Kameleo's Quickstart:

from kameleo.local_api_client.models import CreateProfileRequest, ProxyChoice, Server

fps = client.fingerprint.search_fingerprints(browser_product='chrome')
proxy = ProxyChoice(value='http', extra=Server(
    host='residentialpremium.quantumproxies.io', port=8080,
    id='USER-country-se-sid-p01-ttl-60m', secret='PASS'))
profile = client.profile.create_profile(CreateProfileRequest(
    fingerprint_id=fps[0].id, name='SE profile 01', proxy=proxy))

result = client.profile.test_profile_proxy(profile.id)
print(result.result)  # success, partial_success or failure

For SOCKS5 use value='socks5' and port 1080. Kameleo's documentation treats partial_success as usable; a failure comes back as an error, and the profile will not start until the proxy passes. One profile, one session ID, as in the desktop app.

Kameleo proxy not working: errors and fixes

Because Kameleo tests the proxy whenever a profile starts, most proxy problems show up as a profile that will not open. Kameleo's Known Issues page names the message "Failed to start upstream proxy process (10 sec timeout)" and four causes: invalid SSH or SOCKS5 credentials, a wrong host or port, network or firewall restrictions and, rarely, no free TCP port on the computer. These are the cases behind it, in the order to check.

Kameleo profiles list with three Sweden profiles and numbered notes: 1 Start runs the proxy test first and the browser does not open if it fails, 2 the error Failed to start upstream proxy process (10 sec timeout), then what to check in order: 3 the type matches the port (HTTP 8080, SOCKS5 1080), 4 host, port and login exact, 5 the plan active with traffic left
When a profile will not start, and the order of the checks. Redrawn screen.
What you seeUsual causeFix
Failed to start upstream proxy process (10 sec timeout)The type does not match the port, or the host, port or login is wrongHTTP with 8080, SOCKS5 with 1080; paste the line again from Preview
Test Proxy: your own connection passes, the proxy lines failA cut username, a type on the wrong port, or a plan that expired or ran out of trafficCopy the username whole; check the type; in My proxies check status, remaining traffic and expiry
Test Proxy: the direct lines fail tooYour own network: a firewall, an antivirus or a VPN blocks KameleoFix the network first, then test again
The pasted line does not split into the fieldsThe line is in another layout, such as host:port:user:passSet Output format to user:pass@host:port, or type the four values from Connection details
Wrong country, time zone or languageNo -country- in the username, Worldwide in the generator, or Location set to ManualGenerate the line with a country; Location on Automatic; the language of that country
The IP changes in the middle of a sessionThe session lifetime ended, or two profiles share one session IDA longer -ttl- and a different -sid- in every profile
One test line has a cross, the location is foundKameleo calls this a partial success: the site was reached over at least one routeUsable as it is; Kameleo's documentation treats it as a working proxy

One test outside the browser settles most cases in a minute. If this returns an address in the right country, the proxy works and the problem is in the profile's fields:

curl -x http://residentialpremium.quantumproxies.io:8080 \
  -U "USER-country-se-sid-test-ttl-10m:PASS" https://ipinfo.io/json

If the same command fails on your network but works from another one, a firewall or your provider is blocking the connection to the proxy port, which is the network cause in Kameleo's list.

HTTP or SOCKS5 in Kameleo

Both work for browsing, and every QuanticData network offers both. HTTP on port 8080 is the simpler choice and the one to start with. SOCKS5 on port 1080 passes any kind of TCP connection, not only web pages; the details are on the page for SOCKS5 proxies. What breaks a profile is never the choice itself, only a type that does not match its port.

Before you run accounts

A proxy changes where a profile's traffic comes from, not what the profile is allowed to do. Keep to each platform's terms and to the law where you work, and use one profile, one session and one identity per account.

Sources & further reading

FAQ

Quick answers on kameleo proxy.

Something else? Ask us

How do I add a proxy in Kameleo?

Create or open a profile, set Proxy to With Proxy and choose HTTP or SOCKS5 to match the port. Paste the proxy as user:pass@host:port into the IP or Hostname field (Kameleo fills Port, Username and Password), click Test Proxy, then Save & Start. Kameleo tests the proxy again every time the profile starts.

What proxy format does Kameleo accept?

Four fields: IP or Hostname, Port, Username and Password. The documented paste format is username:password@hostname:port in the first field, which Kameleo splits on its own. With QuanticData, set the generator's Output format to user:pass@host:port and copy the line from Preview; for an ISP plan choose Username:Password@IP:Port under Assigned IPs.

Why does Kameleo say "Failed to start upstream proxy process"?

Kameleo could not open the proxy connection within its 10-second limit, so the profile did not start. Its documentation lists invalid SSH or SOCKS5 credentials, a wrong host or port and network or firewall restrictions as the causes. Check that the type matches the port (HTTP 8080, SOCKS5 1080 on QuanticData), paste the line again whole, and test the same values with curl outside the browser.

Can I use a proxy with an Android or iOS profile in Kameleo?

Yes. Kameleo emulates phones on the desktop: choose Device Mobile, then Android or iOS, and add the proxy in the same four fields. A mobile proxy line fits these profiles best; on QuanticData its username carries -type-mobile and a sticky session ID. Kameleo's separate Android app stopped working on 28 September 2025, so emulated profiles are the way to do it now.

Can two Kameleo profiles share one proxy?

They can, but Kameleo itself recommends never using the same proxy on two profiles: two profiles on one sticky line leave from the same IP, which links them. Give each profile its own session ID in the username. The QuanticData generator makes many sticky lines at once, ten by default, each with its own session.

Is Kameleo free?

Kameleo has a Free plan with unlimited local profiles, and any HTTP, HTTPS, SOCKS5 or SSH proxy can be set on each profile on it; it runs up to 2 emulated mobile browsers at a time. Paid plans add concurrent browsers and team features. The current limits are on Kameleo's pricing page. The proxy is separate and comes from your proxy provider.

One sticky IP for every Kameleo profile

Residential Premium, ISP and mobile proxies with country targeting and sticky sessions up to 1440 minutes, HTTP and SOCKS5, copied straight from the endpoint generator into Kameleo.

Related reading