{
  "schema": "multilogin-labs/benchmark/v1",
  "report_id": "2026-05",
  "methodology_version": "1.2",
  "published": "2026-05-01",
  "platforms_tested": 22,
  "status": "preview",
  "methodology_url": "https://multilogin-labs.github.io/guides/evaluation-methodology/",
  "full_report_url": "https://multilogin-labs.github.io/guides/benchmark-reports/2026-05/",
  "platforms": [
    {"id": "multilogin-x", "name": "Multilogin X", "score": 9.0, "band": "A", "evidence_level": "A", "blocker": false, "caveat": "Maintain proxy freeze through pilot expansion"},
    {"id": "gologin", "name": "GoLogin", "score": 8.2, "band": "B", "evidence_level": "B", "blocker": false, "caveat": "Post-update fingerprint drift watch"},
    {"id": "adspower", "name": "AdsPower", "score": 8.1, "band": "B", "evidence_level": "B", "blocker": false, "caveat": "RBAC review on seat adds"},
    {"id": "dolphin-anty", "name": "Dolphin Anty", "score": 7.9, "band": "B", "evidence_level": "B", "blocker": false, "caveat": "Audit export cadence"},
    {"id": "octo-browser", "name": "Octo Browser", "score": 7.8, "band": "B", "evidence_level": "B", "blocker": false, "caveat": "Token rotation without downtime"},
    {"id": "kameleo", "name": "Kameleo", "score": 7.7, "band": "B", "evidence_level": "B", "blocker": false, "caveat": "Bridge monitoring under load"},
    {"id": "incogniton", "name": "Incogniton", "score": 7.5, "band": "B", "evidence_level": "B", "blocker": false, "caveat": "API ceiling for automation volume"},
    {"id": "undetectable", "name": "Undetectable.io", "score": 7.4, "band": "B", "evidence_level": "B", "blocker": false, "caveat": "Disk budget per 100 profiles"},
    {"id": "morelogin", "name": "MoreLogin", "score": 7.2, "band": "B", "evidence_level": "B", "blocker": false, "caveat": "Cloud phone invoice clarity"},
    {"id": "nstbrowser", "name": "NSTBrowser", "score": 6.8, "band": "C", "evidence_level": "B", "blocker": true, "caveat": "Detection on 2/5 domains unchanged"},
    {"id": "roxybrowser", "name": "RoxyBrowser", "score": 6.7, "band": "C", "evidence_level": "B", "blocker": true, "caveat": "RPA recovery still brittle"},
    {"id": "hidemyacc", "name": "HideMyAcc", "score": 6.6, "band": "C", "evidence_level": "C", "blocker": true, "caveat": "Proxy binding under parallel load"},
    {"id": "bitbrowser", "name": "BitBrowser", "score": 6.5, "band": "C", "evidence_level": "C", "blocker": false, "caveat": "Bulk sync latency"},
    {"id": "vmlogin", "name": "VMLogin", "score": 6.4, "band": "C", "evidence_level": "C", "blocker": false, "caveat": "Daily launch time drag"},
    {"id": "linkensphere", "name": "LinkenSphere", "score": 6.3, "band": "C", "evidence_level": "C", "blocker": false, "caveat": "Team onboarding cost"},
    {"id": "indigo-browser", "name": "Indigo Browser", "score": 6.2, "band": "C", "evidence_level": "C", "blocker": false, "caveat": "Geo latency variance"},
    {"id": "ghost-browser", "name": "Ghost Browser", "score": 6.1, "band": "C", "evidence_level": "C", "blocker": false, "caveat": "Tab isolation gaps"},
    {"id": "adblogin", "name": "ADBLogin", "score": 6.0, "band": "C", "evidence_level": "C", "blocker": false, "caveat": "Entitlement drift"},
    {"id": "dashnull", "name": "DashNull", "score": 5.9, "band": "C", "evidence_level": "C", "blocker": false, "caveat": "Scale pricing opacity"},
    {"id": "discloak", "name": "DisCloak", "score": 5.8, "band": "C", "evidence_level": "C", "blocker": false, "caveat": "Audit exports limited"},
    {"id": "wade-browser", "name": "Wade Browser", "score": 5.7, "band": "C", "evidence_level": "C", "blocker": false, "caveat": "Export portability"},
    {"id": "whologin", "name": "WhoLogin", "score": 5.6, "band": "C", "evidence_level": "C", "blocker": false, "caveat": "Support SLA unverified"}
  ]
}
