Is a Seed Phrase Case Sensitive? BIP39 Words vs Passphrase
No, a BIP39 seed phrase is not case sensitive in everyday use. Every word on the BIP39 list is lowercase, and most wallets either convert what you type to lowercase or let you pick each word from the list, so “Lesson” and “lesson” restore the same wallet. The optional passphrase is the exception: it is used exactly as typed, so “Satoshi” and “satoshi” open two different wallets, and a wrong capital raises no error, only an empty balance. A seed phrase is the ordered list of 12 to 24 BIP39 words that encodes the random number your wallet derives every key from (see what a seed phrase is and how it works); this guide shows where letter case matters, how wallets and libraries treat capitals, and how to write down both secrets.
Case Sensitivity at a Glance
| Seed phrase words | BIP39 passphrase | |
|---|---|---|
| Case-sensitive? | No in practice: every word on the list is lowercase | Yes: used exactly as typed |
| What a wrong capital does | Usually nothing; a strict tool rejects the word as unknown | Opens a different, valid wallet |
| Does the wallet warn you? | Yes, about an unknown word or a failed checksum | No: every passphrase is accepted |
| How to write it down | In lowercase, or in block capitals on paper or metal | Exactly, with every capital, space and symbol |
Why Capitals Don’t Change the Words
The BIP39 specification never mentions letter case. It defines the words through its official lists, and all 2,048 words of the English list are lowercase. The seed is then calculated from the phrase as written: PBKDF2-HMAC-SHA512 with 2,048 rounds takes the words, normalized to Unicode NFKD, as its password. NFKD unifies different encodings of the same character but leaves capitals alone, so a capital letter that reached that calculation would produce a different seed.
Lowercasing is therefore the wallet’s job, not the formula’s, and software differs:
- The reference implementation linked from BIP39, Trezor’s python-mnemonic, applies only Unicode normalization and looks each word up exactly as typed, so “Abandon” is not found in the list. The @scure/bip39 library behind this site’s tools does the same.
- Electrum shows both behaviors. It lowercases its own seeds before checking or hashing them (mnemonic.py), so capitals never matter there. Its BIP39 import looks words up exactly as typed (keystore.py), so a capitalized word brings up the warning “Unknown BIP39 wordlist”.
- Most wallet apps convert what you type to lowercase or complete each word from the list as you type, so capitals rarely reach the seed calculation.
Here is the public test phrase, eleven times “abandon” and then “about”, fed straight into the BIP39 functions with no lowercasing (the phrase is public, so never use it for funds):
| Words as entered | Checksum check | Seed starts with |
|---|---|---|
abandon abandon … about | Valid | 5eb00bbd… |
Abandon abandon … about | Fails: “Abandon” is not on the list | a5d34725… |
A wallet that lowercases the input first turns the second line into the first and opens the same wallet. A tool that neither lowercased nor checked the words would open an unrelated, empty one, which is why a BIP39 phrase is written, and best typed, in lowercase.
Where Capitals Change the Wallet: the Passphrase
BIP39 lets you add an optional passphrase, often called the “25th word”. It goes into the salt of the same calculation, “mnemonic” plus the passphrase, again with nothing but Unicode normalization, so every capital, space and symbol counts. The specification also notes that every passphrase generates a valid seed. That is what makes case dangerous here: a wrong capital raises no error, it quietly opens another wallet. Trezor states that the passphrase is case-sensitive and that every passphrase you enter creates a different wallet, even a typo, and Ledger also describes it as case-sensitive.
The official BIP39 test vectors use the passphrase “TREZOR”. With the same test phrase:
| Passphrase | Seed starts with |
|---|---|
| None | 5eb00bbd… |
TREZOR | c55257c3…, the official test vector |
trezor | f5057546… |
One letter’s case changes the seed, the master key and every address. The seed phrase to private key converter reproduces these values if you enter the test phrase with each passphrase.
Electrum is the exception again. For its own seeds, the seed extension, Electrum’s name for the passphrase, is lowercased like the words, so “Satoshi” and “satoshi” open the same wallet there. For a BIP39 phrase, Electrum applies the passphrase as BIP39 does, capitals included; Electrum seed vs BIP39 compares the two.
Which Other Crypto Strings Are Case-Sensitive?
Outside the seed phrase, case depends on how a string is encoded:
| String | Case-sensitive? | Why |
|---|---|---|
| Legacy addresses (starting with 1 or 3), WIF private keys, xpubs | Yes | Base58 treats capital and small letters as different characters, and a changed letter fails the built-in checksum |
| SegWit and Taproot addresses (bc1q…, bc1p…) | No, but never mixed | Bech32 and Bech32m are written in lowercase; all capitals are allowed, a mix of both is rejected |
| Ethereum addresses (0x…) | No for the address itself | The letters are hex digits; a mix of capitals can serve as a checksum |
| BIP39 seed words | No in practice | Every word on the list is lowercase |
| BIP39 passphrase | Yes | It is used exactly as typed |
The Bech32 standard, BIP173, tells decoders to reject strings that mix upper and lower case and recommends capitals inside QR codes, where they take less space. Its motivation lists Base58’s mixed case among the problems it solves: it makes addresses inconvenient to write down, type on a phone or read out loud. Ethereum’s EIP-55 capitalizes some letters of an address according to its Keccak-256 hash, so a wallet that checks it can catch a mistyped character. More on each format: Bitcoin addresses, WIF private keys, extended public keys and EVM addresses.
Can You Write a Seed Phrase in Capitals?
Yes. Block capitals are easy to read on paper, and many metal plates offer only capital letters; the wallet still takes the same words, typed in lowercase or picked from its list (metal seed phrase backups covers stamping four-letter prefixes). When you restore, type the words in lowercase.
The passphrase needs the opposite care:
- Record it exactly, with every capital, space, digit and symbol.
- Don’t switch to block capitals for a passphrase that isn’t all capitals, and mark the case of any letter that could be misread.
- Avoid look-alikes such as a capital I and a small l, or a zero and a capital O. Printable ASCII is the safest choice.
- Store it apart from the words, as how to store a seed phrase explains, and make sure you or your heirs can find both.
The Wallet Restored but Shows Zero: Is Case to Blame?
If the wallet accepts the words but shows an empty balance, capitals in the words are almost never the cause: a wallet that accepts the words has matched each one against the list and checked the checksum. Look at these instead:
- The passphrase. Try the variants you might have typed: a capital first letter, all lowercase, Caps Lock on, a space at the end. Each opens its own wallet, and only one holds your funds.
- The address type or derivation path. The same words lead to other addresses on another path; see derivation paths.
- The phrase format. A phrase from Electrum or from a network with its own format can open an empty wallet in a BIP39 app; see seed phrase formats by network.
If the wallet rejects the words instead, look for a misspelled or swapped word with our guide on how to fix seed phrase errors; the BIP39 checksum checker shows whether a set of words fits together.
Frequently Asked Questions
Are seed phrases always lowercase?
Yes. All 2,048 words of the English BIP39 list are lowercase, and none of the other official lists contains a capital letter either. Capitals on paper or metal are fine as long as you type the words in lowercase.
Is the BIP39 passphrase case-sensitive?
Yes. “Secret”, “secret” and “SECRET” are three different passphrases and open three different wallets. Only the seed extension of Electrum’s own seeds ignores case.
Do capitals make a passphrase stronger?
Slightly, if they are unpredictable, since each letter then has more possible values. A capital first letter or a word in all caps is among the first things a guesser tries, so length and randomness matter far more.
What if I forgot whether my passphrase had capitals?
Try the likely variants one at a time in the wallet that holds the words, and compare the first receiving address with one you know. Nobody can look a passphrase up for you, and anyone who offers to “recover” it in exchange for your words is a scammer.