Kameleo to JustBrowser Migration: Re-Mapping Profiles, Proxies, and Automation

13 min read

A Kameleo to JustBrowser migration is a straightforward account management task when you operate profiles legitimately. Profile counts grow, team features become necessary, and a plan that made sense two years ago stops fitting the workflow. If that's you, the move is mostly bookkeeping: export, re-create, re-point. This guide covers the technical steps, not evasion tactics — platform enforcement is platform enforcement regardless of which browser you use.

Plan on an afternoon for a handful of profiles.

Here's what most guides gloss over: the scary part isn't the browser switch itself. It's the automation. Built Playwright scripts against Kameleo's local API? You're re-plumbing your automation stack. That rewrite tends to get postponed for months, and it shouldn't. It's a few lines (see Step 6), and dreading it is worse than doing it.

By the end of this tutorial, you'll have JustBrowser profiles configured with your existing proxies, cookies imported, and automation re-pointed from Kameleo's local API to JustBrowser's REST API.

What You'll Have at the End

Profiles re-created with matching settings. Cookies transferred. Proxies re-bound. Automation scripts updated to call JustBrowser's local REST API instead of Kameleo's.

Budget 15-20 minutes per profile. Add 2-3 hours if you have automation scripts. Yes, it's tedious. But you do it once.

Prerequisites for a Kameleo to JustBrowser Migration

Before starting:

  • Kameleo installed with profiles you're migrating
  • JustBrowser downloaded (Windows x64 or macOS on Apple Silicon) with the 7-day trial, card required, for testing
  • Cookie export extension installed in Kameleo profiles (Cookie-Editor or similar)
  • Proxy credentials documented — host, port, username, password for each profile
  • Kameleo local API access if you're running automation (runs on port 5050 by default)
  • 90 minutes for your first batch of 3-5 profiles

JustBrowser has one plan: $9.99/month or $99.99/year, unlimited profiles, no free tier. You migrate 5 profiles or 50 for the same cost. If you want to compare multi-account browsers first, see how JustBrowser differs from Multilogin, GoLogin and AdsPower.

Step 1: Document Your Kameleo Setup

Kameleo organizes profiles differently than most multi-account browsers. Each profile has a "base profile" (the identity template) plus browser-specific configurations. Before exporting anything, map what you have.

Open Kameleo and build a migration spreadsheet:

Profile NameBase Profile TypeBrowserProxy HostTimezonePlatformPriority
FB-BM-02Desktop ChromeChromiumus.proxy.io:8080America/New_YorkFacebook BMCritical
AMZ-UK-01Desktop FirefoxFirefoxuk.proxy.io:8080Europe/LondonAmazon UKHigh
TIKTOK-03MobileChromiummobile.proxy.io:5555America/Los_AngelesTikTok ShopMedium

Why this matters: Kameleo supports Firefox-based profiles alongside Chromium. JustBrowser has both too: Chrome profiles run its own Chromium engine, and Firefox profiles run a real Firefox engine. Rendering values such as the canvas hash still differ from what Kameleo produced, because each tool generates them its own way. Document which profiles use which engine so you can recreate them with the right one.

JustBrowser also has mobile profiles, which present Chrome on Android's client hints, memory range and touch screen. Treat that as a close approximation of a phone, not an exact copy of one, and note there's no mobile app.

Multi-account browsers don't share a profile format, which is why this step is manual.

Cookies live inside each Kameleo profile, so you export them one profile at a time.

Method A: Browser extension (straightforward)

  1. Open the Kameleo profile you're migrating
  2. Navigate to the platform — Facebook, Amazon, wherever
  3. Confirm you're logged in. Stale sessions export worthless cookies.
  4. In your cookie extension, export the cookies as JSON
  5. Save: fb-bm-02-cookies.json

Method B: Your existing Kameleo automation (faster for bulk)

Kameleo runs a local REST API on port 5050. If you already drive Kameleo profiles with Playwright, reuse the start-and-connect code from your own scripts, then read the cookies from the running profile and save them:

import json

# `browser` is the Playwright connection your existing Kameleo script already opens
context = browser.contexts[0]
with open("fb-bm-02-cookies.json", "w") as f:
    json.dump(context.cookies(), f)

The critical part: export while actively logged in. Server-side session expiration makes old cookie exports useless. If your last session was two weeks ago, open the profile, verify authentication, then export.

For each profile, you should now have: a cookie file + proxy credentials + documented settings.

Step 3: Create Matching Profiles in JustBrowser

Open JustBrowser. Create a new profile. Match the Kameleo settings that matter.

Settings that should match:

  • Operating System: Windows 11 in Kameleo stays Windows 11. macOS stays macOS.
  • Timezone: Set it to the proxy's location. New York proxy = America/New_York.
  • Language: Set it to the proxy's location. US proxy = en-US primary.
  • Screen Resolution: Match exactly. 1920x1080 stays 1920x1080.
  • WebGL Vendor/Renderer: Match if possible. Kameleo shows these in profile settings.

