pax.moe/blog

A Bad Unit of Inventory

The business model that funds most of the internet runs on a single assumption: that what you do is a truthful readout of who you are, and that the readout is theirs to take and sell. You browse, they watch, they infer, they build a profile, they auction it. Nobody ever sat you down and got your agreement to that. The agreement is a cookie banner and a forty-page policy written to be unread. That is the whole deal, and you were never really a party to it.

For a long time I thought the answer was to disappear. Go invisible. Block everything, hide everything, become a ghost. That instinct is wrong, and it took me a while to see why. You cannot win "invisible." It is an arms race against companies with more money and more patience than you have, and perfect invisibility on a machine you actually use for real life is not on the menu. Chasing it just burns your evenings and leaves you feeling like you're losing.

So I stopped trying to be invisible and started trying to be worthless. Not hidden. Expensive. A bad unit of inventory.

Be a bad unit of inventory

The goal isn't "they can't see me." That target is unreachable and you'll make yourself miserable reaching for it. The goal is "what they see about me isn't worth much." Low confidence. Contradictory. Costly to clean before anyone can sell it. You don't have to be unbeatable. You have to be more trouble than you're worth, because they optimize for cheap data at population scale, and the moment you stop being cheap they'd rather spend their effort on the millions of easier targets. That fight you can win. Not by hiding the signal, but by poisoning it.

A household of people who don't exist

So I built a thing. It runs a small household of synthetic browsers from my home connection. Each one is a consistent fake person with its own tastes and its own daily rhythm. A luxury shopper. A coupon obsessive. A retiree pricing cruises. A teenager into sneakers. A new parent. They browse real sites, all day, the way people do, and they contradict each other on purpose. The profiling that tries to guess who lives at my address has to reconcile five people who cannot be reconciled into one, on top of the actual me, and it can't. No coherent household forms.

The obvious version of this idea fails, and understanding why is the whole point. If your fake activity is random, a classifier picks it out instantly, because real browsing has structure and random noise doesn't. Real people stay on a topic. They follow a link, then another, then double back. They linger on a long article and bounce off a thin one. Random hits have none of that, so the naive tools that just fire off junk queries get filtered out and discarded, and once they're discarded they've accomplished nothing. So the fake people cannot be random. They have to be coherent. Each one is a stable character that browses one interest at a time, navigates a site the way a human would, and spends time like a human does. Making noise that a machine can't separate from a person is the actual engineering problem, and it is a genuinely hard and interesting one.

There is one thing my fake people never do, and I want to be clear about it. They never click an ad. Browsing a page costs nobody anything. Clicking an ad bills an advertiser for the click, and doing that on purpose sits closer to fraud than I'm comfortable with. I'm not going to bill some small business running ads to make my point at Google. That's a line I set for myself.

I want to be careful about that line, though, because the most famous tool in this space made ad-clicking its whole method and got thrown off the Chrome store for it, and I don't think that was a fair call. Google removing the one tool built to fight Google's own ad surveillance is not a neutral ruling about fraud. It's the house clearing anyone who plays against it off the table. My choice not to click ads is mine. It isn't an endorsement of the referee that punished the people who did.

I don't topple anyone

Here is the part where I'm honest with you, because the alternative is selling you something. One person running this does not crumble surveillance capitalism. My fake household muddies a weak, probabilistic layer of the profile, the guess about who and what is behind an address, and it leaves the strong layer completely untouched, the part keyed to your logins and your real name and your purchases. If you sign into Google, Google knows it's you, and no amount of fake browsing changes that. The effect of what I built is real and it is small. It is a vote, not a shield. Anyone who tells you a browser extension sets you free is lying to you, and probably selling the extension.

The layer I can't lie to

There are two profiles being built on you, and the fake household only muddies one of them.

The weak one is probabilistic. It guesses. It says the person at this address probably likes these things, probably shops here, probably belongs to this kind of household, and it puts a confidence number on each guess. That is the layer noise attacks, because a guess is exactly the kind of thing you can poison. Feed it enough believable contradictions and the confidence falls apart.

The strong one doesn't guess. It is keyed to your identity, the instant you hand that identity over. You log into Google and now everything in that session is you, by name, with certainty, no inference required. You buy something with your real email and a tracker on the checkout page ships that purchase straight to a company's servers, matched to your name, and your browser never even sees it leave. You cannot poison that with fake browsing, because it is not listening to your browsing. It is listening to your logins and your real details, and fake data does not stick to a real name.

So the fight there is a different fight. You can't lie to the strong layer. You can only feed it less.

That means shrinking the identity I volunteer, one habit at a time. I stopped searching on Google and run my own search box instead, so the single biggest stream of "here is what this named person wanted to know" just stops arriving. I harden my browser so the tracking cookie that used to follow me from site to site gets boxed in and can't stitch my sessions into one person. I route more of my real traffic through a VPN now, so my address stops being a stable anchor they can hang the rest on. And where I can't avoid an account at all, the aim is to keep it walled off from everything else I do, so the one identity I did surrender can't be turned into a key to the rest of me.

None of that is a win, and I'll keep saying so. The instant I log into anything real, the anchor is theirs, and no tool hands it back. The strong layer is the one you never fully beat. But every account I don't open and every service I route around is one more place they don't get to bolt my name onto my behavior. I poison the weak layer. I starve the strong one. Neither is freedom, and I've stopped pretending either could be. They just make the version of me that's for sale cheaper, and less true.

Then why do it

Because the technical fight was never where this gets won.

Regulation of a giant industry almost never comes from that industry losing a technical battle. It comes from two things arriving together: enough public friction that the problem becomes politically legible, and the industry overreaching visibly enough to hand lawmakers a villain they can point at. One scandal with a name moves more law than a decade of clever tools.

Individual refusal feeds both of those, in two ways. The first is that it's measurable dissent. Every blocked ad, every VPN, every fake browser is a countable data point that says the public did not agree to this bargain. Ad-block adoption gets cited in actual policy fights, because it's a refusal you can put a number on, and a number is legible to a legislator in a way a feeling isn't. The second is sharper. Resistance provokes escalation. As the easy data gets poisoned and blocked, they climb the creepiness ladder to keep the signal: deeper fingerprinting, server-side tracking your browser can't touch, buying raw location data off the open market. Every rung is a bigger, uglier scandal than the last. So you are not only making yourself expensive. You are pushing them toward exactly the overreach that gets legislators off the fence.

I've written before that consent has to be informed to mean anything, and that you cannot meaningfully consent to a power you are forbidden to inspect. The same rule is sitting underneath all of this. You never got to inspect the deal. You never agreed to be the product. Consent to being surveilled and sold was manufactured out of a banner nobody reads and a policy nobody can finish. So declining to be a clean, honest, truthful signal is not paranoia and it is not being a rube. It is the rational response to a bargain you were never actually offered.

I'm not trying to vanish. I know I can't, and I've stopped wanting to. I just want the data they take without asking to be worth a little less, and I want to be one more person who countably, on the record, said no. If enough of us are bad inventory, the model doesn't break on our machines. It breaks in a hearing room, after enough people have refused and the industry has reached one time too many, and by then we are the reason the room is full.

You can have my behavior. You just can't trust it.


The argument that obfuscation is a legitimate weapon of the weak against asymmetric surveillance is made at length in Finn Brunton and Helen Nissenbaum's Obfuscation: A User's Guide for Privacy and Protest (MIT Press, 2015), which is where I first found the vocabulary for what I was already doing. Full Disclaimer: I didn't read the book in full, I had it summarized. The program described here is mine and it isn't public.