While all Monero transactions are anonymous by default, if you're not careful about the wallet you pick, you risk compromising your privacy by exposing your IP address, or making it possible to link your Monero wallet to an account on an exchange.
There's always a trade-off between privacy and convenience. Using incognito mode prevents your friends and family from seeing pornography in your browsing history, but it doesn't offer any serious protection against the government or even your internet service provider. Using Tor on a secure operating system like Tails allows you to use the internet extremely privately, but it's slow and requires booting up a dedicated private operating system.
This same spectrum exists when choosing a wallet. Running a desktop Monero wallet connected to a remote node is really convenient, because you don't have to download the full blockchain—but you risk leaking your IP address to the remote node. If you're buying illicit goods on the darknet, that might not be something you want to risk. Running your own node connected to a cold storage wallet is more private and secure, but it takes up a lot of hard drive space, and you have to connect the hardware wallet to your computer each time you want to make a transaction.
Here are a couple of the most important factors to keep in mind when it comes to security and privacy for Monero wallets:
- Remote nodes: Connecting your wallet to a remote node means you don't have to download Monero's 70GB+ blockchain. But remote nodes can compromise your privacy by associating your IP address with transactions that you've broadcast to the node. Thanks to Monero's stealth addresses, however, remote nodes can not see the amount sent in a transaction, or the addresses of the sender or receiver of a transaction.
- Private key storage: With a desktop wallet, your private keys are stored locally on your computer, making them vulnerable to hackers and viruses. With a hardware wallet, your keys are stored on a device that never touches the internet, making hardware wallets more secure.
- Subaddress availability: Subaddresses are addresses associated with your public address that you can create for different transactions. Transactions sent to subaddresses will show up on your public address. This helps prevent the sender of a transaction from linking payments to your public address. While the Monero protocol has supported subaddresses since 2017, not all wallets do.
|Wallet||Type||Open source||Currency Exchange||Subaddresses|
|MyMonero||Desktop, Web, Mobile||✅||❌||❌|
|Cake Wallet||Mobile (iOS)||✅||✅||✅|
|Ledger Nano S (with Monero GUI)||Hardware||❌||❌||✅|
We put together this guide to evaluate the best Monero wallets based on privacy, convenience and security. To help you make the right choice, we tested the most popular Monero wallets available, from hardware wallets to web wallets.
Table of Contents
- 💵 Everyday Transactions: MyMonero Desktop
- 🏦 Be Your own Swiss Bank: Ledger Nano S running a full node
- 📱 Best for iOS: Cake Wallet
Best for Everyday Transactions: MyMonero Desktop Wallet)
For people who don't have any technical knowledge and want to send Monero for everyday, low-risk transactions, the MyMonero desktop wallet is the best option because it's the easiest and fastest wallet to use.
If you're doing something mildly embarrassing, like paying for online pornography, or you simply don't want anyone snooping around on your transactions, MyMonero provides a more than sufficient level of privacy for what you need. MyMonero is maintained by the core Monero development team, and the codebase is completely open source for anyone to inspect. The MyMonero desktop wallet doesn't send your private key to its servers—your key remains on your local machine.
Sending .5 XMR with the MyMonero wallet.
Out of all the Monero wallets we tested, MyMonero was the most intuitive and the easiest to use. The desktop wallet comes with a number of convenient features, such as the ability to drag QR codes into the application to automatically fill the transaction address field, or the ability to save addresses to a contact book after sending a transaction. These touches make it simpler and faster to actually spend your Monero.
Dragging and dropping an image of a QR code into the send address field automatically converts the QR code to a destination address.
MyMonero does make one important privacy trade-off for the sake of convenience: Instead of scanning the blockchain locally on your computer, the wallet sends your view keyto its servers and uses the key to scan for incoming transactions to your account. That means that unlike a lot of Monero wallets, such as the Monero GUI or Cake Wallet, you don't have to wait for your wallet to sync with the Monero blockchain, which makes using MyMonero a lot simpler.
The downside is that if MyMonero's servers are compromised, your view key is at risk of exposure, making it hard but not impossible to link your real-world identity with your Monero address. Because Monero uses stealth addresses, someone with your view key would only be able to see the transactions you've received. They still can't tell where transactions originated from, or see outgoing transactions from your address.
Users who want to sync MyMonero to a local node can input their local node address in the preferences section of the desktop application.
The other privacy risk of using MyMonero is that most people using it will connect to the network with a remote node. While a number of patches have been made to Monero to limit information that leaks to a remote node, remote nodes can learn your computer's IP address, and they can associate transactions that you send to the node with your IP address. Users concerned about privacy risks with a remote node should use a VPN or connect to the node via Tor. Alternatively, they should consider running a full node, which is the most private option.
The default node for the wallet is the one hosted by mymonero.com. If you want to choose a different remote node, you can find a list of community-hosted nodes here.
Be Your Own Swiss Bank: Ledger Nano S with a Full Node
If you need the highest possible level of security and privacy, we recommend keeping your Monero safe in cold storage with a hardware wallet like the Ledger Nano S and connecting it to a full node that you control. This is the most private and secure wallet option, but the trade-off is that it's a lot less convenient.
If you're buying or selling illegal goods on the darknet, or trying to avoid government surveillance, it's a small price to pay.
To run a full node, you have to download the entire Monero blockchain, which is over 70+ gigabytes, and it can also eat up your computer's bandwidth and processing power to keep the node up to date. The Ledger Nano S will also set you back $59, while every other Monero wallet is completely free.
Using a hardware wallet minimizes your attack surface and the likelihood that you'll expose your private keys. With a software wallet run on your computer, it's possible for hackers to gain access to your keys by infecting your computer with viruses and malware. Hardware wallets keep your private keys in “cold storage,” meaning an off-line device that's disconnected from the internet. The only way to access the funds in cold storage is through the keys on the actual device.
The Ledger Nano S is a popular hardware wallet that supports Monero along with over 1,000 other cryptocurrencies. Your private keys are stored on the hardware device, which you use by connecting it to your computer via USB. To send transactions from the Ledger, you have to physically press a button on the device, which signs transactions on your private key and sends the signature to a wallet on your computer. Your private keys themselves never actually touch the internet.
You can install Monero on your Ledger Wallet in less than five minutes by following theinstructions here. The most time-consuming part of the process is running a full node, which will take roughly 24 hours, depending on your hardware and bandwidth.
Sending .25 XMR via the Monero GUI.
Once you have your Ledger set up, you can create a new Monero wallet through the Monero GUI. You can use the GUI to initiate any transactions, which you then confirm on your device by pressing a button.
Confirming the destination address of a Monero transaction on the Ledger Nano S.
If you don't want to shell out money for a Ledger hardware wallet, you can also create your own cold-storage wallet on a USB key. This is a much less convenient option, however, because each time you send a transaction from your cold-storage wallet, you expose your private keys to an internet-connected device—and have to create a new cold wallet after.
Best for iOS: Cake iOS
If you want to send and receive Monero from your iPhone, we recommend Cake Wallet as the most private and secure option. Cake Wallet includes a number of useful features in addition to basic wallet functionality, such as the ability to exchange your Monero for different currencies.
With Cake Wallet, you control your own private keys, which never leave your device. That means that using Cake Wallet can actually be more secure than using a desktop wallet like the Monero GUI or MyMonero for desktop because iOS restricts root-level access, making it more secure than most desktop machines. Cake Wallet's source code is completely open-source, and the wallet has been audited by the community.
To import a wallet from a seed key, Cake Wallet has to sync to the Monero blockchain locally to identify any transactions sent to your address.
Unlike MyMonero for desktop or iOS, Cake Wallet never sends your private view key to an external server. That means that it's slightly more private but also less convenient to use because you have to wait for the wallet to sync to the Monero blockchain locally. Depending on when you created your wallet, this can take a significant amount of time and bandwidth.
In the transaction above, Cake Wallet uses XMR.to to convert 3.7710 XMR to .05 BTC.
Overall, we picked Cake Wallet as the best iOS wallet because beyond basic wallet functionality, it offers useful integrations with MorphToken and XMR.to that allow you to exchange your Monero for Bitcoin, Ethereum, Litecoin, or Dash directly from your device.
If you don't care about the exchange feature, and you don't want to wait for the chain to sync, consider using the mobile version of MyMonero. Alternatively, if you're using an Android phone, you can use Monerujo, a Monero wallet for Android.