Address clustering groups blockchain destinations that appear to be under common spending control. Entity labelling attaches a name or category, such as an exchange, to a destination or a cluster using attribution evidence. An analyst estimating exchange inflows needs both steps. A mistaken cluster can turn an unrelated transfer into an apparent exchange deposit.
What a co-spend tells you
In Bitcoin, each ordinary input points to a specific previous output. That output was an unspent transaction output (UTXO) before the spend. Its locking script defines the conditions for spending it. Many common scripts have a corresponding address that encodes the payment destination. Some scripts have no standard address representation. Bitcoin Developer Reference, Transactions and Bitcoin Core’s script decoder.
Suppose a fictional transaction spends one UTXO associated with address A and another associated with B. The common-input heuristic provisionally puts A and B in the same cluster. A single wallet could have selected both outputs to fund a payment. The ledger shows that the spending conditions for both outputs were satisfied. Common control is the analyst’s inference. Meiklejohn et al., §4.3.
In a CoinJoin, separate controllers can agree on a joint transaction and each provide the authorisation for their own input without sharing private keys. The same observation about the inputs, A and B spent together, fits that scenario too. If A and B have separate controllers, the common-input rule makes a false merge. Gregory Maxwell’s original CoinJoin proposal.
How a bad link changes the data
Extend the example with earlier clustering links C–A and B–D. Suppose separate evidence associates C with a fictional exchange. If the analyst accepts A–B, the link joins both groups and the exchange label propagates to all four addresses. If A–B was a collaborative spend between separate controllers, a transfer from outside those groups into B could be counted incorrectly as an exchange inflow. The transaction and its amount are identical under both classifications.
The same recorded co-spend can produce different flow classifications. The dashed link carries the common-control assumption.
A label has its own evidence and confidence. An observed test deposit can support the association at C, while D inherits that association through the intervening links. The label’s data vintage records which evidence and clustering rules were available at the cutoff. The underlying record can distinguish direct and inherited labels, with a confidence assessment for each. Using later co-spends or newly discovered labels to classify earlier flows in a trading backtest introduces look-ahead bias. Meiklejohn et al., §§3 and 4.3–4.5 illustrate how attribution evidence and clustering choices affect measured flows.
Even an accurate exchange label can describe a custodial wallet that the exchange operates for many customers. The label identifies an operator at the stated confidence level. Establishing beneficial ownership, or who ultimately has the economic interest in the funds, requires separate evidence such as customer account records. Meiklejohn et al., §4.1 and SEC staff’s custody bulletin.
Sources
- Bitcoin Developer Reference, Transactions and Bitcoin Core, script decoder. Input references, output scripts and address encoding.
- Sarah Meiklejohn et al., A Fistful of Bitcoins, IMC 2013. Directly observed tags, address control, clustering and flow measurement.
- Gregory Maxwell, CoinJoin: Bitcoin privacy for the real world, 2013. The original description of independently authorised inputs in a shared transaction.
- SEC staff, Crypto Asset Custody Basics for Retail Investors, 2025. Third-party control of keys and pooled custody.