Private Transactions for Ethereum
A fully decentralized protocol for private transactions on Ethereum.
Supported Networks
Binance Smart Chain
Polygon Network
Optimism
Arbitrum One
Gnosis Chain
Avalanche Mainnet
Ethereum Goerli
How Tornado Cash Works
Deposit
A user generates a random key (a secret note) and deposits Ether or an ERC20, along with submitting a hash of the secret note to the Tornado Cash smart contract.
Wait
After depositing, users should wait some amount of time before withdrawing to improve their privacy.
Withdraw
A user submits proof of having the valid key to one of the deposited secret notes, and the contract transfers the funds to a specified recipient.
Tornado Cash Privacy Guide for Beginners
Master non-custodial privacy. Follow our official step-by-step tutorials to secure your first anonymous transaction on Ethereum or BSC.
Select your asset (ETH, USDC, USDT, BNB) below. Our visual guides cover deposit, relayers, and withdrawal for complete financial sovereignty.
Essential Tornado Cash Mixing Tutorials
How to Mix ETH with Tornado Cash
The ultimate guide to mixing Ethereum. Learn to break on-chain links using zero-knowledge proofs. Covers deposit amounts, anonymity sets, and safe withdrawal.

Tornado Cash USDC Guide
Step-by-step instructions for private USDC transactions. Learn about token approval, gas optimization, and timing strategies for maximum privacy.
All Privacy Guides
Tornado Cash USDT Mixer
Learn how to make private USDT transactions with our comprehensive tutorial. Includes token approval and withdrawal best practices.
Start TutorialTornado Cash BNB Guide
A comprehensive tutorial for private BNB transactions on BSC, including advanced privacy techniques and multi-network considerations.
Start TutorialHow Tornado Cash Achieves Privacy
Tornado Cash improves transaction privacy by breaking the on-chain link between source and destination addresses. It uses a smart contract that accepts ETH deposits that can be withdrawn by a different address. To preserve privacy, a relayer can be used to withdraw to an address with no ETH balance. Whenever ETH is withdrawn by the new address, there is no way to link the withdrawal to the deposit, ensuring complete privacy.
Status of Tornado Cash Decentralization
The Tornado Cash protocol is fully decentralized and owned by the community: the initial developers have no control over it and are not running any servers.
Tornado Cash smart contracts, circuits, and toolchain are fully open-sourced.
Tornado Cash smart contracts are unstoppable: there are no admins and no upgradeability. Nobody, including the initial developers, can change or shut it down.
The user interface is hosted by the community on IPFS. It is accessible as long as at least one user in the world is hosting it.
Tornado Cash governance and mining smart contracts are deployed by the community in a decentralized way; there is no single deployer.
Protocol parameters and token distribution are controlled by the community via governance.
Tornado Cash Statistics
Our Products
Governance
Tornado Cash is completely decentralized, controlled, and governed by its community. By acquiring TORN tokens, you can participate by voting on governance proposals and influencing the evolution of the protocol.
Read MoreAnonymity Mining
By using Tornado Cash, you also mine TORN, the governance token of Tornado Cash. The more you use it, the more say you have in the evolution of the protocol.
Read MoreCompliance Tool
Maintaining financial privacy is essential. Tornado Cash provides a tool to generate a compliance report of your transaction history, allowing you to prove the origin of your funds when required.
Read MoreFrequently Asked Questions
No. Tornado Cash is a trustless, decentralized privacy protocol. It uses zk-SNARKs to sever the link between deposit and withdrawal addresses, ensuring your transaction history remains private.
The Tornado Cash project does not collect any user data. The UI is hosted in a decentralized way on IPFS and can be accessed using the link app.tornadocashclassic.com. Users can also run it locally or use the CLI tool.
Yes. The protocol is non-custodial and immutable. Smart contracts have been heavily audited by experts like ABDK and Pessimistic. Audit reports:
Relayers enable gas-free withdrawals to addresses with no ETH balance, preserving anonymity. The relayer pays the gas fee and takes a small compensation from the deposit. Relayers cannot alter transaction data or steal funds.
Making your ETH transactions private is a straightforward process. We've prepared a detailed, step-by-step guide with screenshots to walk you through it safely.
Yes, the protocol supports various ERC-20 tokens, including USDT, USDC, and BNB. The process is very similar to handling ETH but requires an additional token approval step. To ensure you follow all the steps correctly, please refer to our dedicated guides.