Bitcoin is not anonymous by default. Every confirmed transaction remains on the public blockchain: spent inputs, newly created outputs, and amounts are visible. But these records do not, by themselves, usually reveal who owns each address. Analysts link addresses by looking for patterns. One common heuristic is that if several inputs are spent together, they probably belong to the same owner. Satoshi described this risk in the privacy section of the Bitcoin white paper.
CoinJoin attempts to make those inferences less reliable. Several participants jointly create a transaction, making it harder for an observer to determine which output belongs to whom. CoinJoin does not remove transactions from the blockchain or hide the amounts themselves. Instead, it creates ambiguity: rather than an obvious match between inputs and outputs, there are several possible interpretations. How much this helps depends on the protocol, the participants, and what users do afterward.
Payjoin is a version designed to work as an ordinary payment between a sender and a recipient. The recipient adds one of their own inputs to the shared transaction, making it harder for an outside observer to apply the assumption that “all inputs belong to the sender.” Payjoin can also make it harder to infer the exact payment amount from the outputs. However, the participants can see the transaction they are jointly creating, and the payment and its amounts remain on the blockchain. BIP 78 describes a synchronous version of Payjoin, while BIP 77 describes an asynchronous one; neither promises complete anonymity.
JoinMarket is built around a liquidity marketplace. One participant initiates a CoinJoin as a taker, while others act as makers and provide inputs. Equal-value outputs make it harder to match each output to a specific input, but the result depends on available liquidity and the participants in the round. Fidelity bonds are intended to make some Sybil attacks more expensive, but they do not rule out every possible attack or provide an absolute guarantee. For that reason, a fixed participation minimum mentioned in an older discussion should not be treated as a permanent protocol requirement: conditions may depend on the implementation and current offers.
WabiSabi uses cryptographic credentials to make it harder for the coordinator to match participants’ inputs with their outputs. Unlike schemes that only allow outputs of the same size, it supports outputs of different amounts. That provides flexibility, not invisibility: the coordinator and outside observers can still see the public transaction structure, including amounts and address types. Poorly chosen amounts, address reuse, and implementation details can reveal links. So it is more accurate to say that WabiSabi helps weaken certain forms of analysis—not that it “completely eliminates links between addresses.”
In Whirlpool, participants created outputs of equal denomination, while a preliminary transaction called tx0 prepared funds for a round and could leave change. That change and the structure of tx0 give analysts clues, but a clue alone does not prove that all subsequent addresses belong to the same person. To claim that a specific user has been traced, the reasoning needs to be shown, with direct blockchain facts distinguished from heuristic inferences. Studies of Whirlpool examine real transactions and user behavior, but they do not establish a universal rule that every participant can always be deanonymized. Whirlpool’s public coordinator servers were shut down, so older descriptions of the service should be treated as historical.
For any CoinJoin, it helps to distinguish three levels of certainty. A transaction and its inputs can be observed directly on the blockchain. The conclusion that several addresses belong to the same owner is usually based on heuristics, which can be wrong. And claiming that a specific person or wallet is behind those addresses requires additional evidence. Mixing up these levels can easily make an assumption sound like an established fact.
CoinJoin does not switch off Bitcoin’s transparency or guarantee anonymity. It changes how confidently an outside observer can link inputs and outputs. So the question is not which protocol “makes a user untraceable,” but what information is visible to observers, counterparties, and coordinators—and what new clues the user may leave behind after using CoinJoin.
CoinJoin attempts to make those inferences less reliable. Several participants jointly create a transaction, making it harder for an observer to determine which output belongs to whom. CoinJoin does not remove transactions from the blockchain or hide the amounts themselves. Instead, it creates ambiguity: rather than an obvious match between inputs and outputs, there are several possible interpretations. How much this helps depends on the protocol, the participants, and what users do afterward.
Payjoin is a version designed to work as an ordinary payment between a sender and a recipient. The recipient adds one of their own inputs to the shared transaction, making it harder for an outside observer to apply the assumption that “all inputs belong to the sender.” Payjoin can also make it harder to infer the exact payment amount from the outputs. However, the participants can see the transaction they are jointly creating, and the payment and its amounts remain on the blockchain. BIP 78 describes a synchronous version of Payjoin, while BIP 77 describes an asynchronous one; neither promises complete anonymity.
JoinMarket is built around a liquidity marketplace. One participant initiates a CoinJoin as a taker, while others act as makers and provide inputs. Equal-value outputs make it harder to match each output to a specific input, but the result depends on available liquidity and the participants in the round. Fidelity bonds are intended to make some Sybil attacks more expensive, but they do not rule out every possible attack or provide an absolute guarantee. For that reason, a fixed participation minimum mentioned in an older discussion should not be treated as a permanent protocol requirement: conditions may depend on the implementation and current offers.
WabiSabi uses cryptographic credentials to make it harder for the coordinator to match participants’ inputs with their outputs. Unlike schemes that only allow outputs of the same size, it supports outputs of different amounts. That provides flexibility, not invisibility: the coordinator and outside observers can still see the public transaction structure, including amounts and address types. Poorly chosen amounts, address reuse, and implementation details can reveal links. So it is more accurate to say that WabiSabi helps weaken certain forms of analysis—not that it “completely eliminates links between addresses.”
In Whirlpool, participants created outputs of equal denomination, while a preliminary transaction called tx0 prepared funds for a round and could leave change. That change and the structure of tx0 give analysts clues, but a clue alone does not prove that all subsequent addresses belong to the same person. To claim that a specific user has been traced, the reasoning needs to be shown, with direct blockchain facts distinguished from heuristic inferences. Studies of Whirlpool examine real transactions and user behavior, but they do not establish a universal rule that every participant can always be deanonymized. Whirlpool’s public coordinator servers were shut down, so older descriptions of the service should be treated as historical.
For any CoinJoin, it helps to distinguish three levels of certainty. A transaction and its inputs can be observed directly on the blockchain. The conclusion that several addresses belong to the same owner is usually based on heuristics, which can be wrong. And claiming that a specific person or wallet is behind those addresses requires additional evidence. Mixing up these levels can easily make an assumption sound like an established fact.
CoinJoin does not switch off Bitcoin’s transparency or guarantee anonymity. It changes how confidently an outside observer can link inputs and outputs. So the question is not which protocol “makes a user untraceable,” but what information is visible to observers, counterparties, and coordinators—and what new clues the user may leave behind after using CoinJoin.








