Swap
Convert between any two listed assets at a live rate derived through USDT, with the fee as its own line rather than buried in the rate. Settlement is real ledger movement in your spot wallet.
1 BTC ≈ 78,034.01 USDT
- Rate
- 1 USDT ≈ 0.00001281 BTC
Enter an amount to see the fee and the total value.
Connecting to the live stream
Convert settles inside your spot wallet in one ledger transfer, at the server’s own re-derived rate — it refuses to fill if the price moved beyond tolerance. Prefer working the book yourself?
Trade BTC/USDT on the terminalWhere the rate comes from
Every asset on the card is priced against one unit: USDT, from its own live spot pair. A cross between any two of them is those two prices divided — no order book of its own, no bid or ask, and nothing folded in between the legs. What the last trade printed is what the quote is.
That absence of a spread is checkable rather than promised. The fee — the spot taker rate, the same rate a spot market order pays — is charged once, as its own line on the card and its own entry in the ledger, and it is the only charge in the path. The fees page proves it row by row, against the two spot orders a convert replaces.

BTC/USDT
last traded price, live spot pair
1 BTC ≈ 78,034.01 USDT
1 BTC ≈ 78,034.01 USDT

ETH/USDT
last traded price, live spot pair
1 ETH ≈ 2,454.00 USDT
1 ETH ≈ 2,454.00 USDT
1 BTC ≈ 31.7987 ETH
The rate the ticket quotes. The fee is charged on top as its own line — never folded into this number.
The guardrails
The number on the card is a consent check, never an input. At execution the server derives the rate again from its own reads — live tickers first, the venue’s public API behind them — and what settles is the server’s number, compared against the one you saw. When they disagree beyond tolerance, or the conversion cannot be done honestly at all, it is refused whole: nothing partially converts, and every refusal below leaves your balance exactly where it was.
An unpriced leg
When either side has no live price, there is no rate and nothing fills. An unknown price is treated as unknown, never as zero — a zero would render as a real-looking rate that converts a balance into nothing.
A rate that moved
More than 50 bps between the rate you were quoted and the one the server derives — in either direction — and the conversion is refused. A rate that moved in your favour is still not the trade you agreed to.
A result that would be nothing
A conversion whose proceeds would vanish into the fee is refused rather than executed for zero. Amounts settle at 8 decimals, and one that rounds to nothing there is refused the same way.
More than the wallet holds
The balance check runs inside the same database transaction that would move the money, against your spot wallet as it is at that instant — not as the page happened to show it. The refusal names the amount needed and the amount available.
The same submit, twice
Every quote carries a one-time key. A retry — a flaky network, a doubled click — returns the conversion that already executed instead of performing a second one. Nothing moves twice.
An asset into itself
Converting an asset into itself is refused as malformed. The pickers make it hard to even ask: choosing the other side’s asset swaps the two legs instead of colliding them.
When to swap, and when to trade
A last price is not a tradeable price. There is no order book behind a convert, so any size fills at the one derived rate — exact for a wallet-sized balance, and a simplification in your favour for a size that would clear several levels of a real book. No venue could actually fill that order at one price, and this page is not going to pretend otherwise: for size, the spot terminal walks the venue’s live depth level by level and pays the real average.
Reach for swap
- Rebalancing a wallet. One operation, one fee, one rate with nothing hidden inside it.
- A cross with no listed pair. Most alt-to-alt routes trade nowhere directly; the two USDT legs price them anyway.
- Small spot buys. A market buy’s fee rounds up at the venue’s lot step, which can cost a multiple of the rate on a small order. A convert rounds at ledger precision instead.
- Being done in one step. When finishing now matters more than choosing the price you finish at.
Open the terminal
- Any real size. Depth is modelled on the terminal: a large order walks the venue’s live book and pays the average it actually holds — the honest version of the trade a convert simplifies.
- A price of your own. A convert only ever fills at now. An order on the book can rest at your limit until the market comes to it.
- Either leg on its own. Trading directly against USDT, where the spread you cross is the real cost and worth seeing.
- Watching what you take. The book, the tape and the chart sit on the same screen as the ticket.
A real ledger, moving paper money
The prices on this page are read from a live public venue feed — the same books and trade prints the markets pages stream. The balances a swap moves are not real: they are paper, credited by simulated deposits, and no asset is custodied anywhere on your behalf.
The movement itself is not pretended. A conversion settles as one double-entry transfer inside your spot wallet: the amount you give leaves your available balance, the amount you receive arrives net of the fee, and the fee lands in a named house account — every leg sums to zero or the transfer is refused outright. That is why the card can report the executed rate and fee afterwards: they are read back from what settled, not from the preview.
Underneath, a real settlement rail now exists — a watcher that credits on-chain deposits, a worker that can carry a payout to a signed broadcast — and it is confined by configuration to test networks, where tokens carry no monetary value. It refuses mainnet outright, and no page here can request a withdrawal yet, so a swap still moves paper from end to end. The full line between real and simulated is drawn in one place, once.