SeedCheck is a free recovery tool from datarecovery.com. Paste a BIP39, SLIP39 (Trezor Shamir), legacy Electrum recovery phrase, an Armory paper backup (the "root key" letter lines), or an extended private/public key (xprv/xpub) and it re-derives your wallet addresses across every common — and many obscure — derivation path, for Bitcoin, Litecoin, Bitcoin Cash, Dogecoin, Dash, Zcash and Ethereum (including USDT, USDC, DAI/USDS/SAI and WBTC held on Ethereum), then checks each address for on-chain activity so you can find where your coins actually landed. Paste plain addresses instead and it returns the balance and a detailed transaction history from our own nodes. It also flags mistyped words, recovers a single missing word, and supports an optional passphrase.
Your seed never leaves this page. All key derivation happens locally in your browser — the phrase is never transmitted, logged, or stored. Only the resulting public addresses are sent to our servers to look up balances, and this page's Content-Security-Policy physically prevents it from contacting anything but our own lookup service. You can even save this page and run it fully offline / air-gapped.
100% self-hosted. Every blockchain is served by our own full nodes and indexes — no third-party block explorer ever sees which addresses you're checking.
What the options do
- Detect + Sweep
- Identifies the phrase type and re-derives your addresses across every common derivation path.
- Check on-chain
- Looks up each derived address on our nodes and flags the ones that have seen activity. Uncheck to derive addresses only, with no lookup.
- Deep scan
- Also walks accounts 0–7 for each path (Ledger Live / Blockchain.com style), not just the first account. Slower, but catches funds on a higher account.
- Check words
- Verifies each word against the wordlist and suggests the closest match for anything mistyped.
- Armory backup
- Paste the letter lines from an Armory 1.35c paper backup (spacing and punctuation are ignored, one mistyped letter pair per line is auto-corrected). It shows the wallet ID to compare against the printout and checks the first 1000 chain addresses — 5000 with Deep scan.
- Extended key
- Paste an xprv / xpub (or yprv, zpub, Ltub, dgpv, drkp …). A master key (depth 0) is swept across every registry path exactly like a seed; an account-level key is swept through its receive, change, direct-child and hardened-child branches. Hardened steps need the private key. Parsed and derived in your browser only.
- Address lookup
- Paste one or more plain addresses (BTC, LTC, BCH, DOGE, DASH, ZEC t-addr, ETH — auto-detected; a base58 address with one mistyped, swapped, missing or extra character is corrected automatically) to get the balance and the full transaction history: date, txid, confirmations, received / sent / net, fee, and who paid or was paid. For an ETH address this includes its USDT, USDC, DAI, USDS, SAI (the pre-2019 DAI) and WBTC balances and every transfer of those in or out. Any address marked USED in a sweep also has a history link.
- Missing word (*)
- Put an asterisk where a BIP39 word is missing and it solves the gap using the checksum, then checks the results on-chain.
- Passphrase / extra word
- Optional BIP39 passphrase (the "25th word"). Leave blank if you never set one.
- Custom derivation path
- Enter one exact path for a nonstandard wallet the sweep doesn't cover — the coin and address types are read from the path, apostrophes optional.
Built on open-source work we're grateful for: client-side cryptography by Paul Miller's noble & scure libraries (@noble/curves, @noble/hashes, @scure/bip32, @scure/bip39, @scure/btc-signer, @scure/base); address indexing by Fulcrum; full nodes from Bitcoin Core, Litecoin Core, Bitcoin Cash Node, Dogecoin Core, Dash Core, Zebra (Zcash) and go-ethereum; derivation-path research aggregated from walletsrecovery.org; and bip_utils for server-side checks.