btcrecover.py is designed for situations where you remember most of your password but need to try variations — different capitalizations, a forgotten character, slightly different spellings. You describe what you remember and BTCRecover searches all combinations.
Locate your wallet file
Find and copy your wallet file to the BTCRecover directory. Common locations:
For BIP-39 passphrases (the “25th word”), you do not need a wallet file — use the
| Wallet | Windows path |
|---|---|
| Bitcoin Core | %appdata%\Bitcoin\wallet.dat |
| Electrum | %appdata%\Electrum\wallets\ |
| MultiBit HD | %appdata%\MultiBitHD\ (file: mbhd.wallet.aes) |
| MultiBit Classic | %appdata%\MultiBit\multibit-data\key-backup\ (use .key files) |
| Bither | %appdata%\Bither\address.db |
| Blockchain.com | wallet.aes.json (download via developer tools) |
| Metamask | %localappdata%\Google\Chrome\User Data\Default\Local Extension Settings\nkbihfbeogaeaoehlefnkodbefgpgknn |
| mSIGNA | %homedrive%%homepath%\*.vault |
--bip39 flag instead (see examples below).Create a password list or token list
BTCRecover needs either a password list (one candidate per line) or a token list (fragments that get combined).For a simple password list, create a file called For a token list, create a file called
passwordlist.txt with one candidate password per line:tokens.txt where each line is a fragment. BTCRecover combines them into candidates:Example commands
The commands below use test wallets and addresses that ship with BTCRecover. They find a result immediately and are safe to run as-is.BIP-38 encrypted paper wallets
BIP-38 wallets use scrypt, so brute-force is slow. These work with keys from bitaddress.org, liteaddress.org, paper.dash.org, and others.BIP-39 passphrases (hardware and software wallets)
Use--bip39 instead of --wallet when recovering a BIP-39 passphrase (the “25th word”). Supported hardware wallets include Trezor, Ledger, Keepkey, Coldcard, and Bitbox02.
Electrum wallets (non-BIP39)
Electrum uses its own seed format. Use--wallet-type electrum2 for Electrum and its altcoin forks.
Ethereum Keystore files
Metamask and browser extension wallets
SLIP-39 passphrases
Provide two or more SLIP-39 shares (a quorum is required):Brainwallets
Useful options
| Option | Description |
|---|---|
--typos N | Apply up to N typos per candidate |
--typos-capslock | Try the whole password with caps lock on |
--typos-swap | Swap two adjacent characters |
--typos-case | Change the case of one character |
--typos-delete | Delete one character |
--typos-repeat | Repeat (double) one character |
--autosave FILE | Save progress every ~5 minutes to resume later |
--restore FILE | Resume from an autosave file |
--listpass | Print all candidate passwords instead of testing (useful for debugging) |
--utf8 | Enable Unicode support for non-ASCII passwords |