A withdrawal address is the blockchain address that receives the crypto you withdraw from an exchange or another platform. It belongs to the destination: your own wallet, a hardware wallet, another exchange account or someone you are paying. The exchange sends the coins to that address on the network you select, and once the transaction is confirmed nobody can call it back.
Seen from the receiving side it is a normal wallet address. Kraken, Binance and Coinbase call it the withdrawal address because, from their point of view, funds are leaving your account. The same string is the deposit address of whoever owns the destination wallet.
Every exchange withdrawal form has the same three fields: coin, network and withdrawal address. The first two are menus. The third is a string you have to bring from somewhere else, and getting it wrong is the one mistake nobody can undo. This guide explains what the withdrawal address is, how it relates to the deposit address on the other side, where to copy it from, why Kraken and Binance make you confirm it, how to pick the network and what to check before you press Withdraw.
The short version
- A withdrawal address is the receiving address of the wallet you are sending to. The exchange calls it that because the coins are withdrawn from your account to it. The wallet that owns it calls the same string its receiving or deposit address.
- You get it from the destination, never from the sending exchange: the Receive screen of your wallet, or the Deposit page of the exchange you are sending to. Copy it with the copy button. On Ethereum and EVM chains it is 0x + 40 hex characters; on Bitcoin it usually starts with bc1.
- The address does not fix the network. A 0x address exists on every EVM chain and USDT exists on several, so the network you select has to be one the destination supports. Binance's own guide says that sending on the wrong network results in permanent loss.
- Exchanges make you confirm, label or whitelist new addresses because a withdrawal cannot be reversed. For a first transfer to a new address, send a small test amount.
1. What is a withdrawal address?
When you withdraw crypto from an exchange, the exchange signs a transaction from one of its own wallets to an address you provide. That address is the withdrawal address. It is an ordinary blockchain address: on Ethereum and other EVM chains the 0x account address, on Bitcoin a string starting with bc1, 3 or 1, on Tron a string starting with T. There is no special withdrawal format. The word describes the direction of the transfer, not the address.
The address has to come from the place the coins are going. If you are moving funds to a wallet you control, it is the receiving address that wallet shows for the coin and network. If you are moving them to another exchange, it is the deposit address that exchange gives you. If you are paying someone, it is the address they sent you. The sending exchange cannot invent it for you and does not check that it belongs to the person you think it does. It only checks that the string is a valid address for the selected network.
Exchanges usually keep withdrawal addresses in an address book. Kraken's guide to adding a withdrawal address asks you to save each new address with a unique label before you can withdraw to it, and recommends copying and pasting the address rather than typing it. Binance's withdrawal guide keeps saved addresses under Address Management and, once you enable the address whitelist, only lets the account withdraw to those saved addresses.
2. Withdrawal address vs deposit address: what is the difference?
They are the same kind of string seen from opposite ends of one transfer. The deposit address is generated by the platform receiving the funds. The withdrawal address is what you paste into the platform sending them. Move coins from Binance to Kraken and Kraken's deposit address for that coin and network is exactly the withdrawal address you enter on Binance.
| Deposit address | Withdrawal address | |
|---|---|---|
| Who creates it | The receiving exchange or wallet, for a specific coin and network | Nobody new: it is the receiving side's deposit or receiving address, pasted into the sending platform |
| Where you find it | Deposit page of the exchange, or the Receive screen of a wallet | Withdraw page of the exchange, typed, pasted or picked from the address book |
| Direction | Funds arrive in the account that owns it | Funds leave the account that enters it |
| Who holds the private key | The exchange or wallet that generated it | Whoever owns the destination wallet |
| Extra field | A memo or destination tag shown next to it on the XRP Ledger, Stellar, TON and similar networks | The same memo or tag has to be entered with it, or the coins can be lost |
Two consequences follow. A deposit address on an exchange is the exchange's wallet, not yours, so it is not an address you would give someone for a long-term holding. And an address is only meaningful together with its network: one 0x string can receive ETH on Ethereum, USDC on Base or BNB on BNB Chain, and only the network selected on the sending side decides which of those happens.
3. What does a withdrawal address look like? Examples by network
The format depends on the network, not on the exchange. These are the forms you will meet most often:
| Network | What the address looks like |
|---|---|
| Ethereum and every EVM chain (Arbitrum, Base, Polygon, BNB Chain, Avalanche) | 0x followed by 40 hexadecimal characters, 42 in total. Mixed case is an ERC-55 checksum; the all-lowercase form is the same address |
| Bitcoin | bc1q (SegWit) or bc1p (Taproot) addresses of 42 or 62 characters; older addresses start with 1 or 3 |
| Tron, including USDT on TRC-20 | 34 characters starting with T |
| Solana | 32 to 44 base58 characters with no fixed prefix |
| XRP Ledger | A string starting with r, plus a destination tag that exchanges require |
An EVM withdrawal address looks like 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 and a Bitcoin SegWit one like bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4, the test vector from BIP 173. Both are public examples from documentation. Your own withdrawal address has the same shape and different characters.
The EVM wallet address guide goes deeper into the 0x format, the checksum and why the same address appears on every EVM network.
4. How do I get a withdrawal address?
Go to the destination and copy its receiving address for the exact coin and network you will withdraw on:
- Your own wallet (MetaMask, Trust Wallet, Rabby, Phantom, Ledger Live)
- Select the coin, open Receive and copy the address with the copy button. For ETH and tokens on EVM chains it is the 0x address shown under the account name, and it is the same on Ethereum, Arbitrum, Base and Polygon. For Bitcoin, Solana or XRP the wallet shows a separate address in that network's format.
- A hardware wallet
- The companion app (Ledger Live, Trezor Suite) displays the receiving address and the device can show it on its own screen. Check that the two match before you paste it into the exchange.
- Another exchange
- Open its Deposit page, pick the coin and the network, and copy the deposit address. If the page shows a memo or destination tag next to it, copy that too; the withdrawal will need both fields.
- A person or a merchant
- Ask for the address for the exact coin and network, and confirm the first and last characters through a second channel before a large transfer. A screenshot or a message can be altered on the way.
Then paste it into the withdrawal form of the sending exchange, select the network the destination expects, and save it in the address book with a label so you do not have to repeat the check next time.
5. Why do exchanges make you add, confirm or whitelist withdrawal addresses?
Because a withdrawal cannot be reversed. If someone takes over your exchange account, the fastest way to empty it is to withdraw to an address they control, so exchanges put friction in front of the one step that matters: adding a new destination.
Kraken's process is a good example. A new address is saved under Transfer and Withdraw with a unique label. The addition is approved automatically from a trusted device, otherwise through a confirmation email whose link expires after one hour. Withdrawals to a newly added address can also be held for up to 24 hours when the account password was changed without two-factor authentication or a master key.
Binance adds an optional whitelist on top. Its withdrawal guide states that once the whitelist is enabled, the account can only withdraw to whitelisted withdrawal addresses. With it on, a stolen password alone is not enough to send funds anywhere new.
Confirmation emails, holds after a security change and the small test transfer that exchanges suggest for a first withdrawal all exist for the same reason: they add a few minutes in which a wrong or hostile address can still be caught.
6. Which network should you choose for a withdrawal?
The one the destination wallet or exchange supports for that coin. The address alone does not say which network it is on: a 0x address exists on Ethereum, Arbitrum, Base, Polygon and every other EVM chain at the same time, and a stablecoin such as USDT is issued on Ethereum, Tron, BNB Chain and more. Exchanges therefore ask for the network separately. Binance's guide notes that the network is usually detected from the address, and still tells you to confirm it.
The same guide puts the rule in two sentences: "make sure that the selected network is the same as the network of the platform you are withdrawing funds to", and "sending funds to the wrong network will result in permanent loss". For a self-custody wallet that means a network the wallet has enabled; for another exchange, a network that appears in its deposit menu for that coin. If you are unsure which chain a wallet is showing, the EVM chain ID list maps every network name to its ID.
Among the networks the destination supports, choose on cost and speed. For a self-custody wallet, the network fee you will pay later, when you move the coins again, matters more than the exchange's withdrawal fee now. This is what a plain native transfer costs right now on Ethereum and on the main alternatives, from the ChainGate gas tracker:
Transfer cost right now, by network
| Network | Gas price | Native transfer | Token swap |
|---|---|---|---|
| Ethereum | 0.23 gwei | ~$0.01 | ~$0.09 |
| Arbitrum | 0.02 gwei | <$0.001 | ~$0.008 |
| Base | 0.01 gwei | <$0.001 | ~$0.006 |
| Optimism | <0.001 gwei | <$0.001 | <$0.001 |
| Polygon | 326.01 gwei | <$0.001 | ~$0.005 |
| BNB Chain | 0.05 gwei | <$0.001 | ~$0.006 |
Live figures for November 2, 2026 at Normal speed on the gas tracker. Exchange withdrawal fees are set separately and come on top.
For tokens, also check that what you receive on that network is the real token: the contract address guide explains how to read a token's contract address on the destination chain.
7. Withdrawal fee vs network fee: what are you paying?
Two different charges. The network fee is what the blockchain charges to include the transaction, paid in the chain's native coin (ETH on Ethereum, BNB on BNB Chain, TRX on Tron). The withdrawal fee is what the exchange charges you for the withdrawal: a fixed amount per coin and network, set by the exchange and deducted from your balance. The exchange broadcasts the transaction from its own wallet and pays the network fee itself. What you see on the form is its withdrawal fee.
Binance's withdrawal form shows the difference explicitly. You can enter either the receive amount, which the recipient gets with the fee added on top, or the withdrawal amount, which is deducted from your balance with the fee taken out of it. Either way the fee is a fixed figure per coin and network; the live network fee does not enter into it.
Once the coins are in your own wallet you pay network fees directly, and there the live numbers matter. The gas fees guide explains how they are calculated on Ethereum, the Bitcoin fees guide does the same for Bitcoin, and the tracker shows both right now.
8. What happens if the withdrawal address is wrong?
It depends on how it is wrong.
- Invalid address
- A missing character, a typo in a checksummed address or a Bitcoin address in an Ethereum form fails validation, and the exchange refuses the withdrawal before anything is sent. This is the cheap kind of mistake.
- Valid address that is not the one you meant
- The transaction goes through and the coins now belong to whoever holds that address's private key. The exchange cannot recall a confirmed transaction and neither can the network. Only the owner of the address can send the coins back, and if nobody holds the key, the coins are gone.
- Right address, wrong network
- The coins are sent on a chain the destination does not watch. Binance's guide warns that this results in permanent loss. If the destination is a self-custody wallet and the network is an EVM chain, you can often still reach the coins by adding that network to the wallet, because the same key controls the same 0x address everywhere. If the destination is an exchange, ask its support whether it recovers deposits on that network; do not assume it does.
- Missing memo or destination tag
- On the XRP Ledger, Stellar, TON and similar networks an exchange identifies your account by the memo, because the address itself is shared by many users. Binance's guide is explicit: if a memo is required and you fail to provide it, you may lose your funds. If that happens, the only route is the receiving platform's support.
The practical answer to all four is the same. For a first withdrawal to a new address, send a small test amount, wait for it to arrive, and only then send the rest. Binance's guide suggests exactly that.
9. How long does a withdrawal take?
Two clocks run one after the other. First the exchange processes the request: it checks the address against your address book or whitelist, may wait for an email or app confirmation, and may apply a hold after a recent security change. Kraken's hold of up to 24 hours on withdrawals to a new address after a password change without two-factor authentication is one example. Only then does it broadcast the transaction.
Second, the blockchain confirms it, and that part depends on the network: seconds on most EVM Layer 2 chains and on BNB Chain, about 13 minutes for Ethereum to reach finality, and from tens of minutes to over an hour on Bitcoin, depending on how many confirmations the receiving side waits for. Binance's guide says the same thing in fewer words: confirmation time varies by blockchain. Once the exchange has broadcast the transaction it shows a transaction hash, and the transaction hash guide explains how to follow it on a block explorer from pending to confirmed.
10. What is a withdrawal address in Ethereum staking?
The phrase has a second, narrower meaning for people who run a validator. A validator's stake and rewards sit on the consensus layer, and to get them out the validator needs withdrawal credentials that point at a normal Ethereum address. That address is called the withdrawal address. Rewards are swept to it and the stake is returned to it when the validator exits.
The ethereum.org staking withdrawals page states the rules: validator operators must provide a withdrawal address to enable withdrawals, and each validator account can only be assigned a single withdrawal address, one time. Once set it cannot be changed, so it should be an address whose key you will control for years.
Sweeps are automatic. A legacy validator has any balance above 32 ETH sent to its withdrawal address, and a compounding (type 2) validator any balance above 2048 ETH. You never send anything to this address yourself, which is the main difference from the exchange meaning: an exchange withdrawal address receives what you choose to send, a staking withdrawal address receives what the protocol pays out.
11. How to check a withdrawal address before you send
Everything in this guide comes down to a short routine before pressing Withdraw:
- Copy, do not type
- Use the copy button at the destination and paste. Kraken's guide tells users to copy and paste rather than type the address, because one wrong character produces a different address or an invalid one.
- Compare more than the ends
- After pasting, check the first and last four characters and a few in the middle against the source. Address poisoning scams rely on lookalike addresses whose ends match an address in your history, so never copy an address from a transaction list.
- Match the network on both sides
- The network you select at the exchange has to be one the destination has enabled for that coin.
- Add the memo or tag when there is one
- If the deposit page shows a memo or destination tag, the withdrawal needs it. No memo field at the destination means none is needed.
- Send a test amount first
- For a new address, withdraw a small amount, confirm it arrives in the destination wallet, then send the rest.
- Use the address book and the whitelist
- Save confirmed addresses with a label, enable the whitelist where the exchange offers one, and keep two-factor authentication on, so that adding a new destination always takes a step an attacker cannot skip.
If you are building the withdrawal flow yourself, validate the address against the network it will be sent on. ChainGate's SDK does this per network, and the same 0x string that passes on Ethereum fails on Bitcoin:
import { ChainGate, isValidEvmAddress } from 'chaingate';
const cg = new ChainGate({ apiKey: process.env.CHAINGATE_API_KEY });
// Validate the withdrawal address for the network it will be sent on
cg.networks.ethereum.isValidAddress('0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045'); // true
cg.networks.bitcoin.isValidAddress('0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045'); // false (not a Bitcoin address)
cg.networks.bitcoin.isValidAddress('bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4'); // true
cg.networks.ethereum.isValidAddress('bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4'); // false (not an EVM address)
// The same 0x check on any EVM network you register, here BNB Smart Chain (chain ID 56)
const bsc = cg.networks.evmRpc({
rpcUrl: 'https://bsc-dataseed.binance.org',
chainId: 56,
name: 'BNB Smart Chain',
symbol: 'BNB',
});
bsc.isValidAddress('0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045'); // true
// Which kind of Bitcoin address is it?
cg.networks.bitcoin.identifyAddressType('bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4'); // 'segwit-p2wpkh'
// Standalone EVM format check, no client needed
isValidEvmAddress('0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045'); // trueA valid format only proves that the string can receive funds on that network; it says nothing about who controls it. The address validation documentation lists the supported networks and the Bitcoin address types the identifier returns.
12. Where to go from here
The withdrawal address is the destination; the rest of the transfer has its own guides. The EVM wallet address guide covers the 0x address you will paste most often, the transaction hash guide shows how to follow the withdrawal once it is broadcast, and the gas tracker tells you what moving the coins again will cost on each network. If you are building a platform that validates addresses, checks balances and sends on Bitcoin, Ethereum and other EVM networks from one SDK, ChainGate does that.
Frequently asked questions
What is a withdrawal address?
The blockchain address that receives the crypto you withdraw from an exchange or another platform. It belongs to the destination wallet or account and has to match the coin and network you select. The sending exchange cannot reverse the transfer once it is confirmed.
Is a withdrawal address the same as a wallet address?
Yes. A withdrawal address is a normal wallet address seen from the sending exchange's side. The wallet that owns it shows the same string as its receiving address, and an exchange that owns it calls it a deposit address.
What is the difference between a deposit address and a withdrawal address?
A deposit address is generated by the platform that receives funds, for a specific coin and network. A withdrawal address is the address you enter on the platform that sends them. When you move crypto between two exchanges, the deposit address of the receiving exchange is the withdrawal address you enter on the sending one.
What is a withdrawal address on Kraken?
On Kraken it is an address you save under Transfer and Withdraw with a unique label before withdrawing to it. Kraken recommends pasting rather than typing it, approves the new address automatically from a trusted device or through an email link that expires after one hour, and can hold withdrawals to a newly added address for up to 24 hours after a password change made without two-factor authentication or a master key.
How do I get a withdrawal address?
Open the destination: the Receive screen of your wallet, or the Deposit page of the exchange you are sending to. Select the coin and the network, copy the address with the copy button, and copy the memo or destination tag too if one is shown. Then paste it into the withdrawal form and select the same network.
Can I use the same withdrawal address for every coin?
Only within one network family. A 0x address receives ETH and tokens on Ethereum and on every EVM chain such as Arbitrum, Base, Polygon and BNB Chain, but it cannot receive Bitcoin, Solana or XRP, which use their own formats. Even for a 0x address, the exchange has to send on a network the destination wallet has enabled.
What happens if I withdraw to the wrong address?
If the address is invalid, the exchange rejects the withdrawal before sending. If it is a valid address you did not mean, the coins belong to whoever controls it and the transaction cannot be reversed. If the address is right but the network is wrong, the coins arrive on a chain the destination does not watch; Binance's guide describes this as permanent loss, although a self-custody wallet on an EVM chain can often still reach them by adding that network.
Why does the exchange make me confirm a new withdrawal address?
Because withdrawals cannot be undone, confirming a new destination is the one step that can stop an attacker who has your password. Kraken confirms new addresses from a trusted device or through an email link; Binance offers a whitelist that limits withdrawals to saved addresses only.
What is a withdrawal address example?
On Ethereum and other EVM chains a withdrawal address is 0x followed by 40 hexadecimal characters, for example 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. A Bitcoin SegWit address looks like bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4. Tron addresses have 34 characters starting with T, and XRP addresses start with r and come with a destination tag.
What is the withdrawal address for Ethereum staking?
The Ethereum address set in a validator's withdrawal credentials. Balances above 32 ETH (2048 ETH for compounding validators) are swept to it automatically and the stake is returned to it when the validator exits. Each validator can be assigned one withdrawal address, one time, so it cannot be changed afterwards.
Build with ChainGate
Put these ideas to work — ChainGate gives you wallets, transactions and managed RPC for Ethereum and 20+ other blockchains with one install.