Skip to content

Migration

Outgrowing Octo Browser.Good automation, someone else's storage.

Octo is the closest of the three on automation ergonomics and the furthest from you on custody. If you have hit the API paywall or the storage question, this is the comparison.

Every claim about Octo Browser on this page links the page it came from, read on 2026-07-27.

Rows compared
31
Rows unverified
6
Things Octo Browser does better
5
Sources read on
2026-07-27

01Their ceiling

Why teams leave

Where Octo Browser stops

Four limits from Octo's own documentation and pricing page. Two of them are pricing decisions and two are architectural.
  • Custody

    Profile data lives in Octo's cloud

    Profiles are held in Octo's cloud storage so they can be opened from several devices, and their cloud API is the only control plane. There is no self-hosted deployment and no customer-operated fleet.
  • Automation

    No API below the third paid plan

    Octo states the API is available from the Base plan upward, so Lite and Starter cannot be automated at all. Base is €79 a month billed monthly and includes 100 profiles.
  • Teams

    Team management starts at Team

    Lite, Starter and Base carry no seats. Team includes three and allows up to six; Advanced includes eight and sells more. Their permission model is genuinely good, and it begins at €169 a month.
  • Cost shape

    Profiles and seats are add-ons

    Both are bought on top of the plan, so a headline price is a floor rather than a total. Term discounts of 10, 20 and 30 percent mean a quoted price also depends on how long you commit.

02Full table

Row by row

31 rows against Octo Browser

Every cell carries its note and the page it was read from. Where an answer could not be settled from Octo Browser's own documentation, the cell says unknown rather than no.
31 rows comparing VeilBrowser with Octo Browser
What is comparedVeilBrowserOursOcto Browser
Where it runsWhich machines execute the browser, and whose infrastructure holds the data.
Browser execution locationThe machine the Chromium process actually runs on.The customer's own machine, or a customer-operated worker fleet. Only the local API spawns browser processes.

The cluster manager load-balances launches across worker hosts with an OpenResty least-connections upstream; it never runs browsers itself.

VeilBrowser local-api browser service, read from our codebase on 2026-07-27

Profiles run in the Octo Browser desktop app on the user's machine; the local client API is served from that app.

The local API listens on 127.0.0.1:58888 only and has no remote access.

Octo Browser local client API docs, read 2026-07-27

Self-hostable control planeCan the management plane run on customer infrastructure at all.Yes

One command, one input. The installer states the org API key is the only required value.

VeilBrowser cluster-manager installer, read from our codebase on 2026-07-27

No

The cloud API at app.octobrowser.net is the only control plane, and profile data is held in Octo's cloud storage. No self-hosted deployment is offered.

Octo Browser pricing, read 2026-07-27

Self-hostable browser fleetCan a pool of browser workers be operated by the customer.Yes

Worker hosts are registered as fleet hosts and receive launches through the cluster manager's load balancer; per-worker concurrency is capped by VEIL_MAX_BROWSERS.

VeilBrowser cluster load balancer template, read from our codebase on 2026-07-27

No

Profiles run on operator desktops. There is no customer-operated worker fleet.

Octo Browser local client API docs, read 2026-07-27

Where profile data livesPartial

Sessions, fleet state and profile bundles stay on customer disks in per-host SQLite. Accounts, organisations and cloud profile configuration currently live in the vendor-hosted PostgreSQL, and workers fetch profile config from it at launch.

VeilBrowser architecture decisions, read from our codebase on 2026-07-27

Profile data is encrypted in Octo's cloud storage and can be accessed from multiple devices.

Octo Browser pricing, read 2026-07-27

Platforms and mobileWhat a profile can present itself as, and whether mobile means a real device.
Profile OS targetsThe operating systems a profile can present, not the OSes the app installs on.win, mac, linux, android

Canonical enum in the shared schemas. The dashboard profile form currently omits android, which is a UI gap rather than a platform limit.

VeilBrowser shared Zod schemas, read from our codebase on 2026-07-27

