Monero Atomic Swaps — Trustless BTC↔XMR Exchange Without KYC

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.

0
Intermediaries
0
KYC Required
20-40
Minutes per Swap
3
Active Tools

How Monero Atomic Swaps Work

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.

The Protocol Flow (Simplified)

Alice has BTC, wants XMR   |   Bob has XMR, wants BTC

1. Alice & Bob negotiate price and amount

2. Both generate shared cryptographic keys (adapter signatures)

3. Alice locks BTC in a 2-of-2 multisig with timelock

4. Bob sees Alice’s BTC lock, locks XMR in a view-key-shared address

5. Alice redeems XMR (reveals her secret key in the process)

6. Bob uses Alice’s revealed key to redeem BTC

Swap complete. Both parties got what they wanted.

If Alice disappears after step 3: timelock expires → Alice gets BTC back
If Bob disappears after step 4: timelock expires → Bob gets XMR back

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.

Available Atomic Swap Tools (2026)

1. COMIT xmr-btc-swap

Active CLI BTC → XMR

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.

FeatureDetails
DirectionBTC → XMR (you send BTC, receive XMR)
Time20-40 minutes
Minimum~0.001 BTC (provider-dependent)
FeesBTC + XMR network fees only (~$1-3)
PlatformLinux, macOS, Windows
GitHubgithub.com/comit-network/xmr-btc-swap

2. Farcaster

Active CLI + GUI coming BTC ↔ XMR Lightning

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.

FeatureDetails
DirectionBTC ↔ XMR (both ways)
Time10-15 min (Lightning) / 20-40 min (on-chain)
MinimumProvider-dependent
FeesNetwork fees only
PlatformLinux (primary), macOS, Windows
GitHubgithub.com/farcaster-project

3. BasicSwapDEX

Active GUI Multi-coin

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.

FeatureDetails
DirectionBTC ↔ XMR + LTC, DASH, PIVX, FIRO, PART
Time30-60 minutes (more chains = more confirmations)
Minimum~0.001 BTC equivalent
Fees0% exchange fee, network fees only
PlatformLinux, macOS, Windows (Docker)
Websitebasicswapdex.com

4. UnstoppableSwap GUI

Active GUI BTC → XMR

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.

FeatureDetails
DirectionBTC → XMR
Time20-40 minutes
InterfaceDesktop GUI (Electron)
PlatformLinux, macOS, Windows
GitHubgithub.com/UnstoppableSwap/unstoppableswap-gui

Comparison: Atomic Swaps vs Other Methods

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

Step-by-Step: Your First Atomic Swap (COMIT CLI)

1
Install the Swap CLI

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).

2
Find Available Swap Providers

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.

3
Initiate the Swap
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.

4
Send BTC

From your Bitcoin wallet (Electrum, Sparrow, etc.), send the exact amount to the displayed address. Wait for 1-2 Bitcoin confirmations (10-20 minutes).

5
Swap Executes Automatically

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)
6
Receive XMR

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.

Limitations & Practical Considerations

Bitcoin-Side Transparency

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.

Liquidity Limitations

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.

Technical Requirements

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.

Refund Timelocks

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.

Want Monero Without the CLI?

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 Telegram

Frequently Asked Questions

What is a Monero atomic swap?
A trustless, peer-to-peer exchange of BTC for XMR (or vice versa) with no intermediary, exchange, or KYC. Cryptographic locks ensure both parties either complete the trade or both get refunded. No one can steal funds at any point.
How long does a Monero atomic swap take?
20-40 minutes on-chain (bottleneck: Bitcoin + Monero block confirmations). With Lightning Network integration (Farcaster), 10-15 minutes.
Which tools can I use?
COMIT xmr-btc-swap (most mature CLI), Farcaster (bidirectional + Lightning), BasicSwapDEX (GUI, multi-coin), UnstoppableSwap GUI (graphical frontend for COMIT). All are open-source.
Are Monero atomic swaps truly private?
The Monero side is fully private (stealth addresses, ring signatures). The Bitcoin side is transparent — the BTC transaction is visible on-chain. For maximum privacy, start with Monero or use coinjoin before swapping.
What happens if the swap fails?
A timelock refund activates after 12-24 hours, returning your BTC. You never lose funds. Run swap resume to retry. The “atomic” property means it’s all-or-nothing: complete trade or full refund.
What is the minimum amount?
Provider-dependent, typically 0.001-0.01 BTC. The practical floor is set by Bitcoin transaction fees. Run swap list-sellers to see each provider’s limits.
Can I swap XMR → BTC (not just BTC → XMR)?
Yes, with Farcaster and BasicSwapDEX (both directions). COMIT xmr-btc-swap and UnstoppableSwap are BTC→XMR only. For XMR→EUR, P2P traders are the simplest option.
How do atomic swaps compare to instant swap services?
Atomic swaps = zero counterparty risk but 20-40 min and CLI-based. Instant swaps (Trocador, eXch) = faster (5-15 min) and easier (web form) but require briefly trusting the service. Both are KYC-free.

Related Guides