master_list marks whether an address is even eligible for attribution (measurability). Second, addresses_geography records which eligible addresses actually received a country, and with what conviction. This page explains both, and why hosted and unhosted wallets require different methods.
Two-stage measurability
Stage 1 — eligibility (master_list.measurability). Almost every address is eligible:
measurability | Meaning | Share |
|---|---|---|
potentially_measurable | An organic wallet that could be attributed | ~99.9% |
not_measurable | Excluded infrastructure (see reasons below) | ~0.06% |
not_measurable_reason:
not_measurable_reason | What it flags |
|---|---|
contract | Smart-contract addresses |
token | Token / token-blacklist contracts |
infrastructure | Bridges, chain/system addresses, other infra |
genesis | Genesis / burn addresses (0x0…0, 0x…dead, etc.) |
addresses_geography). Being eligible does not guarantee a country. Only ~25% of addresses (~20M of ~80M) end up with a row in addresses_geography. The remaining ~75% are eligible but lack sufficient signal — they are not “missing data,” they simply have no confident attribution yet.
When you read “~25% coverage,” the denominator is all classified addresses, and the ~75% without a country are mostly unlabeled self-custody wallets whose counterparties/timing don’t yield a confident signal — not the hard-excluded
not_measurable set (which is tiny).Hosted vs Unhosted Wallets: Why They’re Different
master_list.wallet_type splits attributable wallets into hosted (custodial) and unhosted (self-custody) because they require completely different methods.
Hosted Wallets (Custodial)
Definition: Addresses controlled by a centralized entity (exchange, custodian) that holds funds on behalf of users. Inmaster_list, hosted wallets are exchange-labeled addresses.
Why they’re easier to measure:
- Declared operating country — exchanges disclose their headquarters / primary jurisdiction
- Regulatory footprint — license requirements reveal operating countries
- Web traffic signals — SimilarWeb shows where their users are located
- Single attribution — one local/regional exchange wallet maps to one country
master_list.hosted_subtype):
| Subtype | Description | Geo attribution |
|---|---|---|
global_exchange | Major CEX serving many countries | No single country — distribution served by exchange_gravity_weekly |
local_exchange | Single-country CEX | Direct country assignment from the registry |
regional_exchange | Multi-country regional CEX | Primary operating region |
These are the only three hosted subtypes produced today.
hosted_geo_country is populated for local exchanges; hosted_geo_region for local and regional exchanges. Global-exchange wallets carry no per-wallet country.Unhosted Wallets (Self-Custody)
Definition: Addresses where the user holds their own keys — MetaMask, Ledger, smart-contract wallets, general EOAs. This is the bulk of the population (~58M addresses). Why they’re harder to measure:- No declared country — users don’t register with a jurisdiction
- Pseudonymous — no KYC
- Indirect signals only — geography must be inferred from counterparties, transaction timing, and wallet-relatedness clusters
- Multi-country usage — one wallet may be used from several countries (VPN, travel)
- Direct labels — a labeled wallet with a known country
- Flow-based propagation — a wallet related to labeled wallets (via direct two-way transfers, shared funders, or shared CEX deposit wallets) inherits their country, weighted by relatedness
- Timezone inference — hour-of-day activity distribution suggests a region (supporting signal; see
addresses_timezones)
addresses_geography.reasoning column records, in plain language, exactly which signals drove each attribution (e.g. “Propagated from 20 related wallet(s) via shared funders within a 24-72h window.”).
Conviction, not probability
Attribution quality is expressed as a conviction level, not a 0–1 probability.addresses_geography.confidence (and addresses_timezones.conviction_level) use a five-tier scale:
| Conviction | Use it for |
|---|---|
Very High Conviction | Compliance / KYC (strongest signal) |
High Conviction | Compliance and high-trust analysis |
Moderate Conviction | Regional analysis |
Low Conviction | Exploration only |
Very Low Conviction | Exploration only; treat as weak |
Why This Matters for Your Analysis
- Understand the denominator. ~75% of addresses lack a country because they lack a confident signal — not because the data is broken. Smart contracts, infra, and burn addresses are separately flagged
not_measurableinmaster_list. - Choose the right conviction floor. Compliance →
High/Very High Conviction; regional sizing →Moderateand up; research → include all tiers but stratify. - Don’t mix hosted and unhosted. A country tied to a local exchange wallet is an operating jurisdiction; a country tied to an unhosted wallet is an inferred user location. They answer different questions.
Next Steps
Table Reference
Full column-level schema for every table
Geographic Intelligence
Back to the geographic intelligence overview