Windows, macOS Intel, macOS ARM and Android.

Chosen at creation and immutable afterwards. Windows 10 and 11, macOS 12 to 15, Android 12 to 15 are the documented versions.

Octo Browser profile settings, read 2026-07-27

Android profilesPartial

Android is a profile fingerprint target with real device models resolved from installed profile bundles. It is not a hosted Android device.

VeilBrowser profile bundle service, read from our codebase on 2026-07-27

Partial

Android mobile fingerprints, added in version 2.7, present the profile as a phone or tablet using real device models. Mobile profiles support neither browser extensions nor screen resolution changes.

Octo Browser 2.7 release notes, read 2026-07-27

iOS profilesNo

No iOS target exists in the OS enum.

No

The fingerprint OS enum is win, mac and android only.

Octo Browser fingerprint API docs, read 2026-07-27

Real devices or emulationWhether mobile support is hosted hardware or a spoofed fingerprint.Emulation only, on worker-hosted Chromium.

No cloud phone or real-device fleet exists anywhere in the codebase.

VeilBrowser shared Zod schemas, read from our codebase on 2026-07-27

Emulation. Octo's own release note says the browser “can fully emulate an Android mobile device”.

Octo Browser 2.7 release notes, read 2026-07-27

Automation surfaceHow code drives the browser, and what a subscription gates.
Chrome DevTools Protocol accessYes

Launch returns a standard `ws://127.0.0.1:<port>/devtools/browser/<id>` endpoint.

VeilBrowser local-api browser service, read from our codebase on 2026-07-27

Yes

Starting a profile with debug_port returns a CDP WebSocket endpoint; the port can be pinned in the range 1024 to 65534 for parallel runs.

Octo Browser local client API docs, read 2026-07-27

PuppeteerYes

Connects to the returned CDP WebSocket endpoint directly.

VeilBrowser local-api browser service, read from our codebase on 2026-07-27

Yes

Octo Browser API docs, read 2026-07-27

PlaywrightYes

connectOverCDP against the returned WebSocket endpoint.

VeilBrowser local-api browser service, read from our codebase on 2026-07-27

Yes

Octo Browser API docs, read 2026-07-27

SeleniumPartial

Works through the same debug port via Selenium's debuggerAddress, but there is no Selenium-specific code path or worked example in the repository yet.

VeilBrowser local-api browser service, read from our codebase on 2026-07-27

Yes

Via the returned debug port as Selenium's debuggerAddress.

Octo Browser API docs, read 2026-07-27

REST APIYes

Cloud routes under /v1 for profiles, organisations, sessions, plans and billing; local routes for sessions, profiles, fleet and cluster operations.

VeilBrowser SaaS API routes, read from our codebase on 2026-07-27

Yes

A cloud automation API covering profiles, proxies, tags, folders, fingerprint lookups and team permissions, plus the local client API.

Octo Browser API docs, read 2026-07-27

First-party typed SDKA vendor-maintained, typed client library, not community samples.Yes

@veil/api exposes typed Eden clients for both the local and cloud APIs, derived from the server types.

VeilBrowser typed API client, read from our codebase on 2026-07-27

Unknown

Documentation and Postman examples across several languages, but no first-party typed client library was found.

API needs a paid planNot summarised

Ours to answer, and we cannot yet. The gate exists in the plan definitions and is not enforced by the API, so either answer would be falsifiable.

Yes

Octo states the API is available for Base and higher subscription plans. Lite and Starter have no API access.

Octo Browser API docs, read 2026-07-27

Published API rate limitsBase 50/min and 500/hour, Team 100/min and 1,500/hour, Advanced 200/min and 3,000/hour.

VeilBrowser plan seed, read from our codebase on 2026-07-27

Base 50/minute and 500/hour, Team 100/minute and 1,500/hour, Advanced 200/minute and 3,000/hour, expandable to 1,000/minute and 50,000/hour. Custom is unlimited.

