<ul>
<li>P2PKH addresses are 33-34 characters long, use Base58Check encoding, and (on mainnet) start with &quot;1&quot;.</li>
<li>P2SH addresses are 34 characters long, use Base58Check encoding, and (on mainnet) start with &quot;3&quot;.</li>
<li>P2WPKH addresses are 42 characters long, use bech32 encoding, and (on mainnet) start with &quot;bc1q&quot;.</li>
<li>P2WSH addresses are 62 characters long, use bech32 encoding, and (on mainnet) start with &quot;bc1q&quot;.</li>
<li>P2TR addresses (coming in november) are 62 characters long, use bech32m encoding, and (on mainnet) start with &quot;bc1p&quot;.</li>
</ul>
<p>P2SH-wrapped P2WSH exists too. These cannot be distinguished from other P2SH addresses, until they are spent.</p>

CC BY-SA 4.0
2021-09-18T13:48:15.297Z
2021-09-18T13:48:15.297Z
Pieter Wuille
<p>... and how do you tell P2WPKH invoice addresses apart from P2PKH?</p>

<segregated-witness><address-format><p2wsh>
how do you tell P2WSH invoice addresses apart from P2SH?
Mercedes
# how do you tell P2WSH invoice addresses apart from P2SH?

(Asked by: username_0 on 2021-09-18)

... and how do you tell P2WPKH invoice addresses apart from P2PKH?

**Tags:** segregated-witness, address-format, p2wsh


---

## 1 answers

### Answer by username_1 on 2021-09-18. Score: 5 | Accepted answer

* P2PKH addresses are 33-34 characters long, use Base58Check encoding, and (on mainnet) start with "1".
* P2SH addresses are 34 characters long, use Base58Check encoding, and (on mainnet) start with "3".
* P2WPKH addresses are 42 characters long, use bech32 encoding, and (on mainnet) start with "bc1q".
* P2WSH addresses are 62 characters long, use bech32 encoding, and (on mainnet) start with "bc1q".
* P2TR addresses (coming in november) are 62 characters long, use bech32m encoding, and (on mainnet) start with "bc1p".

P2SH-wrapped P2WSH exists too. These cannot be distinguished from other P2SH addresses, until they are spent.


---

