3 entries in this register are declared substitutes for, successors to or predecessors of Multilogin, and all of them are still shipping at the last field check. Multilogin itself reads ACTIVE. Every row in the table below is judged by the same rubric, from the same sweep, on the same fields — this page ranks nothing and recommends nothing, because a register that has measured no population is in no position to.
Every row below is judged by the same rule as Multilogin itself, from the
same field check. Supersession is only printed where a project or its
author says so — this register does not infer that one tool replaces
another because it is newer.
Read the state column with the licence column. A permissively licensed
project that stopped shipping is not safer than a copyleft one that did
not.
What Multilogin does, so you know what you are replacing
The long-running commercial incumbent in this category, and the product most open-source entries in section 01 position themselves against by name in their own README files.
A substitute has to do that job, not merely occupy the same category. Closed source means the only fields this register can check are the ones an HTTP request returns, which is why this entry's access block is thinner than a repository's. Nothing about its detection behaviour has been tested here.
How this register decides what counts as an alternative
BotBrowser, Camoufox, Donut Browser are recorded as substitutes for the same job. The alternative relation is symmetric and carries no ordering at all: it says these things answer the same question, and it says nothing whatsoever about which answers it better.
Nothing on this page is a ranking, a score or a recommendation, and nothing on it is a detection-test result — no entry in this register has been run against any anti-bot system by this register. What the table gives you is four measured columns and one derived one, applied identically to every row.
How to read the comparison above
Every candidate reads ACTIVE or SEMI, so the choice here is genuinely about fit rather than about survival. Compare the release column rather than the push column: a project that pushes constantly and tags rarely asks you to depend on a branch, which is a different commitment from depending on a version.
Every entry in the table declares a licence, which is less common in this catalogue than it should be — the entries that declare none are grouped separately. Read the licence column beside the state column rather than after it: a permissively licensed project that stopped shipping is not a safer dependency than a copyleft one that did not.
Why ACTIVE: pushed_at = 2026-08-08 — 6 days, within the 90-day ACTIVE threshold.
Field
Value at this printing
pushed_at
2026-08-08
archived
false
latest_release
151.0.7922.47 · 2026-08-06
license.spdx_id
MIT
stargazers_count
2600
http_status
200
fetched_at
2026-08-14T09:12:00Z
rubric_edition
2nd, in force
Endpoint: GET https://api.github.com/repos/botswin/BotBrowser
unauthenticated · 60 req/hr
A live read does not change what is printed above it. The site records that you ran it; what GitHub returned is not kept. The printed state moves only when the register is swept and a new printing is issued. raw JSON
The vendor list in its README is a claim about vendors, not a measurement of them. This catalogue records that the claim is made; it does not repeat it as a result. — ED.
Why ACTIVE: pushed_at = 2026-08-12 — 2 days, within the 90-day ACTIVE threshold.
Field
Value at this printing
pushed_at
2026-08-12
archived
false
latest_release
v152.0.4-beta.28 · 2026-07-19
license.spdx_id
MPL-2.0
stargazers_count
11100
http_status
200
fetched_at
2026-08-14T09:12:00Z
rubric_edition
2nd, in force
Endpoint: GET https://api.github.com/repos/daijro/camoufox
unauthenticated · 60 req/hr
A live read does not change what is printed above it. The site records that you ran it; what GitHub returned is not kept. The printed state moves only when the register is swept and a new printing is issued. raw JSON
Engine-level patching is the reason this one keeps working when JS-patch stacks stop. The beta tag has been the shipping tag for months; read that as a release policy, not as instability. — ED.
Anti-detect browser and profile manager. Ships the Wayfern Chromium fork, which spoofs at the engine level over CDP rather than by patching JavaScript, plus a local REST API and MCP server on the user's own machine.
Why ACTIVE: pushed_at = 2026-08-12 — 2 days, within the 90-day ACTIVE threshold.
Field
Value at this printing
pushed_at
2026-08-12
archived
false
latest_release
v0.29.3 · 2026-08-12
license.spdx_id
AGPL-3.0
stargazers_count
3600
http_status
200
fetched_at
2026-08-14T09:12:00Z
rubric_edition
2nd, in force
Endpoint: GET https://api.github.com/repos/zhom/donutbrowser
unauthenticated · 60 req/hr
A live read does not change what is printed above it. The site records that you ran it; what GitHub returned is not kept. The printed state moves only when the register is swept and a new printing is issued. raw JSON
Both halves are in the repo — the desktop app and the sync server — under AGPL-3.0, and a grep of src/, src-tauri/src and the manifests finds no analytics SDK. Twelve releases between 2026-03-24 and 2026-08-12. Its README's claim about not being detected by named vendors is unsupported by anything in that repo; ignore it and judge the fields. — ED.
Answered from the same fields the table above prints, and from no other source.
What is the best alternative to Multilogin?
This register does not answer that, because it publishes no ranking and has tested no tool to rank. What it can tell you is which candidates are still shipping: BotBrowser, Camoufox, Donut Browser. The rest of the decision is fit, licence and how much of your own stack you are prepared to change.
Are these Multilogin alternatives still maintained?
BotBrowser reads ACTIVE, Camoufox reads ACTIVE, Donut Browser reads ACTIVE. Each of those states is derived from that entry's own measured fields by the rubric in force, at the field check printed in the folio, and the clause that produced it is printed on the entry page.
Why does this list not rank the alternatives?
Because a ranking would be an opinion wearing a number's clothes. Every figure on this site is a date, a count, an SPDX identifier or an HTTP status you can re-fetch from the endpoint named beside it, and there is no honest way to compress those into an ordering without inventing weights nobody published. The rubric sets states; it does not rate them against each other.
Where does the alternatives data for Multilogin come from?
From declared edges in the register itself, never inferred. Each edge is stored once and reversed at build time, and every field in the table is read from the same sweep that produced the rest of the catalogue. The whole set is downloadable as CC0 JSON and CSV, including the supersedes, superseded_by and alternative_to columns.
Section 09 is here for completeness and for comparison, and the comparison is the point: every entry in it is closed, so the only fields this register can check are the ones an HTTP request returns. Donut Browser is the open alternative its keepers work on — AGPL-3.0, the desktop app and the sync server both in the repository, zero telemetry verified by grep rather than asserted, and self-hostable sync to any S3-compatible store.