Migrate your profiles in one pass.
Donut imports existing Chromium-family profiles in bulk. Chrome, Chromium, Brave, Microsoft Edge, Opera, Opera GX, Vivaldi, Arc, Yandex, and the Chrome/Brave beta and dev channels all become Wayfern (anti-detect Chromium) profiles — history, cookies, extensions state, and local storage come along; each imported profile gets its own freshly generated fingerprint. Importing is free on every tier.
In the app
Open the Import page from the rail navigation. Two ways in:
- Auto-detect scans the default locations of every supported Chromium-family browser (Chrome, Chromium, Brave, Edge, Opera, Opera GX, Vivaldi, Arc, Yandex, and beta/dev channels) and lists every profile it finds. Tick the ones you want (or Select all).
- Manual points at any path: a single profile folder, a whole browser user-data folder (
Default,Profile 2, …), a folder holding one exported profile per subfolder, or a ZIP archive of any of those shapes.
Before importing you can, in one pass:
- rename each profile;
- assign every imported profile to a group (or create a new group inline);
- attach a proxy — one proxy for all, or round-robin across your stored proxies;
- pick a duplicate strategy: rename automatically (
Name (2),Name (3), …) or skip.
Imports run per-item: one broken profile never aborts the batch, and a progress bar tracks the copy. A results screen shows exactly what was imported, skipped, or failed.
Via the REST API
Three endpoints cover the whole migration (see the API reference for full request/response schemas):
GET /v1/profiles/import/detect— list importable profiles, optionally from a custom?folder=.POST /v1/profiles/import— bulk-import withgroup_id, per-itemproxy_id, andduplicate_strategy.POST /v1/proxies/import— bulk-add proxies from a plain-text list (host:port:user:pass, URL forms) or a Donut JSON export.
A minimal migration:
# 1. See what's on this machine
curl -sS http://127.0.0.1:10108/v1/profiles/import/detect \
-H "Authorization: Bearer $DONUT_API_KEY" | jq '.profiles[].path'
# 2. Import everything into a group
curl -sS -X POST http://127.0.0.1:10108/v1/profiles/import \
-H "Authorization: Bearer $DONUT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"items": [
{ "source_path": "/Users/me/Library/Application Support/Google/Chrome/Default", "new_profile_name": "Old Chrome" }
],
"group_id": "e2074e8e-2a9e-46dd-a91e-c34c88ee1e35",
"duplicate_strategy": "rename"
}'
Via MCP
The MCP server exposes the same surface as tools, so an AI assistant can run the entire migration conversationally:
detect_browser_profiles— find importable profiles (optionally in a custom folder);import_browser_profiles— bulk-import with group assignment and duplicate handling;- plus the existing
import_proxies,create_group, andassign_profiles_to_group.
A prompt like “detect my Chrome profiles, import them all into a group called Migration, and assign my stored proxies round-robin” maps 1:1 onto these tools.
Good to know
- A downloaded Wayfern version must already be present — the import path never downloads browsers.
- Fingerprints are generated per imported profile. Setting a fingerprint
os(cross-OS spoofing) requires Pro; everything else about importing is free. - Firefox/Gecko profiles can’t be converted to a Chromium engine. Migrate their cookies instead via
POST /v1/profiles/{id}/cookies/import. - Migrating from another anti-detect browser? If it exports raw Chromium profile directories (most do), point the folder or ZIP import at the export.