A mixing session is a swap, not a transfer. You send bitcoin to a deposit address that belongs to the service, and the service pays you from a separate reserve pool. The coins that arrive in your wallet are not the coins you sent, so the direct on-chain link between your old and new addresses is removed.

A session starts by defining the output. You provide a payout address, choose an optional delay and receive a session identifier together with a deposit address. The identifier is the only reference to your session, which is why it is generated randomly for every new session and never reused.

Next comes the deposit. Sending the exact amount you intend to mix within the validity window matters, because a deposit that arrives late or in unexpected pieces has to be handled as a separate case. Use the address and QR code shown in the session rather than an address you saved earlier, since each session has its own.

After the deposit confirms, the payout is scheduled. An immediate payout leaves a tight time correlation between the incoming and outgoing transactions, which is precisely the pattern analysis tools look for. A delay weakens that correlation, and splitting the payout across several addresses in uneven amounts weakens it further.

It is equally important to know the limits. Mixing cannot hide that a mix happened, it cannot change information you published yourself, and it cannot protect a payout address that you later reuse next to identifiable coins. Treat a session as one step in a privacy routine, not as a guarantee of anonymity on its own.

Back to the blog