Blog

Notes from the arms race.

What actually gets a profile flagged, how agents drive a real browser, and the detector runs behind our claims.

5 min

How JA3 and JA4 catch a scraper before the page even loads

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.

5 min

Canvas fingerprinting explained, mechanically

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.

4 min

Handing a Browser Profile to Someone Who Has Never Paid

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.

6 min

Sharing a Browser Profile: File, Link, or Transfer?

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.

5 min

What an antidetect browser is, and who actually needs one

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.

4 min

What a new Chrome major actually changes in your fingerprint

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.

13 min

Everything Has a UI. Almost Nothing Has an API.

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.

5 min

Task-level site adapters, and running one on twenty identities

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.

4 min

Playwright persistent contexts, and what they still do not give you

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.

4 min

Residential vs datacenter proxies, and the mistake that wastes both

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.

6 min

1,011 text measurements: how a signup flow proves your browser is lying about its OS

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.

4 min

How to check a browser profile before you trust it with an account

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.