Home › Learn › The most important BIPs every Bitcoiner should know

The most important BIPs every Bitcoiner should know

There are more than 200 Bitcoin Improvement Proposals, but a few dozen explain most of how Bitcoin works today: the soft forks that shaped its rules (P2SH, SegWit, Taproot), the wallet standards behind every seed phrase and address (BIP 32, 39, 44, 84, 86), and the network and payment formats wallets and nodes rely on. This is a curated reading list of about 25 of them, grouped by topic, with a sentence or two on why each one matters.

Updated · 7 min read

How this list was chosen

A BIP earns a place here if it changed what every node enforces, if most wallets implement it, or if a large share of later BIPs build on it. Most entries are deployed; the rest are historic documents or newer replacements worth knowing, and every BIP page shows its current status. For the basics of what a BIP is and how one gets accepted, start with What is a BIP?.

Consensus upgrades

These BIPs changed the rules every full node checks. All were soft forks.

BIP Name Why it matters
16 Pay to Script Hash (P2SH) Lets you pay to the hash of a script, so the receiver supplies the full script only when spending. It made multisig practical and gave us "3" addresses. Enforced from April 2012.
34 Height in coinbase Put the block height in every coinbase, making coinbases unique, and introduced activation by block version numbers. Block 227,931.
66 Strict DER signatures Required one exact signature encoding, so validity no longer depended on how OpenSSL happened to parse signatures. Block 363,725.
65 OP_CHECKLOCKTIMEVERIFY Lets a script lock coins until a block height or date. Used in HTLCs, escrow and Lightning. Block 388,381.
68, 112, 113 Relative timelocks (CSV) Lock coins for a period after they confirm, and use median time for time locks. Essential for payment channels. Block 419,328.
141 Segregated Witness Moved signatures out of the txid, fixing malleability, and replaced the 1 MB limit with 4 million weight units. Block 481,824.
143 SegWit signature hash Made signature hashing linear instead of quadratic and made signatures commit to input amounts, a big help to hardware wallets.
340 Schnorr signatures 64-byte signatures with 32-byte keys, batch verification and key aggregation.
341 Taproot Outputs spendable by one key or by one hidden script from a tree. Block 709,632.
342 Tapscript The script rules inside Taproot, with upgrade hooks for future opcodes.

The SegWit and Taproot guides explain the two largest upgrades. Activation itself has its own key BIP: BIP 9 version bits, by Pieter Wuille, Peter Todd, Greg Maxwell and Rusty Russell, the signaling method behind CSV, SegWit and (in modified form) Taproot.

Wallets, keys and addresses

These BIPs don't change consensus, but they are why you can restore a wallet from 12 or 24 words in a different app and see the same addresses.

BIP Name Why it matters
32 HD wallets One seed generates a whole tree of keys, and an xpub can create receive addresses without being able to spend. By Pieter Wuille.
39 Mnemonic seed phrases Encodes the wallet secret as 12 to 24 words from a list of 2,048, with a checksum and an optional passphrase. See the seed phrases guide.
43 Purpose field Reserves the first level of the derivation path for a "purpose" number, so different wallet layouts can coexist.
44 Multi-account hierarchy The m/44'/0'/0'/0/0 layout: purpose, coin type, account, change, index. Used for legacy "1" addresses and by many other coins.
49 Nested SegWit accounts m/49' paths for P2SH-wrapped SegWit ("3" addresses, ypub).
84 Native SegWit accounts m/84' paths for bc1q addresses (zpub).
86 Taproot accounts m/86' paths for single-key bc1p addresses.
173 Bech32 addresses The bc1 address format: one case, strong error detection, compact in QR codes.
350 Bech32m A fixed checksum for SegWit version 1 and later, used by Taproot addresses.
174 PSBT A standard format for passing unsigned or partly signed transactions between wallets, hardware signers and co-signers. See the PSBT guide.
380 to 386 Output descriptors A precise text format like wpkh(...) or tr(...) for exactly which scripts a wallet uses, replacing guesswork about paths. See output descriptors.

The derivation paths guide and address types guide go deeper, and BIP 44 vs 49 vs 84 vs 86 compares the account layouts side by side. Try the BIP 39 word list and the derivation path tool; neither ever asks for your seed.

Network and peer-to-peer

These shape how nodes find each other and move blocks and transactions.