Starting a profile costs 1 request and a one-time profile costs 4; other local API calls do not count.

Octo Browser API docs, read 2026-07-27

Proxies and identity coherenceProtocol coverage, per-profile assignment, and whether the identity follows the exit IP.
Proxy protocolshttp, https, socks5, socks5h

socks5h keeps DNS resolution at the proxy exit. One local service still parses a legacy socks4 value that is not in the canonical schema.

VeilBrowser shared Zod schemas, read from our codebase on 2026-07-27

HTTP, HTTPS, SOCKS5 and SSH. The API additionally accepts a socks value for SOCKS4. IPv6 is supported in the hostname field.

Octo recommends SOCKS5 or SSH. socks5h is not offered.

Octo Browser proxy types, read 2026-07-27

Per-profile proxy assignmentYes

Each profile stores its own proxy, and a launch may pass a per-session override.

VeilBrowser shared Zod schemas, read from our codebase on 2026-07-27

Yes

Proxies are either saved records referenced by UUID or supplied inline on a single profile.

Octo Browser proxies API docs, read 2026-07-27

Timezone, locale and geolocation from the exit IPWhether the profile derives IP-dependent values automatically.Yes

Derived by the browser build rather than by the platform API, which is why it is not visible in an API surface. The browser core's CLI reference documents timezone, locale, languages and location as IP-based by default, with flags that exist only to override the automatic behaviour. Auto-detection requires the proxy to arrive as --proxy-server, which is how the launch path passes it.

VeilBrowser local-api browser service, read from our codebase on 2026-07-27

Yes

The fingerprint object accepts a type of “ip” for languages, timezone, geolocation and WebRTC, which derives each from the exit IP.

Octo Browser fingerprint API docs, read 2026-07-27

Proxies sold in-productNo

No proxy purchasing, traffic metering or bundled IP pool exists.

VeilBrowser shared Zod schemas, read from our codebase on 2026-07-27

Partial

A Proxy Shop sells proxies inside the app with volume discounts, but no proxy traffic is included in a subscription.

Octo Browser pricing, read 2026-07-27

Rotation / change-IP URLNo

No change-IP URL, rotation scheduler or proxy health check in code.

VeilBrowser shared Zod schemas, read from our codebase on 2026-07-27

Yes

Saved proxies carry a change_ip_url field used by the rotate-IP action.

Octo Browser proxies API docs, read 2026-07-27

Teams and access controlSeats, permission granularity and what an operator can audit.
Team seats1, 2, 5, 15 and 50 seats from Lite through Advanced.

Enforced on invite against the organisation's member limit.

VeilBrowser plan seed, read from our codebase on 2026-07-27

None on Lite, Starter and Base. Team includes 3 seats and allows up to 6. Advanced includes 8 with unlimited additional seats.

Team management is only available on Team and higher.

Octo Browser pricing, read 2026-07-27

Permission granularityThree organisation roles: owner, admin, member. The self-hosted cluster manager has its own admin, operator and viewer roles.

Coarser than a per-action permission matrix; there is no per-profile or per-folder scoping.

VeilBrowser SaaS Prisma schema, read from our codebase on 2026-07-27

Yes

Per-action permissions for profiles (create, edit, delete, transfer, clone, passwords), proxies, templates, extensions and tasks, plus manage_team, edit_tags, view_all_tags and manage_action_log. Profile visibility is scoped by folder or by tag.

Octo Browser teams API docs, read 2026-07-27

Activity / audit logPartial

The self-hosted cluster manager records fleet operations. The cloud side has an auditLogs plan flag but no audit log model or endpoint.

VeilBrowser plan seed, read from our codebase on 2026-07-27

Yes

An Action Log records team member activity and is itself permission-gated.

Octo Browser teams API docs, read 2026-07-27

Two-factor authenticationNo

Not offered. Account login is email and password plus Google or GitHub OAuth, with no second factor. All three competitors publish two-factor authentication, so this is a gap rather than a decision about what the product is for.

