What Is a Bitcoin Address?
A Bitcoin address is where people send you Bitcoin. It's a string of letters and numbers derived from your private key. Understanding the different formats, why address reuse is dangerous, and how to handle addresses safely are the basics of using Bitcoin properly.
How Does a Bitcoin Address Work?
A Bitcoin address is the public-facing side of a cryptographic key pair. Your wallet generates a private key (a huge random number), then derives a public key from it, then hashes and encodes that public key into an address. The address is what you share with the world. The private key stays secret.
When someone sends Bitcoin to your address, the transaction is recorded on the blockchain: “X amount of Bitcoin is now locked to this address.” To spend it, your wallet creates a new transaction and signs it with the private key that corresponds to that address. The signature proves you're authorized without ever revealing the private key itself.
Your seed phrase generates your master private key, which deterministically creates all your individual addresses. This means a single seed phrase backs up an unlimited number of addresses. Every address your wallet ever generates can be restored from those 12 or 24 words.
What Are the Different Bitcoin Address Formats?
Bitcoin has evolved through four address formats over the years. Each newer format reduces transaction fees and improves functionality. All formats are still valid and work on the same Bitcoin network.
Legacy (P2PKH)
Starts with 1
1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa
The original Bitcoin address format. Still works but costs 30-40% more in fees per transaction than SegWit. The example above is the very first Bitcoin address ever created (Satoshi's genesis block address).
Wrapped SegWit (P2SH)
Starts with 3
3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy
A compatibility format that wraps SegWit inside a legacy-compatible container. Compatible with all wallets but doesn't get the full SegWit fee discount. Also used for multisig addresses.
Native SegWit (bech32)
Starts with bc1q
bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh
The current recommended format. Lowercase-only, which reduces QR code size and prevents case-sensitivity errors. Gets the full SegWit discount: transactions cost 30-40% less than Legacy format.
Taproot (bech32m)
Starts with bc1p
bc1p5d7rjq7g6rdk2yhzks9smlaqtedr4dekq08ge8ztwac72sfr9rusxg3297
The newest format, activated with the Taproot upgrade. Offers better privacy (multisig transactions look like single-sig on-chain), lower fees for complex scripts, and enhanced smart contract capabilities. Adoption is growing.
Which format should you use?
Native SegWit (bc1q) for most people. It's supported by all major wallets and exchanges, gives you the lowest standard fees, and is the current default on Trezor, Coldcard, and most other hardware wallets. Taproot is newer and not yet universally supported by exchanges for withdrawals, but it's worth enabling if your wallet supports it.
Why Should You Never Reuse a Bitcoin Address?
Bitcoin's blockchain is public. Every transaction ever made is visible to anyone. When you reuse an address, you make it trivially easy for anyone to build a complete picture of your financial activity:
With address reuse
- Anyone who knows your address sees your total balance
- Every payment you receive is visible and linked
- Your employer, customers, or anyone you transact with can see all your other transactions
- Analytics firms can build a complete profile of your spending
With fresh addresses
- Each transaction gets its own isolated address
- No single address reveals your total holdings
- Much harder for observers to link your transactions together
- Much better financial privacy
Good news: modern wallets handle this automatically. When you receive Bitcoin, your wallet generates a new address for the next payment. You don't need to do anything manually. Just don't override this behavior by handing out the same address repeatedly.
How Do You Send Bitcoin to an Address Safely?
Always copy-paste or use QR codes
Don't try to type a Bitcoin address manually. One wrong character could send your funds to the wrong place or to a valid address you don't control.
Check the first and last 5 characters
After pasting an address, visually verify the first and last few characters match what you intended. Some malware replaces clipboard addresses with an attacker's address.
Send a test transaction first
For any amount over a few hundred dollars, send a tiny amount first (0.0001 BTC). Wait for it to arrive. Then send the rest. A $2 test could save you $20,000.
Verify on your hardware wallet screen
When sending from a hardware wallet, check the destination address on the device's screen, not just your computer. Malware can show you one address on screen while submitting a different one to the device.
Don't send Bitcoin to non-Bitcoin addresses
Bitcoin addresses only work on the Bitcoin network. Sending to an Ethereum address, a Litecoin address, or any other blockchain address will result in permanent loss. Your wallet should warn you, but double-check the format.
Clipboard hijacking is real
A type of malware watches your clipboard. When it detects a Bitcoin address, it silently replaces it with the attacker's address. Your wallet shows the wrong address, and if you don't verify it on your hardware wallet's screen, you send Bitcoin directly to the thief. This is one of the most common attack vectors. Always verify on the hardware device.
How Are Bitcoin Addresses Created (Technically)?
If you want to understand the cryptography (optional but interesting):
Generate a private key
A random 256-bit number. This is the master secret.
Derive the public key
Apply elliptic curve multiplication (secp256k1) to the private key. This is a one-way function: you can go from private to public, but not the reverse.
Hash the public key
Apply SHA-256, then RIPEMD-160, producing a 160-bit hash (20 bytes).
Add a version byte and checksum
Prepend a version byte (0x00 for mainnet Legacy). Compute a 4-byte checksum using double SHA-256. Append checksum.
Encode as Base58Check
Convert to Base58 (no confusing characters like 0/O/l/I). This produces the familiar "1..." address format.
SegWit addresses use a different encoding called bech32 instead of Base58. Taproot uses bech32m (a slight upgrade). The underlying cryptography is the same. If you want to go deeper, read the BIP-141 SegWit specification.
Frequently Asked Questions
What is a Bitcoin address?
A Bitcoin address is a string of letters and numbers that acts as a destination for Bitcoin transactions. Think of it like an email address for money. You share it with someone who wants to send you Bitcoin, and they use it as the target for their transaction. Addresses are derived from your public key, which is derived from your private key. Anyone can send Bitcoin to an address, but only the person with the matching private key can spend it.
What do the different Bitcoin address formats look like?
Legacy addresses start with '1' (e.g., 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa). SegWit addresses start with '3' (wrapped) or 'bc1q' (native, e.g., bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh). Taproot addresses start with 'bc1p'. Native SegWit (bc1q) is the current standard. Taproot (bc1p) is newer and offers more privacy for advanced transactions.
Why should I never reuse a Bitcoin address?
When you reuse an address, you link all transactions to that address together in the public blockchain. Anyone who knows one of your addresses can see every payment you've received and every transaction you've made from it. Fresh addresses for every transaction keep your financial activity private. Modern wallets generate new addresses automatically.
Can I send Bitcoin to the wrong address?
Yes, and if you do, it's gone permanently. Bitcoin transactions are irreversible. If you send to a valid address that belongs to someone else, only that person can return it. If you send to an address where nobody holds the private key (like a typo that passes the checksum), those coins are lost forever. Always double-check the full address before sending, and send a small test transaction for large amounts.
How many Bitcoin addresses can I have?
Unlimited. Your wallet generates new addresses from your seed phrase automatically using a deterministic algorithm (BIP-32/BIP-44). There's no cost to creating new addresses, and best practice is to use a new one for every transaction. All addresses generated from your seed phrase can be recovered by restoring the seed.
Do Bitcoin addresses expire?
No. A Bitcoin address is valid forever. Once it's generated, it will always work. But using old addresses isn't recommended because of privacy (address reuse) and because older format addresses (Legacy) pay higher fees than newer formats (SegWit, Taproot).
What is a Bitcoin address checksum and how does it prevent mistakes?
Bitcoin addresses include a built-in checksum (error-detection code). If you mistype even one character, the address fails the checksum and your wallet refuses to send. This catches most typos. But it's not foolproof in all edge cases, so always verify the first and last few characters of an address visually before confirming a transaction.
What is the difference between an address and a public key?
A public key is a large number derived from your private key. A Bitcoin address is a hashed (shortened, checksummed) version of your public key. The address is what you share with others. The public key is revealed on the blockchain when you spend from an address. They're related but not the same thing. You don't need to understand the cryptography to use Bitcoin, just know that your address is safe to share and your private key is not.
Why do some addresses start with 1, some with 3, and some with bc1?
'1' addresses are Legacy (P2PKH), the original format. '3' addresses are P2SH, used for wrapped SegWit and multisig. 'bc1q' addresses are Native SegWit (bech32), the current standard with lower fees. 'bc1p' addresses are Taproot (bech32m), the newest format with enhanced privacy. When someone sends you Bitcoin, the address format affects the transaction fee. SegWit and Taproot are cheaper.
Can someone steal my Bitcoin if they know my address?
No. Knowing someone's Bitcoin address only lets you send them Bitcoin and view their transaction history on the blockchain. To spend Bitcoin from an address, you need the corresponding private key. It's like knowing someone's email address: you can send them messages, but you can't read their inbox. However, sharing your address does reduce your privacy since anyone can look up its balance and transactions.
Understand Addresses? Now Secure Your Keys
Your addresses are derived from your seed phrase. Protecting that seed phrase is the single most important thing you can do for your Bitcoin security.