BIP Name Why it matters
152 Compact block relay Announces new blocks with short transaction IDs, since peers usually already have the transactions. Blocks spread faster with far less bandwidth. By Matt Corallo.
157, 158 Compact block filters Light wallets download a small filter per block and check locally whether it concerns them, instead of telling a server their addresses. See compact block filters.
155 addrv2 A longer address message so nodes can share Tor v3, I2P and CJDNS addresses.
324 v2 encrypted transport Encrypts traffic between nodes so observers can't simply read or tamper with it. See v2 transport.

Payments and transactions

BIP Name Why it matters
21 and 321 bitcoin: URIs The bitcoin: link and QR format carrying an address, amount and label. BIP 321 is the newer specification meant to replace BIP 21, adding parameters such as Lightning invoices and silent payment addresses. Compare BIP 21 vs BIP 321 or build one with the Bitcoin URI tool.
125 Replace-by-fee Lets a sender replace an unconfirmed transaction with a higher-fee version, the standard way to unstick a payment. See the RBF guide.

The BIP process

BIP Name Why it matters
1 BIP Purpose and Guidelines The original 2011 document by Amir Taaki that defined BIPs, modeled on Python's PEPs.
2 BIP process, revised Luke Dashjr's 2016 revision, which governed BIPs for nearly a decade.
3 Updated BIP Process Murch's replacement for BIP 2, with four statuses (Draft, Complete, Deployed, Closed) and the types Specification, Informational and Process.

BIP 2 vs BIP 3 explains what changed.

A reading order for beginners

If you want to read the BIPs themselves rather than summaries, this order builds up from what you already use:

  1. Your wallet backup: BIP 39, then BIP 32, then the path BIP your wallet uses (44, 84 or 86). Together they explain how 12 or 24 words become your addresses.
  2. Your addresses: BIP 173 and BIP 350 explain bc1q and bc1p addresses and why typos are caught.
  3. The big rule changes: BIP 141 for SegWit, then BIP 341 for Taproot. Each BIP page has a plain-English summary before the full text.
  4. Advanced wallets: BIP 174 for PSBTs and BIP 380 for descriptors, if you use a hardware wallet or multisig.
  5. Fees: BIP 125, for when a payment gets stuck.
  6. How it all gets decided: BIP 3 and the soft forks guide.

BIP Explorer's "core BIPs"

Separately from this editorial list, BIP Explorer marks 20 core BIPs: the live BIPs that other BIPs reference and build on most. They are:

9, 11, 16, 32, 39, 43, 44, 65, 68, 70, 112, 141, 143, 173, 174, 340, 341, 342, 350 and 380.

The two lists mostly overlap. The differences show what "core" measures: BIP 11, which made M-of-N multisig standard, and BIP 70, the old payment protocol, are cited by many later BIPs even though few people interact with them directly. You can find any of them, filter by topic or status, and see what links to what with BIP search and the BIP map.

Where to go next

Frequently asked questions

What is the most important BIP?

There is no single answer, but BIP 141 (SegWit) and BIP 341 (Taproot) are the largest changes to Bitcoin's rules, and BIP 32 and BIP 39 underpin almost every wallet in use. If you hold bitcoin in a wallet with a seed phrase, BIP 39 is the one you rely on most directly.

How many BIPs are there?

More than 200 BIPs have been assigned numbers since BIP 1 in 2011, and new ones are added regularly. Numbers are assigned by the BIP editors and aren't strictly sequential: related proposals are often grouped, such as the 380s for output descriptors. BIP Explorer lists every one with its status, type and a plain-English summary.

Which BIP defines seed phrases?

BIP 39 defines the mnemonic seed phrase: 12, 15, 18, 21 or 24 words from a 2,048-word list, encoding the wallet's entropy plus a checksum. BIP 32 then turns the resulting seed into a tree of keys, and BIP 44, 49, 84 or 86 set the derivation paths for each address type.

Which BIPs define Bitcoin address types?

BIP 13 and BIP 16 define P2SH addresses starting with 3. BIP 141 defines native SegWit outputs and BIP 173 their bech32 addresses starting with bc1q. BIP 341 defines Taproot outputs and BIP 350 the bech32m encoding behind bc1p addresses. Legacy addresses starting with 1 predate the BIP process.

What does BIP stand for?

BIP stands for Bitcoin Improvement Proposal: a design document that proposes a new feature, standard or process for Bitcoin, or records information about one. The format was introduced by BIP 1 in 2011 and is now governed by BIP 3.