VeilBrowser auth configuration, read from our codebase on 2026-07-27

Yes

Two-factor authentication on accounts plus optional per-profile launch passwords.

Octo Browser homepage, read 2026-07-27

SAML / OIDC single sign-onNo

An sso plan feature flag exists, but there is no SAML or OIDC implementation. Google and GitHub OAuth cover user login only.

VeilBrowser plan seed, read from our codebase on 2026-07-27

Unknown

No SAML or OIDC offering found on their pages.

Compliance and trustOnly certifications and statements the vendor publishes themselves.
SOC 2No

No attestation.

Unknown

No attestation published on their own site.

ISO 27001 / 27701No

No certification.

Unknown

No certification published on their own site.

Published GDPR positionUnknown

No published position to cite yet. Legal review pending.

Unknown

Octo describes account and profile encryption and says it does not access profile activity, but no GDPR position was found on their own pages.

Customer control over data locationPartial

A self-hosted deployment keeps fleet state, sessions and profile bundles on customer infrastructure in a chosen location. Account and cloud profile records still sit in the vendor database, so this is not yet full residency control.

VeilBrowser architecture decisions, read from our codebase on 2026-07-27

Unknown

No storage region is published.

Publishes comparison pagesNoPartial

Blog-style alternatives round-ups rather than dedicated compare pages. Their AdsPower alternatives post names Multilogin, Dolphin Anty, GoLogin and others.

Octo Browser AdsPower alternatives, read 2026-07-27

Reading the table

Yes
Documented and available.
Partial
Available with a documented limit, named in the cell.
No
Documented as absent, or absent from every page we read.
Unknown
Not verifiable from their own pages. Not the same as absent.
Not summarised
Their published pages do not agree, so we do not characterise it.

03Where they win

Conceded

Where Octo Browser is stronger

Written down so it cannot be edited out later. If one of these rows is your requirement, the rest of this page does not matter.
  • Octo's team permission model is more granular than VeilBrowser's: per-action flags for profiles, proxies, templates, extensions and tasks, plus folder or tag scoped profile visibility.
  • An action log is a shipped feature with its own permission, where VeilBrowser only has a plan flag on the cloud side.
  • Their local client API is well documented, including pinned debug ports for parallel runs and one-time profiles that self-delete after a session.
  • SSH tunnels, SOCKS4 and IPv6 proxies are supported; VeilBrowser supports none of those.
  • A per-proxy change-IP URL is a first-class field, which matters for mobile proxy workflows VeilBrowser cannot serve today.

None of this is hedged. If one of these is the thing your work depends on, the honest recommendation is to stay where you are.

04Price

Their list, and ours

What Octo Browser costs, and what we cost

Their figures are quoted from their own pricing page with every caveat that page carries. A published price in this category is a floor rather than a total.
Octo Browser published plans, with profiles, seats and API rate limits
PlanMonthlyAnnual, per monthProfilesSeatsAPI rate limit
Lite€10€73NoneNo API access
Starter10 profiles included, up to 20 more purchasable.€29€2110 to 30NoneNo API access
BaseLowest plan with API access. 100 profiles included, up to 100 more.€79€56100 to 200None50 requests/minute, 500 requests/hour
Team€169€119350 to 6003 to 6100 requests/minute, 1,500 requests/hour
Advanced8 seats included, unlimited additional seats purchasable.€329€2311,200 to 100,000Unlimited200 requests/minute and 3,000 requests/hour included, expandable to 1,000/minute and 50,000/hour
CustomIncludes a personal manager and one-time profiles.On requestOn requestUnlimitedUnlimitedUnlimited

What the Octo Browser list price does not say

  • Priced in euros and shown excluding VAT, so the charged total is regional.
  • The plan cards and the feature table disagree on profile counts. The cards show the maximum reachable with paid add-ons (3, 30, 200, 600, 100,000) while the table shows what is included (3, 10, 100, 350, 1,200). Always show which number you mean.
  • Annual totals are computed from Octo's advertised per-month rate at the 12-month term; Octo publishes the monthly figure, not the total.
  • Term discounts are 10% at 3 months, 20% at 6 months and 30% at 12 months, so a quoted price depends on commitment length.
  • Team seats and profiles are add-on purchases, so realised cost frequently exceeds list price.

