Trade Bitcoin for Monero (or vice versa) with zero trust required. No exchange. No intermediary. No KYC. Just cryptography.
What is an atomic swap? A peer-to-peer cryptocurrency trade where either both parties get what they agreed on, or neither does. “Atomic” = all-or-nothing. No one can cheat. No one can steal. The protocol enforces fair exchange using cryptographic locks and timelocks.
Unlike Bitcoin-to-Bitcoin atomic swaps (which use simple hash time-locked contracts), Monero atomic swaps are more complex because Monero doesn’t support hash locks natively. The breakthrough came from research by Joel Gugger (2020) and the COMIT team, using adapter signatures — a cryptographic technique that links the secret needed to claim BTC with the secret needed to claim XMR.
Key insight: The “adapter signature” technique means that when Alice claims the XMR, she mathematically must reveal the secret that allows Bob to claim the BTC. It’s physically impossible to claim one side without enabling the other. This is what makes it trustless.
The original and most battle-tested BTC→XMR atomic swap implementation. Community-maintained since the COMIT team stepped back. Works as a CLI tool where you connect to “swap providers” (market makers) who offer XMR for your BTC.
| Feature | Details |
|---|---|
| Direction | BTC → XMR (you send BTC, receive XMR) |
| Time | 20-40 minutes |
| Minimum | ~0.001 BTC (provider-dependent) |
| Fees | BTC + XMR network fees only (~$1-3) |
| Platform | Linux, macOS, Windows |
| GitHub | github.com/comit-network/xmr-btc-swap |
Actively developed atomic swap protocol with optional Lightning Network integration for faster swaps. Supports both directions (BTC→XMR and XMR→BTC). Lightning swaps complete in 10-15 minutes vs 20-40 for on-chain.
| Feature | Details |
|---|---|
| Direction | BTC ↔ XMR (both ways) |
| Time | 10-15 min (Lightning) / 20-40 min (on-chain) |
| Minimum | Provider-dependent |
| Fees | Network fees only |
| Platform | Linux (primary), macOS, Windows |
| GitHub | github.com/farcaster-project |
A full decentralized exchange with a graphical interface. Supports atomic swaps between BTC, XMR, LTC, DASH, PIVX, and more. The most user-friendly option — has an orderbook, swap history, and wallet management built in. Runs as a local web app.
| Feature | Details |
|---|---|
| Direction | BTC ↔ XMR + LTC, DASH, PIVX, FIRO, PART |
| Time | 30-60 minutes (more chains = more confirmations) |
| Minimum | ~0.001 BTC equivalent |
| Fees | 0% exchange fee, network fees only |
| Platform | Linux, macOS, Windows (Docker) |
| Website | basicswapdex.com |
A graphical frontend built on the COMIT xmr-btc-swap protocol. Makes atomic swaps accessible to non-technical users. Point-and-click interface for discovering providers, initiating swaps, and tracking progress.
| Feature | Details |
|---|---|
| Direction | BTC → XMR |
| Time | 20-40 minutes |
| Interface | Desktop GUI (Electron) |
| Platform | Linux, macOS, Windows |
| GitHub | github.com/UnstoppableSwap/unstoppableswap-gui |
| Method | Trust Required | Speed | Privacy (BTC side) | Privacy (XMR side) | Ease of Use | KYC |
|---|---|---|---|---|---|---|
| Atomic Swap | Zero | 20-40 min | Transparent | Private | CLI / technical | None |
| Instant Swap (Trocador, eXch) | Service holds funds briefly | 5-15 min | Known to service | Private | Very easy | None |
| Haveno DEX | 2-of-3 multisig escrow | 30 min - 2h | N/A (fiat→XMR) | Private | Medium | None |
| P2P Trader (arnoldnakamura) | Reputation + escrow | 1-3 days (CBM) | N/A (EUR→XMR) | Private | Very easy | None |
| CEX (Kraken, Binance) | Full custody | Minutes | Full surveillance | Address linked to ID | Easy | Full KYC |
Download the latest release from GitHub:
# Linux
wget https://github.com/comit-network/xmr-btc-swap/releases/latest/download/swap_x86_64-unknown-linux-gnu
chmod +x swap_*
sudo mv swap_* /usr/local/bin/swap
# macOS
brew install comit-network/tap/swap
# Or download the binary from GitHub releases
Verify the binary signature against the release PGP key (recommended).
List all online market makers and their rates:
swap list-sellers --rendezvous-point /dnsaddr/rendezvous.coblox.tech/p2p/...
Output shows each provider’s exchange rate, minimum/maximum BTC amount, and uptime. Choose the best rate.
swap buy-xmr \
--receive-address 4XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX \
--seller /ip4/PROVIDER_IP/tcp/PORT/p2p/PROVIDER_ID \
--change-address bc1qYOUR_CHANGE_ADDRESS
The CLI displays the exact BTC amount to send and a deposit address.
From your Bitcoin wallet (Electrum, Sparrow, etc.), send the exact amount to the displayed address. Wait for 1-2 Bitcoin confirmations (10-20 minutes).
The protocol handles everything from here:
BTC locked ✓ (your BTC is in the 2-of-2 multisig)
XMR locked ✓ (provider's XMR is locked)
XMR redeemed ✓ (you claim the XMR)
BTC redeemed ✓ (provider claims your BTC using the revealed key)
XMR arrives at your specified Monero address. Open Feather Wallet or Monero GUI to see it. The entire process took 20-40 minutes, and at no point could anyone steal your funds.
Important: If anything goes wrong mid-swap (your computer crashes, internet drops), don’t panic. Run swap resume to pick up where you left off. The timelock refund guarantees you can always recover your BTC if the swap doesn’t complete. Keep your swap state directory (~/.local/share/xmr-btc-swap/) backed up.
The Bitcoin transaction in an atomic swap is visible on-chain. Chain analysis firms can potentially identify the swap pattern (specific script types, timing). If you start with tainted BTC, the swap doesn’t “clean” it — the BTC history is still traceable up to the swap point. The Monero side, however, is fully private from the moment XMR lands in your wallet.
Atomic swap providers have limited liquidity. For large amounts (>1 BTC), you may need to split across multiple swaps or providers. For consistent large-volume conversion, P2P traders or instant swap aggregators (Trocador) offer deeper liquidity.
Most atomic swap tools are CLI-based and require some terminal comfort. UnstoppableSwap GUI is the exception (graphical interface). BasicSwapDEX also has a web UI, but requires Docker setup. If you want zero technical hassle, consider other methods to buy Monero without KYC.
If the swap fails, your BTC is locked until the timelock expires (typically 12-24 hours). This means your funds are temporarily inaccessible. This is by design — it prevents cheating — but it means atomic swaps aren’t instant-cancellable like exchange orders.
Atomic swaps are powerful but technical. If you want XMR for EUR without running software, I offer Cash by Mail (EU-wide) and Face-to-Face trades (SW Germany) with 683 completed trades and 100% feedback.
Previously chingchongfalung on LocalMonero/AgoraDesk — verified on Wayback Machine
Contact on Telegramswap resume to retry. The “atomic” property means it’s all-or-nothing: complete trade or full refund.swap list-sellers to see each provider’s limits.