It really does break the on-chain trail. It replaces it with a database that has your passport attached.
The improvised version goes: send SOL to an exchange, leave it a while, withdraw to a different wallet. On chain this genuinely works. Your deposit vanishes into a hot wallet shared with thousands of strangers and the withdrawal comes back out of a different one. Follow the addresses and the trail stops.
It now lives in a company database, filed under the identity you verified when you opened the account. The exchange knows both ends of that transfer with total certainty and no cryptography involved. It keeps that record for years because regulation requires it to, hands it over on a lawful request, and loses it in whatever breach comes next. Nothing was deleted. One public record was traded for one private record held by a company whose incentives are not yours.
| Routing through an exchange | A privacy pool | |
|---|---|---|
| custody during the process | theirs | a program with no instruction that could pay anyone but a valid proof |
| what you hand over | identity, documents, both addresses | a fixed amount of SOL and a hash |
| who can still connect the two ends | the exchange, indefinitely | nobody, given a deep enough pool |
| can it be stopped mid-way | yes — accounts are frozen routinely | no freeze instruction exists to call |
| the bad day | account locked, funds held, an appeals queue | note lost, SOL in the pool permanently |
| who you are trusting | a company, its staff and its security | a published design and the depth of the crowd |
It is not strictly worse — it fails differently. There are humans on the other end, a lost password is recoverable, and if you send to the wrong place somebody may be able to help. None of that exists here. Lose the note and the SOL stays in the pool for good. What you are choosing between is the risk of a company failing you and the risk of you failing yourself.
Withdrawing from a pool directly into a KYC deposit address that is already in your name reconnects both halves by hand, and does it in a database rather than on chain, where you cannot see it happening. Land somewhere with no history, and keep mixed SOL from meeting unmixed SOL in the same wallet.