Curriculum·G102 Wallet Clustering and Heuristics·about 31 min
When a heuristic is wrong
By the end of this lesson you can
- →Name the failure modes of the clustering heuristics: CoinJoin, custodial co-spends, and dusting
- →Explain how CoinJoin deliberately breaks common-input-ownership and produces false clusters if applied naively
- →Compute why a false merge is worse than a missed link, because it fabricates a connection
- →Recognize a transaction's type before applying a heuristic to it
Graduate · enrolled learners
This lesson opens with CoinJoin and the false-cluster failure mode.
- What happened
- The common-input-ownership heuristic assumes that inputs spent together share an owner, and that assumption is exactly what CoinJoin is built to break. In a CoinJoin, many unrelated participants deliberately combine their inputs into a single collaborative transaction, each signing only for their own inputs, and receive back mixed outputs, so one transaction has inputs from a dozen different owners by design. Wallets such as Wasabi and Samourai made this a routine privacy tool. An analyst who applies common-input-ownership to a CoinJoin without recognizing it merges a dozen unrelated people into one false cluster, and because clusters propagate, that error then contaminates everything each of those addresses later touches. The same failure lurks in custodial services, an exchange's hot wallet co-spends thousands of users' deposits, so naive clustering labels the whole exchange as one entity, which it is, and mistakes it for one user, which it is not. The heuristic did not stop being useful; it was applied to a transaction whose type it does not fit.
- The decision point
- Every heuristic in this course is a probabilistic rule with a failure mode, and the dangerous error is not a link you miss but a link you invent. A missed connection leaves the cluster incomplete; a false merge fabricates a relationship that was never there and then propagates it, so a CoinJoin misread as an ordinary spend can wrongly tie a dozen strangers together and drag each of their real activity into a bogus common cluster. Avoiding this is not about distrusting the heuristics; it is about recognizing the transaction type before you apply them. A CoinJoin, a custodial hot wallet, a dusting transaction, each looks like ordinary activity to a reader who does not know the shapes, and each breaks a specific heuristic in a specific way. Clustering responsibly means knowing not just the rules but where each one fails, and reading the transaction well enough to tell when you are standing in one of those places.
What you will be able to answer
- →How does CoinJoin break common-input-ownership?
- →Why is a false merge worse than a missed link?
- →What are the main clustering failure modes?
- →What is the discipline that avoids false clusters?
Orientation and Year One are open: anyone can read them without an account. From Year Two onward the lessons are for enrolled learners, because progress through the later years only means anything if it is tracked against a record.
It is free. We do not sell the list and there is nothing to buy at the end of it.
Sources and review
- https://www.chainalysis.com/blog/introducing-coinjoin-support/
- https://www.chainalysis.com/blog/how-crypto-tracing-works/
- https://en.bitcoin.it/wiki/CoinJoin
Confidence high·Volatility low·Reviewed 2026-09-15·Owner unassigned
Contested
CoinJoin implementations differ (Wasabi, Samourai, JoinMarket) and some are more identifiable than others; the common-input-ownership failure is inherent to the construction regardless of implementation.
Whether a specific equal-value transaction is a CoinJoin can itself be probabilistic; the lesson teaches recognizing the type and withholding the heuristic when the type is uncertain, not a guaranteed detector.
