What actually gets a profile flagged, how agents drive a real browser, and the detector runs behind our claims.
The TLS handshake and HTTP/2 frame order reveal what software made a request, regardless of the User-Agent header. JA3 and JA4 hash that order, which is why a copied Chrome header over a Python handshake fails before content loads.
A page draws text to a hidden canvas, reads the pixels back and hashes them. The result is stable on one machine and different across machines, which is exactly what makes it useful for tracking and hard to fake convincingly.
Selling a warmed-up browser environment used to mean exporting a file and hoping the buyer paid afterwards. Ownership transfer makes it one atomic handover instead - and the buyer no longer needs a subscription first. Here is what the one-time 30-day handover window carries, what it deliberately withholds, and what happens on day 31.
Handing a browser environment to someone else comes down to three choices - export a file, share a link, or transfer ownership - and each one trades a different amount of control for convenience. Here's exactly what you keep, what you give up, and what revoking can and can't undo.
An antidetect browser gives each profile its own consistent, isolated identity instead of one shared fingerprint. What problem that solves, how it differs from incognito mode and a VPN, and when a normal browser is the better choice.
Chrome 153 reached the stable channel on 2026-08-26 and the AntiBrow kernel now builds on it. The number in your user agent is the least interesting part of that. Here is what a detector reads instead, and why moving every profile to the newest build on release day is its own tell.
Most of the software you pay for can only be operated by hand. Three reasons a product ends up unreachable, thirteen categories where the demand for driving your own account from code actually is, how the four families of answer on the market break, and the eight properties that decide whether such a layer survives production.
An agent given a browser handle has to invent the scraping. Recipes invert that: one command per site returns JSON, and the same command runs across N isolated profiles at once. Includes a dated run of which sites answered and which sent a challenge.
launchPersistentContext keeps cookies between runs, which is half of an identity. The other half is the fingerprint staying identical too, plus the API differences that trip people up. A practical guide with the gotchas.
Residential is not automatically better and datacenter is not automatically dead. What actually decides the outcome is whether the proxy is bound to the identity, and most setups get that part wrong in a way that is easier to detect than the IP itself.
Detection stopped asking which fonts you have and started measuring how wide they are. A missing font is not hidden: it renders in the fallback and measures exactly like a family nobody has ever installed. If your persona claims Windows on a machine that is not Windows, that is a one-line contradiction, and no amount of aged profiles or clean residential exits talks you out of it.
A high anonymity score means little. What gets profiles flagged is contradiction between signals, not any single value. A checklist of the pairs that must agree, and how to test each one in a few minutes.
Named, sourced, and dated. Where a vendor's price is not on their own page, we say so instead of quoting a number.
// Every competitor figure on those pages carries its source and the date we captured it. Where we could not source a number, it is missing rather than estimated.