Fees, limits, and what you're paying for.
Fees & Limits
Fees, limits, and
what you're paying for.
Zefram is not built around the lowest possible sticker price. It is built around trust-minimized settlement and clearer user control. Here is exactly what a swap costs and why — shown up front, before you send anything.
The cheapest route is not always the safest route. That matters here.
Fees
| Type | Amount | Notes |
|---|---|---|
| Protocol fee | Maker spread | The maker counterparty sets the swap rate and earns the spread. This is shown as the offered exchange rate before you accept. It is the cost of accessing a trust-minimized counterparty who locks XMR for you. |
| Zefram interface fee | Shown in offer | A small interface fee may apply. Always shown in the offer before you accept. No hidden charges added between offer and settlement. |
| Network fee (EVM route) | Variable — shown at signing | Gas costs for locking and claiming on Ethereum or the EVM chain you are using. Estimated before you sign. Actual cost depends on current gas prices. |
| Network fee (Bitcoin route) | Variable — shown at signing | Bitcoin transaction fees for the locking and refund steps. Estimated at session start. Depends on Bitcoin mempool at time of broadcast. |
| Refund fee | Protocol-defined | If a swap times out and you claim a refund, the refund transaction costs on-chain fees (gas or Bitcoin fee). No additional Zefram fee is charged for the refund itself. |
All fees are shown in the offer before you accept. There is no hidden spread added between offer display and settlement. The offer you accept is the swap you get, subject to on-chain execution conditions.
Swap limits
| Parameter | Value | Notes |
|---|---|---|
| Minimum swap (EVM) | Route-dependent | Minimums depend on network fees, chain conditions, and maker support at the time of the swap. Below a certain size, gas costs make the swap uneconomical. The app will indicate if a size is below the current minimum. |
| Minimum swap (Bitcoin) | Route-dependent | Minimums depend on Bitcoin transaction fees at the time of the swap. During high-fee periods, minimums may be higher. The app will indicate if a size is below the current minimum. |
| Maximum swap | Maker-dependent | Limits depend on available maker liquidity. Very large swaps may depend on maker availability at that time. In some cases, larger size may require manual coordination. |
| Session timelock (EVM) | Protocol-defined | The atomic swap contract has a timelock. Timelock windows vary by route, contract configuration, and chain conditions. If the swap does not complete within the window, the refund path becomes available. The window is shown at session start — do not start a swap if you cannot remain available. |
| Session timelock (Bitcoin) | Protocol-defined | Bitcoin timelocks are typically longer than EVM timelocks due to block time. The exact window is shown at session start and depends on block height at creation time. |
| Confirmations (Ethereum) | Route-dependent | Required before the counterparty proceeds. Number of confirmations depends on route configuration. Shown in the session interface. |
| Confirmations (Bitcoin) | Route-dependent | Bitcoin confirmations are slow relative to EVM. Budget time accordingly. A live block counter is shown in the session interface. |
Refund and recovery conditions
Atomic swaps have built-in recovery paths — they are part of the protocol, not a manual process. Understanding when and how refunds work is important before you start a swap.
Timelock expired — no counterparty action
Refund available. If the counterparty does not lock XMR within the timelock, the refund path opens. You can claim your refund from the session page when the deadline is reached. No manual intervention required in most cases.
Swap completed but claim missed
Act before claim deadline. Once the counterparty has locked and the swap is ready to claim, there is a claim deadline. Missing it may result in the swap timing out. The claim deadline is shown clearly in the session interface.
Wrong chain or asset sent
Contact support. Sending on a different chain or with a different asset than specified is not detectable by the protocol and may result in permanent loss. Always verify the session details before signing or sending.
Counterparty locked but swap stalled
Contact support. If the counterparty has locked XMR but the swap has stalled, contact support on Telegram with your session ID. Do not close the session or let the claim deadline pass without acting.
Session expired before signing
Start a new session. If you accepted an offer but did not sign before the session expired, nothing was locked. Start a fresh session. No funds are at risk if you have not yet signed any on-chain actions.
For any issue requiring assistance, contact us on Telegram with your session ID and a description of the issue. Include any transaction hashes relevant to the session.
All fees shown up front · Refund path built into protocol
Launch App →
Bitcoin → XMR · Live
Ethereum → XMR · Live
Trust-minimized
No account required
© 2026 Zefram · Legal