What the first character of a Bitcoin address tells you
A Bitcoin address is a compact encoding of a locking condition, not an account number with a persistent balance. Whether it opens with 1, 3, bc1q, or bc1p signals which script type the address represents, but only as an early clue. Each family encodes different script rules, checksums, and spending conditions, so the formats are not interchangeable labels for the same output.
On mainnet, a 1 address is usually a legacy Pay-to-Public-Key-Hash (P2PKH) output. A 3 address is a Pay-to-Script-Hash (P2SH) output that wraps a redeem script. A bc1q address is native SegWit version 0, and a bc1p address is Taproot, native witness version 1. Newer formats do not invalidate older ones; they change how cheaply and flexibly an output can be spent.
The encoding underneath: version byte, hash, and checksum
Legacy and P2SH addresses use Base58Check. A P2PKH address encodes a 0x00 version byte, a 20-byte public-key hash, and a four-byte checksum taken from the first four bytes of a double SHA-256 of the version and hash. P2SH uses version byte 0x05, a script hash, and the same checksum construction; BIP 13 standardized the format.
SegWit addresses use a different scheme. BIP 173 defines Bech32 for witness version 0, and BIP 350 defines Bech32m for witness version 1 and later. The data-part alphabet qpzry9x8gf2tvdw0s3jn54khce6mua7l deliberately omits 1, b, i, and o to reduce transcription errors. A valid checksum does not prove the address belongs to the intended recipient, so verifying the full string on a trusted screen still matters.
SegWit and Taproot: lower weight, new checksum
BIP 141 moved signatures into witness data, which is measured at a lower weight than the base transaction. Spending a native SegWit P2WPKH input is therefore generally more weight-efficient than spending a comparable legacy input, which can lower fees when block space is expensive. Taproot key-path spends can be compact too, but no format guarantees a fixed percentage saving; the real fee depends on the number and types of inputs and outputs.
Taproot (BIP 341) uses witness version 1 with a 32-byte program and a 62-character mainnet address. A version-1 program of another length is not P2TR. The checksum upgrade to Bech32m is why a bc1q address is not simply an older spelling of a bc1p address: version 0 keeps Bech32, while versions 1 through 16 use Bech32m.
Before you send
Generate the receive address inside the wallet that will hold the funds, and do not convert between formats manually. Confirm the network is Bitcoin, check that the sending service accepts the chosen type, and compare the full address on a trusted device rather than only its edges. If the destination does not support bc1q or bc1p, a 3 nested-SegWit address can preserve compatibility while still allowing SegWit spending; a 1 address remains a last-resort fallback.
None of these choices protects privacy by itself. Reusing one address links payments to the same destination, and change-output behavior creates further clustering signals. The safest habit is a fresh receive address per payment, combined with a format both sides actually support.
Source: BTC-Pulse.