Settings that will differ (and that's fine):

  • Canvas hash — Different engines produce different hashes. Normal.
  • Audio fingerprint — Regenerates. Expected.
  • Navigator.hardwareConcurrency — Can vary.

Matching hardware values exactly is mostly overkill for a migration. Obsessing over a canvas hash while a rotating proxy changes your IP every request is backwards. A stable proxy, timezone and language per profile matters more, because that's what keeps each profile internally consistent. The audio and hardware fingerprinting guide explains how those parameters work.

Proxy configuration:

Enter your existing proxy credentials exactly. Same host, same port, same auth. JustBrowser has a built-in proxy tester, so use it. Wrong IP or country? Debug first. One digit typo in a port number sends the profile out through the wrong place, and you won't notice until a login misbehaves.

Step 4: Import Cookies and Verify Sessions

In JustBrowser's profile settings, find cookie import. Paste JSON or upload the file from Step 2.

After import: launch the profile, navigate to the platform, check login state.

Logged in? Move to the consistency check.

Logged out? Something broke. Common causes:

  • Expired cookies — Session died server-side between export and import. You'll need to re-authenticate.
  • Format issues — Some Kameleo cookie exports include metadata fields that confuse import. Strip to: name, value, domain, path, expiration.
  • Domain mismatch — Cookies for .amazon.com don't apply to amazon.co.uk.

Re-authenticating isn't a disaster. Have 2FA codes ready and sign in normally from the profile. The ISP proxy guide covers session handling when proxies are involved.

Step 5: Check Each Profile Before Production Use

Do not skip this.

Before you rely on a migrated profile for real work:

  1. Launch the profile in JustBrowser
  2. Open the proxy tester and confirm the exit IP, country, city and timezone are the ones you expect
  3. Check that the profile's timezone and language agree with that location
  4. Run the profile's fingerprint consistency report from the local API (GET /profiles/{id}/fingerprint/validate) and read what it flags
  5. Launch it a second time and confirm the values you set haven't changed

If something is off, check timezone against proxy location first. It's the most common culprit. Then language settings. Then OS and engine choice.

Step 6: Migrate Automation from Kameleo's Local API

This is the step people dread. The automation rewrite sounds scary. It's not, but you need to understand the differences.

Kameleo's approach:

Your existing scripts start a profile through Kameleo's local API (port 5050 by default), then attach Playwright, Puppeteer or Selenium to that running profile using the connection address Kameleo's docs give for each framework. Keep that code open next to the new version.

JustBrowser's approach:

JustBrowser's REST API is local too. It's bound to 127.0.0.1 (port 36542 by default, configurable in the app), and there's no hosted endpoint. You start a profile, get a cdp_url back, connect the same way.

# New JustBrowser code
import requests

# Start profile. The Bearer token comes from the AI page in the app.
response = requests.post(
    "http://127.0.0.1:36542/api/v1/profiles/xyz789/start",
    headers={"Authorization": "Bearer YOUR_API_TOKEN"},
    json={"headless": False}  # the API starts headless unless you say otherwise
)
cdp_url = response.json()["data"]["cdp_url"]

# Connect Playwright, reusing the profile's own context
browser = playwright.chromium.connect_over_cdp(cdp_url)
context = browser.contexts[0]

The shape is the same: start the profile, then attach. You're swapping:

  • Kameleo's start call for POST 127.0.0.1:36542/api/v1/profiles/{id}/start
  • Kameleo's connection address for the cdp_url that call returns
  • adding Bearer token auth

Three changes, and the connection code is the whole rewrite. Two things to watch: use contexts[0] rather than new_context() (a new context sits outside the profile), and end the session with POST /profiles/{id}/stop, because browser.close() only disconnects. The full operation list is at justbrowser.app/docs.

Puppeteer and Selenium follow the same pattern. For Selenium, pin ChromeDriver to the core's major version or the attach fails. The operation reference at justbrowser.app/docs has an anchor for each endpoint, which makes porting each library's connection code a copy-and-adjust job.

Headless mode:

Send {"headless": false} when you want a visible window. Leave it out and the profile starts headless, with headless-default screen and viewport values, so use headed mode for sessions you'll watch or hand to a person. Either way the JustBrowser desktop app has to run on the machine, which means Windows x64 or macOS (Apple Silicon). There's no Linux build, so a Linux CI runner or VPS isn't a target.

Step 7: Run Parallel for Two Weeks

Don't cancel Kameleo immediately. Run both tools in parallel for two weeks. Keep Kameleo profiles as backup. Watch for session instability, extra verification prompts and automation failures.

No issues after two weeks? Decommission Kameleo. Cancelling on day one leaves you with no fallback if something breaks on day three, so don't.

Common Errors and Fixes

Cookies imported but session is gone

Cause: Cookies expired server-side, or exported while logged out.

Fix: Re-authenticate from the JustBrowser profile. Keep the same proxy, timezone and language. Have 2FA codes ready.

Proxy connection fails in JustBrowser

Cause: Credentials wrong, or provider requires IP whitelisting.

Fix: Some providers require you to whitelist your machine's IP. If you're migrating to a new machine, add it to the allowlist. Double-check every credential field.

Firefox profile values don't match

Cause: Kameleo's Firefox profiles and JustBrowser's Firefox engine are different implementations. Canvas, WebGL, and audio values will differ because each tool generates them its own way.

Fix: This is expected. Recreate the profile as a Firefox profile in JustBrowser, document which ones those are, and set the same proxy, timezone and language.

Settings don't line up with the proxy

Cause: Usually timezone vs proxy location.

Fix: Verify timezone = proxy timezone, language = proxy country language. Disable browser extensions while you test, since some modify browser APIs.

Automation scripts fail to connect

Cause: Wrong endpoint, missing Bearer token, or profile ID format differs.

Fix: JustBrowser profile IDs are different from Kameleo UUIDs. You can't copy-paste IDs directly. Map old IDs to new IDs in your automation code. Check the API response for error messages — errors come back as {"error": {"code", "message"}}, so branch on error.code, not the message text.

The Pricing Comparison

Kameleo: plans are tiered. Check Kameleo's pricing page for current figures rather than trusting a number in a blog post.

JustBrowser: one plan — $9.99/month or $99.99/year for unlimited profiles, REST API and CDP. No free tier. You start with a 7-day card-required trial that auto-converts to paid unless cancelled. Team seats are included at no extra cost (though a seat can only run profiles shared with it, not create its own).

Running a lot of profiles? A flat rate with no profile cap is easy to model against a tiered plan. Running a handful? Run the math, it might be a wash. Honestly, pricing comparisons are mostly a distraction. Pick the tool that doesn't break your workflow. The trial lets you test before committing.

Next Steps

Once test profiles run clean for a week: batch migrate remaining profiles (5-10 per hour after the first few), update automation scripts with new endpoints and profile ID mappings, and run parallel for two weeks with Kameleo as backup.

Migration is tedious. Nobody enjoys it. But if Kameleo's plan stopped fitting how you work, the switch is worth the afternoon of careful work. Test everything. Migrate in batches. And for the love of all that is holy, don't migrate your most valuable profile first.

Frequently Asked Questions

Can I export Kameleo profiles directly into JustBrowser?

No direct import exists. Kameleo profiles are stored in Kameleo's own format. You'll export cookies with a browser extension or through your existing Kameleo automation, document proxy credentials, then recreate profiles in JustBrowser with matching settings. Plan 15-20 minutes per profile for critical accounts.

Do I need to change anything about my accounts when I switch browsers?

Nothing about the accounts themselves. Keep the same proxy, timezone and language on each profile so each one stays consistent, and expect one fresh login with 2FA if a cookie import doesn't carry the session over. Switching browsers does not evade platform enforcement or bans — it's just a tool change for accounts you already own and operate legally.

How do I migrate my Kameleo local API automation scripts?

Kameleo runs a local API on port 5050. JustBrowser exposes a local REST API with CDP endpoints for Playwright, Puppeteer, and Selenium. The automation logic transfers, but you'll rewrite connection strings and profile launch calls. The API is local (127.0.0.1) and documented at justbrowser.app/docs.

Is JustBrowser cheaper than Kameleo?

Different pricing models. Kameleo's plans are tiered, so check their pricing page for current figures. JustBrowser is one plan at $9.99/month for unlimited profiles, or $99.99/year on annual billing, after a 7-day card-required trial. With a large profile count a flat rate is easy to model; with a handful, run the numbers for your specific usage.


Try JustBrowser

A multi-account browser for teams, built on a custom Chromium engine with native C++ integration, not an extension. Real C++ engine patches at the canvas / WebGL / audio / font / screen layer, across 40+ identity parameters. Local REST API + CDP for Playwright, Puppeteer, Selenium. One plan: $9.99/month or $99.99/year. 7-day card-required trial — cancel before it ends and you're not charged. Unlimited profiles, free team seats.

Get started → · How it differs from Multilogin / GoLogin / AdsPower

Tags
  • kameleo-migration
  • multi-account-browser
  • profile-export
  • api-migration
  • proxy-configuration
  • buildinpublic
  • saasstudio
  • aiworkforce
  • buildwithclaude

Ready to manage multiple accounts?

Seven days free, then $9.99/month — one plan, everything included.

We'd like to use Google Analytics, a Google service, to understand how our website is used. It sets two cookies in your browser and runs only if you click Accept. You can change your choice at any time with Cookie settings. Cookie Policy

Sign-in cookies and the cookie that remembers this choice are always on; the website needs them to work.

Google Analytics, a Google service, helps us understand how our website is used. It sets two cookies, _ga and _ga_TVZHQ99TZW. It is now onoff in this browser. If your browser sends a Global Privacy Control or Do Not Track signal, it stays off. Cookie Policy