Octo Browser pricing, read 2026-07-27

VeilBrowser

Our plans scale by profiles, seats and API volume, and seats are part of the plan rather than a separate purchase. The amounts live on the pricing page, which reads the live plan records instead of a marketing table.

Enterprise starts at $5,000 and covers the self-hosted deployment, the fleet size you need and the support around it. No billing period is quoted on that number because the scope decides it.

05Switching

The move

What moving actually involves

Four steps, and the part that does not move. Nothing here imports Octo Browser profiles, so the cost is real and it is stated before the call rather than during it.
  • 01

    Describe the devices you need

    An operating system target, a Chrome major between 135 and 150, an optional Android model and a proxy. Creation is one profile per call, from the API or the dashboard, so a set of forty is a short script, and a browser build is matched and pinned to each one.
  • 02

    Point the proxies you already have at them

    One proxy per profile over HTTP, HTTPS, SOCKS5 or SOCKS5H. Nothing has to be bought here, because no proxy traffic is sold here: your existing proxy strings move across as they are.
  • 03

    Run a worker on a machine you own

    One container on one host is enough to start, and the same image is what a larger fleet is made of. Browsers execute there rather than on our infrastructure.
  • 04

    Reconnect the automation

    A launch returns a standard CDP WebSocket endpoint, so Puppeteer connects to it and Playwright attaches over CDP with no vendor shim. Selenium works through the same debug port, though there is no worked example in our documentation yet.

What does not move

  • Cookies and signed-in sessions do not transfer. There is no importer for another platform's profile export, so a profile that is already logged in somewhere logs in again here.
  • Fingerprints are not copied across. A profile here is a browser build plus a route, so an identity is recreated rather than migrated, and it is a new device from its first launch.
  • There is no hosted mobile device and no proxy traffic for sale. If either is load-bearing in your current workflow, it stays outside this platform.
  • We hold no security certifications. If your review requires an attestation from the vendor rather than control of the infrastructure, that is a blocker today and we will say so on the call.

Octo's per-action permissions and its action log are finer than our three organisation roles, and its proxy support covers SSH, SOCKS4 and IPv6, which ours does not. Those rows do not improve by switching.

The getting-started path is public documentation, so the whole migration can be read before anyone asks you for a decision.

06Sources

Footnotes

What we read about Octo Browser, and what we could not settle

Every page was read on 2026-07-27. The positioning below is quoted from Octo Browser in their own words.

Octo Browser in their own words

“Antidetect browser for multi-accounting” — work with thousands of unique profiles from a single device, each with the digital fingerprint of a real device.

Octo Browser homepage, read 2026-07-27

Rows we could not verify (6)

First-party typed SDK
Documentation and Postman examples across several languages, but no first-party typed client library was found.
SAML / OIDC single sign-on
No SAML or OIDC offering found on their pages.
SOC 2
No attestation published on their own site.
ISO 27001 / 27701
No certification published on their own site.
Published GDPR position
Octo describes account and profile encryption and says it does not access profile activity, but no GDPR position was found on their own pages.
Customer control over data location
No storage region is published.

Octo Browser pages read

Octo Browser publishes 1 comparison pages of their own. This is the same exercise run in the other direction, with the sources attached.

Outgrowing Octo Browser?

Tell us which ceiling you hit and what you run against. If VeilBrowser does not clear it, the call is short and nobody has lost an evaluation cycle.

The difference
The fleet runs on your machines, and the control plane can too
Conceded
Octo Browser has real advantages, listed above and not hedged
Entry
Pick a plan, or enterprise from $5,000

Every competitor claim on this page is dated and linked to the page it came from.