DeviceFarm
Glossary
Device identity

Device isolation

Also called: account isolation, device separation

Device isolation is the practice of giving each account its own device identity and its own network path, so that no observable value links one account to another. It covers hardware identifiers, system values, storage, cookies, exit IP and timing — anything shared across accounts becomes a correlation point.

Isolation is a property of a whole setup, not a feature you switch on. Two accounts are isolated when there is no observable value they share. That means separate hardware identifiers, separate app storage, separate cookies and caches, separate exit IPs — and it means keeping them separate over time, not only on the day everything was configured.

The layers, and where each usually breaks

  • Hardware — distinct IMEI, MAC, Android ID and build.prop per device. Breaks when images are cloned without regenerating values.
  • Storage — separate app data, caches and keystores. Breaks when several profiles share one device, or when a backup is restored onto a second phone.
  • Network — one proxy per device. Breaks when several devices share an IP to save money.
  • Account graph — separate recovery email, recovery phone and payment instrument. Breaks silently, because none of it is visible on the device.
  • Behaviour — separate usage patterns. Breaks when every account acts at the same moment in the same way.

The network layer is subtler than one IP each

Giving every device its own address is necessary and not sufficient. Addresses carry structure, and the structure correlates:

  • Subnet — a hundred distinct addresses inside one /24 is a hundred addresses inside one block a provider bought at once. Distinct is not the same as unrelated.
  • ASN — every address belongs to an autonomous system. A fleet spread across fifty IPs that all resolve to one small hosting AS has fifty addresses and one origin.
  • TLS handshake — the cipher suite order, extension list and ALPN values of a client produce a JA3-style hash. Identical software on identical devices produces an identical hash across the whole fleet, independent of IP.
  • Headers — an identical Accept-Language on every device while the exit IPs span six countries is a contradiction that survives any amount of proxy spend.

The weakest layer sets the level

Isolation does not average out. Perfect hardware separation with a shared IP gives you accounts linked by IP. Perfect IPs on a shared device gives you accounts linked by device. The setup is only as isolated as its most-shared component, which is why the cheap shortcut — several phones behind one proxy — undoes the expensive part of the stack rather than trimming it. Spending three times more on hardware while consolidating the network is a net downgrade.

This also explains why isolation cannot be applied retroactively. Once two accounts have been observed sharing a value, that observation is recorded on the platform’s side and does not expire because the setup was later fixed. Separation is only worth anything before the first session.

The layers people forget

The behavioural layer is the one most often ignored. Twenty devices with impeccable identities that all post within the same sixty seconds have announced their relationship through timing alone. RPA scripts make this worse rather than better: a fixed two-second pause between actions produces inter-event intervals with a variance no human hand ever produces, identical across every device running the script.

The account graph is the other one, and it is invisible from the device. A shared recovery phone number, a shared recovery email domain, or the same payment card used across accounts links them at the platform level where no amount of device separation reaches. So does signing every phone into one Google account, which ties every Play install on every device to a single identity.

Auditing a setup

A short checklist that catches most real failures, run across the whole fleet rather than on one device:

  • adb shell settings get secure android_id on every device, then diff — duplicates mean a cloned image.
  • adb shell getprop ro.build.fingerprint on every device — a fleet where all hundred report one string is one device shape repeated.
  • From each device, query an IP information service and record address, ASN and country. Group by /24 and by ASN, not only by address.
  • Compare device timezone and locale against the country each exit IP resolves to.
  • Plot the timestamps of the last hundred actions across the fleet. Clusters inside a one-minute window are the behavioural leak.
  • Reboot everything and repeat the first two checks — values that changed are as much a failure as values that were shared.

Isolation is the operational half of multi-accounting; the identity half is the device fingerprint each device presents. Neither works without the other.

Related terms