Rates
The market rate, and the one you get
This page shows both side by side. The mid-market rate is the public benchmark; the effective rate is the amount received divided by the amount deposited, all fees included. The gap between them, in basis points, is the real cost of the operation.
Freshness
Every rate carries its timestamp and its source. Past the freshness threshold the engine refuses to quote rather than serve a stale price: a rate page that can never fail is a rate page that lies.
Mid-market rate as of · source kraken
Two rates, two meanings
Confusing the two is behind almost every unpleasant surprise on a conversion. The distinction fits in two paragraphs.
- 18
- Assets quoted
- 9
- Rails quoted
- USDT
- Smallest gap
- LINK
- Largest gap
Assets with a fresh rate available at this moment.
Payout methods with a rate available in their own currency.
Cheapest asset to convert today: 0.90% away from mid.
Most expensive asset to convert today: 1.50% away from mid.
Mid-market rate
The midpoint between the best bid and the best ask at the same instant. Nobody actually gets it: it is a market benchmark, not a commercial offer. It is the starting point of the calculation and the reference against which any offer is measured.
Effective rate
The amount you receive divided by the amount you deposited. One number, impossible to dress up, absorbing the network cost, our spread and the rail fee. That is the one to compare across providers.
Rates by asset
The same reference rail (SEPA Instant, euro) on every row: what varies from one row to the next is the asset, its network and its volatility surcharge, nothing else. The network kept is the cheapest among those the asset supports.
| Asset | Mid-market | Network used | Effective rate | Gap to mid | You receive |
|---|---|---|---|---|---|
| Tether USDT | 0.8616 | Tron (TRC-20) | 0.853847 | 90 bps | €1,000.00 |
| USD Coin USDC | 0.86155 | Ethereum (ERC-20) | 0.853798 | 90 bps | €1,000.00 |
| Dai DAI | 0.861515 | Ethereum (ERC-20) | 0.851611 | 115 bps | €1,000.00 |
| Bitcoin BTC | 68,715.05 | Bitcoin | 67,855.96 | 125 bps | €1,000.00 |
| Ethereum ETH | 2,119.21 | Ethereum (ERC-20) | 2,092.71 | 125 bps | €1,000.00 |
| Litecoin LTC | 46.195 | Litecoin | 45.6175 | 125 bps | €1,000.00 |
| Solana SOL | 88.715 | Solana (SPL) | 87.6059 | 125 bps | €1,000.00 |
| Tron TRX | 0.287 | Tron (TRC-20) | 0.283412 | 125 bps | €1,000.00 |
| XRP XRP | 1.22 | XRP Ledger | 1.2047 | 125 bps | €1,000.00 |
| BNB BNB | 653.39 | BNB Smart Chain (BEP-20) | 645.2215 | 125 bps | €1,000.00 |
| Dogecoin DOGE | 0.07522 | Dogecoin | 0.07428 | 125 bps | €1,000.00 |
| Cardano ADA | 0.187017 | BNB Smart Chain (BEP-20) | 0.184211 | 150 bps | €1,000.00 |
| Avalanche AVAX | 6.5015 | Avalanche C-Chain | 6.404 | 150 bps | €1,000.00 |
| Stellar XLM | 0.159005 | Stellar | 0.156619 | 150 bps | €1,000.00 |
| Toncoin TON | 1.231 | TON | 1.2125 | 150 bps | €1,000.00 |
| Bitcoin Cash BCH | 216.46 | Bitcoin Cash | 213.2128 | 150 bps | €1,000.00 |
| Polygon POL | 0.0818 | Polygon PoS | 0.080573 | 150 bps | €1,000.00 |
| Chainlink LINK | 10.1905 | Ethereum (ERC-20) | 10.0377 | 150 bps | €1,000.00 |
Computed on a deposit worth 1,000 EUR paid out by SEPA Instant transfer. Stablecoins carry no volatility surcharge, which accounts for most of the spread between the top and bottom of the table.
Effective rate by payout method
Same asset, same network, same deposit on every row. What changes is the rail — its currency, its fees, its limits. The gap column therefore isolates exactly what choosing a rail costs.
Reference deposit: 0.01 BTC, sent on its native network.
| Payout method | Currency | Mid-market | Effective rate | Gap to mid | You receive | Typical time |
|---|---|---|---|---|---|---|
| Virement SEPA Instantane | EUR | 68,715.05 | 67,686.00 | 150 bps | €676.86 | under 5 minutes |
| Virement SEPA | EUR | 68,715.05 | 67,686.00 | 150 bps | €676.86 | about 4 hours |
| Faster Payments | GBP | 59,017.15 | 58,133.00 | 150 bps | £581.33 | under 5 minutes |
| ACH | USD | 79,747.35 | 78,554.00 | 150 bps | $785.54 | 1 business day(s) |
| Revolut | EUR | 68,715.05 | 67,686.00 | 150 bps | €676.86 | under 5 minutes |
| Wise | EUR | 68,715.05 | 67,515.00 | 175 bps | €675.15 | about 30 minutes |
| Domestic Wire | USD | 79,747.35 | 77,054.00 | 338 bps | $770.54Below minimum | about 3 hours |
| PayPal | EUR | 68,715.05 | 66,280.00 | 354 bps | €662.80 | about 10 minutes |
| Virement international SWIFT | USD | 79,747.35 | 76,054.00 | 463 bps | $760.54 | 2 business day(s) |
A badge marks rows where the resulting amount falls outside the rail’s limits: the rate is still exact, but the operation would not be accepted at that size. Ceilings are listed on the Limits page. A gap smaller than the euro-area one comes from the volume tiers, which are expressed in minor units of the payout currency: a currency with a small unit value reaches a tier sooner.
How these rates are produced
A rate page is only worth something if its method is published. Here is ours, including what it does not guarantee.
- A mid price, never a customer price
- The rate source returns a mid-market price only. Spread and fees are applied afterwards, explicitly, by a separate module. Blending the two into one number is exactly the mechanism that lets a margin disappear inside a “rate”.
- No cache, at any layer
- This page is rendered on every request. The rate module is excluded from every application cache: a rate served from a cache, even a one-minute one, is a price that no longer exists. That is a financial bug, not a performance win.
- An enforceable freshness threshold
- Every quote carries the maximum tolerated age of its source. Past that, the engine raises and refuses to quote. A screen with no price is acceptable; a stale price is not.
- The data is timestamped, not the request
- The time shown is when the source produced the price, not when we read it. The difference matters: it makes the real age of the rate verifiable.
- Indicative here, firm on the order
- Rates on this page are indicative. The rate that binds us is the one locked when the order is created, and it stops moving for the deposit window whatever the market does.
- What these numbers do not say
- They exclude the fee your own wallet charges to send funds, and any incoming-payment fee your bank may apply on some rails. Both costs are real, neither comes to us, and we cannot measure them on your behalf.
Questions about rates
Why does the rate change between two page loads?
Because it is recomputed on every request, with no cache. The market moves continuously; a rate page that never moves is showing a dead price. The rate that binds us is frozen when you create the order, not when you read this page.
Why is the gap to mid not the same for every asset?
Three reasons that stack: the volatility surcharge only applies to non-stable assets, the withdrawal cost depends on the blockchain used, and a beta corridor carries an extra surcharge. The fee schedule breaks down all three.
Can I get the mid-market rate?
No, and nobody offers it. The mid is a theoretical midpoint between two prices that do exist; getting it would require an intermediary to work at a loss. What is comparable is the gap to that mid — which is exactly what this page publishes.
Does the effective rate include every fee?
Every one of ours, yes: network cost, spread and rail fee are already in it. It excludes the fee your own wallet takes to send funds to the deposit address, and any incoming-payment fee from your bank, neither of which we control or collect.
What happens if the rate source goes down?
Quoting fails explicitly and no order can be created. We keep no fallback value: a backup rate would be an invented rate, and an invented rate on a financial product is worse than being unavailable.
Does the displayed rate depend on the amount?
Yes, and it has to. Fixed fees and network costs weigh proportionally more on a small amount, and volume discounts apply above certain thresholds. The effective rate on a 200 EUR operation is therefore not the one on a 20,000 EUR operation.