BIPs in this article

  • BIP 141 (SegWit): Segregated Witness (Consensus layer): Deployed. Defines Segregated Witness (SegWit), which moves signatures into a separate "witness" section of each transaction while remaining compatible with older nodes. This fixed transaction malleability,…
  • BIP 341: Taproot: SegWit version 1 spending rules: Deployed. Taproot introduces a new kind of Bitcoin output that can be spent either with a single signature or by revealing just one of many possible alternative spending conditions, kept hidden in a tree…
  • BIP 32 (HD wallets): Hierarchical Deterministic Wallets: Deployed. Defines hierarchical deterministic (HD) wallets, in which a single seed generates a whole tree of keys. Users can back up a wallet once and share watch-only parts, for example with a shop or…
  • BIP 39 (seed phrase): Mnemonic code for generating deterministic keys: Deployed. Defines the recovery phrase: a list of 12 to 24 common words that encodes a wallet's master secret. Users can write the words down to back up and later restore a wallet, a format now widely used…
  • BIP 340: Schnorr Signatures for secp256k1: Deployed. Defines a standard for Schnorr signatures, a simpler and more flexible signing method than the ECDSA scheme Bitcoin originally used, on the same elliptic curve. Schnorr signatures are compact (64…
  • BIP 342 (Tapscript): Validation of Taproot Scripts: Deployed. Specifies Tapscript, the updated scripting rules used when a Taproot output is spent through one of its hidden alternative conditions. It switches signature checks to Schnorr, removes some old…
  • BIP 143 (SegWit signature hashing): Transaction Signature Verification for Version 0 Witness Program: Deployed. Changes how signatures are calculated for SegWit transactions so that verifying them no longer requires re-hashing the same data many times. It also makes the signature commit to the amount being…
  • BIP 16 (P2SH): Pay to Script Hash: Deployed. Introduced Pay to Script Hash (P2SH), letting a sender pay to a short fingerprint of spending rules that the recipient reveals only when spending. This shifted the cost and complexity of setups like…
  • BIP 9: Version bits with timeout and delay: Deployed. Lets miners signal readiness for several soft forks (backward-compatible rule upgrades) at once by setting individual bits in each block's version number. An upgrade locks in once enough blocks…
  • BIP 44 (BIP44 derivation path): Multi-Account Hierarchy for Deterministic Wallets: Deployed. Defines a standard layout for HD wallets that organizes keys by coin type, account, and receiving versus change addresses. Because wallets share this layout, a recovery phrase from one wallet can…
  • BIP 84 (native SegWit derivation): Derivation scheme for P2WPKH based accounts: Deployed. Specifies the standard key path for HD wallets that use native SegWit addresses (those starting with 'bc1q'). Agreeing on this path means a user can restore the same seed phrase in different wallet…
  • BIP 86 (Taproot derivation): Key Derivation for Single Key P2TR Outputs: Deployed. Defines the standard key path for HD wallets that use single-key Taproot addresses (those starting with 'bc1p'). It plays the same role for Taproot that BIP 84 does for SegWit, so seed phrases…
  • BIP 49 (nested SegWit derivation): Derivation scheme for P2WPKH-nested-in-P2SH based accounts: Deployed. Defines how HD wallets derive keys for SegWit addresses wrapped inside P2SH, which begin with "3". This let wallets offer cheaper SegWit transactions while staying payable from older software that…
  • BIP 43: Purpose Field for Deterministic Wallets: Deployed. Reserves the first level of an HD wallet's key tree for a "purpose" number that says which layout the rest of the tree follows. This lets different wallet standards coexist and helps software…
  • BIP 173 (Bech32): Base32 address format for native v0-16 witness outputs: Deployed. Introduces Bech32, an address format for native SegWit outputs, recognizable by addresses starting with "bc1". It uses only lowercase letters and numbers and a strong checksum that catches typing…
  • BIP 350: Bech32m format for v1+ witness addresses: Deployed. Introduces Bech32m, a corrected version of the Bech32 address format used for SegWit addresses (those starting with 'bc1'). A subtle flaw in Bech32 could let certain typos go undetected, so Bech32m…
  • BIP 174 (PSBT): Partially Signed Bitcoin Transaction Format: Deployed. Defines PSBT (Partially Signed Bitcoin Transaction), a standard file format for a transaction that is still collecting signatures. It lets different wallets, hardware devices, and co-signers pass a…
  • BIP 380: Output Script Descriptors General Operation: Deployed. Output script descriptors are a compact text language for describing exactly which addresses a wallet owns and how they are spent. This document defines their general syntax and checksum, giving…
  • BIP 65: OP_CHECKLOCKTIMEVERIFY: Deployed. Adds OP_CHECKLOCKTIMEVERIFY, a script command that keeps coins unspendable until a chosen date or block height. It enables time-locked savings, escrow with deadlines, and payment channels such as…
  • BIP 68: Relative lock-time using consensus-enforced sequence numbers: Deployed. Gives transactions a "relative lock-time," so a coin cannot be spent until a set number of blocks or amount of time has passed since it was confirmed. This is an essential building block for payment…
  • BIP 112: CHECKSEQUENCEVERIFY: Deployed. Introduces CHECKSEQUENCEVERIFY, a script instruction that lets coins be locked until a certain amount of time has passed since they were received. This 'relative timelock' is a key building block…
  • BIP 113: Median time-past as endpoint for lock-time calculations: Deployed. Changes how Bitcoin measures time for timelocked transactions, using the median time of the previous 11 blocks instead of a single block's timestamp. Because this value only moves forward, miners…
  • BIP 34 (block height in coinbase): Block v2, Height in Coinbase: Deployed. Upgraded blocks to version 2 and required each block's coinbase transaction (the one paying the miner) to include the block's height. This makes every coinbase unique, preventing duplicate…
  • BIP 66: Strict DER signatures: Deployed. Required all signatures to follow one strict encoding format, known as DER. Different software interpreted loosely encoded signatures differently, which risked splitting the network and let…
  • BIP 152: Compact Block Relay: Deployed. Introduces compact blocks, where nodes announce a new block using short transaction identifiers instead of sending every transaction again. Since peers usually already have most transactions, this…
  • BIP 157: Client Side Block Filtering: Deployed. Defines a protocol for lightweight wallets in which full nodes publish compact summaries (filters) of each block, and wallets download them to check locally which blocks matter. Unlike the older…
  • BIP 158: Compact Block Filters for Light Clients: Deployed. Specifies how to build the compact block filters used by the BIP 157 light-client protocol, a compressed summary of the addresses and data touched in each block. Wallets use these filters to decide…
  • BIP 155: addrv2 message: Deployed. Adds a new message for sharing node addresses that are longer than the old format allows. This was necessary to support newer Tor onion addresses, I2P, and other privacy networks, helping nodes…
  • BIP 324: Version 2 P2P Encrypted Transport Protocol: Deployed. Introduces a new, encrypted way for Bitcoin nodes to talk to each other, so internet providers and passive observers cannot read or easily tamper with the traffic. It also slightly reduces bandwidth…
  • BIP 21: URI Scheme: Closed. Defines the "bitcoin:" link format that packages an address, amount, label and message into one string, often shown as a QR code. Wallets read these links to fill in payment details automatically,…
  • BIP 321: URI Scheme: Complete. Defines the "bitcoin:" link format that wallets use for payment requests in QR codes and clickable links. It specifies how to include an amount, label, message, and alternative payment methods, so…
  • BIP 125: Opt-in Full Replace-by-Fee Signaling: Deployed. Defines how a sender can mark an unconfirmed transaction as replaceable, so nodes will accept a new version paying a higher fee. This 'replace-by-fee' lets users speed up a transaction stuck because…
  • BIP 1: BIP Purpose and Guidelines: Closed. The original document that defined what a Bitcoin Improvement Proposal is and how one is written, discussed and accepted. Modeled on Python's proposal process, it gave the community a shared, public…
  • BIP 2: BIP process, revised: Closed. A revised version of the proposal process that replaced BIP 1, clarifying how proposals move between statuses, how comments are gathered, and which licenses are allowed. It aimed to make the path…
  • BIP 3: Updated BIP Process: Deployed. Replaces BIP 2 with a streamlined set of rules for preparing, submitting and publishing proposals, including the role of the editors who manage them. It keeps the process workable as the number of…
  • BIP 11 (M-of-N multisig): M-of-N Standard Transactions: Deployed. Made "M-of-N" transactions, which require any M signatures out of N possible keys, a standard type that nodes relay. This enabled shared-control arrangements such as escrow or wallets needing two of…
  • BIP 70: Payment Protocol: Deployed. Defines a payment protocol in which a merchant sends a signed payment request directly to the customer's wallet. It aimed to improve checkout and protect against attackers swapping addresses, though…

Learn more

Guides

Free tools

Glossary