← The Attention Machine

One thread ties it together

Three different companies hold three harmless-looking pieces of one person. On their own, each piece is thin. The trick is not one all-seeing eye — it is that the same identifier lets the pieces be matched to the same person, and combined into a profile sharp enough to guess what will move them.

This is a safe sandbox. The person below — Sam — is invented, and so is every figure shown. Nothing here reads your own accounts, nothing is stored, and a Reset button sits beside the controls.

How to read this page. The demo below is interactive, but the explanation carries the whole argument on its own — it reads fully with JavaScript off. Expand the "Deeper" box for what is and isn't shared, and where the law has stepped in.

Data Combination demo

Meet Sam (fictional). Three companies each see one slice of Sam's day. Watch what happens when one key links them.

Messaging app

What it holds about Sam

  • Phone number
  • Who Sam messages, and how often
  • Times of day Sam is active
  • Phone model and operating system
  • The contacts in Sam's address book

Message content is end-to-end encrypted — not collected, and not needed.

Ad auction & data brokers

What it holds about Sam

  • Hashed phone / email
  • Approximate location of Sam's phone
  • Device identifiers
  • Broker attributes (life stage, income band)
  • A resolved, person-level ID

🔗 marks the same detail — a phone number or email — that turns up in all three cards. That shared detail is what lets the separate slices be joined into one.

How the data is connected

All three hold the same detail — a phone number or email. Even when it is scrambled into a "hash" (a fixed jumble of characters), it is the same jumble everywhere, so it still works as the link:

+31 6 1234 5678  →  9f2a1c7b… (same every time) A hash is not anonymous. It hides what the detail says, but it is a stable label — the same number or address always gives the same hash — which is exactly what makes it a reliable key for joining the slices.

Sam's profile inferred · fictional

Each company's slice on its own is thin. Press "Connect the data" to combine them.

Targeting precision
low

One thing to do now

Stop Meta using what other businesses tell it about you. In Meta's Accounts Centre, under Ad preferences, switch off the setting that lets Meta use the activity other businesses report about you (Meta renames it from time to time). Open Meta's settings (log in first).

What just happened

No single company set out to build the whole of that profile. Each is optimising its own business: the messaging app wants to run a service, the social platform wants to sell attention, the data broker sells the matching, each bidder in the auction wants to outbid the next. The profile is what falls out when they share a key. That is the whole argument of this site: no conspiracy, only incentives.

The most important line is the locked one. The messaging app cannot read what Sam says — that part really is encrypted. It does not need to. Metadata — who, when, how often, on what device, from which contacts — is enough to place Sam in the combined picture. The encryption protects the content; it does not protect the pattern.

The key is the mechanism

Once a phone number or email is turned into a hash, it can be passed between companies without ever sharing the raw number — and still act as the same join key every time. A platform matches its own users to an advertiser's customer list this way; a data broker resolves a dozen scattered records to one person-level ID and feeds it into the ad auction. That is the profile the Advertising page describes being broadcast to bidders hundreds of times a day. "Hashed" sounds like "anonymised." It is not: it is pseudonymous — a stand-in name that still belongs to one person — which is precisely what makes it useful for joining records.

It builds up over time

The profile is not a single snapshot. Every message, visit and location is added to the same record, tied to the same key. So something from weeks ago can still shape what reaches Sam now: that Sam was in contact with someone, that they follow a certain topic, that Sam's phone was in a certain place. Gathered over time, that history is enough to predict what Sam will respond to next. Say Sam helps a friend who has just moved house, looks up a removals firm and follows a few home-decorating accounts; days later the ads turn to sofas and paint — not because anyone heard a conversation, but because the pattern around Sam now looks like thousands of others who were moving.

This is why it can feel as though your phone is listening. When researchers examined more than 17,000 phone apps they found no evidence of apps secretly recording through the microphone — and the machine does not need one. The record of who you contacted, when, and what is already known about them and you predicts the rest. In one well-documented case, reported in 2012, an American retailer built a model that predicted, from buying patterns alone, which customers were pregnant — and began sending them baby offers. No conversation was overheard; the accumulated pattern was enough. (The often-repeated anecdote of a father learning of his daughter's pregnancy from the coupons rests on one unnamed employee's account, and whether the model sent them is disputed; the modelling itself is documented.)

What you can do

Make it harder to be profiled and tracked. None of these is a full fix — each one weakens the key that ties your slices together.

  • Keep your accounts separate. In Meta's Accounts Centre you can keep Facebook and Instagram as separate accounts, and in the EU you can decline to have WhatsApp's account data combined with them.
  • Use a different email or phone number for different services. That removes the single key that joins your slices into one profile.
  • Install a free tracker blocker such as uBlock Origin — it cuts how much the auction side can follow you around the web.

More, ordered by how much they actually change: What to Do →

Deeper — what is and isn't shared, and where the law has stepped in

Content vs metadata. WhatsApp messages and calls are protected by end-to-end encryption (the Signal protocol), so their content is not readable by the service. What flows to the wider company is metadata and account information — the distinction the demo's locked line makes.

Combining across services is the contested act. In the ad-tech industry this combining has its own names — identity stitching or identity resolution — but the plain idea is the same: link the pieces to one person. Germany's competition authority, the Bundeskartellamt, prohibited Meta (then Facebook) in 2019 from combining a user's data across Facebook, Instagram, WhatsApp and third-party sites without genuine consent. The Court of Justice of the EU backed that approach in Meta v Bundeskartellamt (2023), and the case closed in 2024 only after Meta introduced an "Accounts Centre" letting EU users keep services separate. Closing it was not a clean bill of health: the authority said it did not mean all its competition concerns had been eliminated, and left further improvements to other rules, such as the EU's Digital Markets Act and data-protection law. The "Apply privacy rules (e.g. EU)" toggle reflects this: the architecture is the same everywhere, but in the EU the linking requires consent and can be switched off.

Transparency was found wanting (and is being litigated). Ireland's Data Protection Commission fined WhatsApp €225 million in 2021 for not telling users clearly how their data was shared with other Meta companies. That penalty is not the end of the story — in February 2026 the Court of Justice of the EU ruled that WhatsApp may challenge the EU-level decision behind it, sending that case back to a lower EU court — so treat it as a live dispute, not a closed verdict.

Why this is a simulation. Sam is invented and every number is illustrative. We do not — and could not honestly — pull a visitor's own WhatsApp, social or broker data; the point is to show the mechanism, not to perform it on you.

Sources