Monero Restore Height Explained: Find It, Set It, Fix It
What is a Monero restore height? Learn how to find the right restore height, set it in Feather, Monero GUI, CLI and Cake Wallet, and fix a zero balance.
On this page
- What the restore height actually is
- Do you even need to set one?
- How to find the right restore height
- How to set or change the restore height
- A worked example
- Restore height for hardware and view-only wallets
- Fixing a zero or incomplete balance after restore
- Restore height versus seed passphrase
- Good habits
Key takeaways
- The restore height is the block where your wallet starts scanning for your transactions.
- Too high and your balance looks wrong or empty; too low and the sync just takes longer.
- If unsure, pick a date safely before you first received XMR. Earlier is always safe.
- 16-word Polyseed backups embed the creation date, so you rarely need to think about it.
You restore your Monero wallet from its seed, it finishes syncing, and the balance says zero. It is a frightening moment, and it is almost always caused by one setting: the restore height. This guide explains what that number is, how to choose a safe one, and how to fix it in each popular wallet without risking your funds.
What the restore height actually is
Monero hides who received each output. Your wallet finds your coins by scanning blocks with your private view key and testing each output. Scanning from the very first block in 2014 would take a long time, so wallets let you say “start looking from here”. That starting block is the restore height, sometimes called the wallet’s “birthday” or “refresh-from block height”.
Two rules cover almost every case:
| Restore height is… | Result | Risk to funds |
|---|---|---|
| Before your first incoming transaction | Correct balance; sync may take a bit longer | None |
| After your first incoming transaction | Missing history, wrong or zero balance | None, but you must rescan |
So the safe rule is simple: when in doubt, go earlier. The only cost of an early height is sync time.
Key point: A wrong restore height never deletes or moves coins. Your outputs stay on the blockchain. You just need to tell the wallet to look in the right place.
Do you even need to set one?
That depends on your seed type:
- 16-word Polyseed (Feather’s default, also offered by Cake Wallet): the seed stores the approximate creation date, with a resolution of about a month. The wallet converts this into a restore height automatically. You normally do not need to enter anything.
- 25-word seed (Monero GUI, CLI, older wallets, MyMonero, Exodus exports): the seed contains no date. You should provide a height or date, or the wallet may scan from a very early block.
- Hardware wallets: the device holds the keys, but the wallet still needs a restore height when you set it up on a new computer.
- 12-word BIP39 seeds used by some multi-coin apps: restore them in the same app family, and provide a date if asked.
How to find the right restore height
Pick the method that matches what you know.
- You saved it. Many wallets show the restore height on the backup screen. If you wrote it down with your seed, use it.
- You know roughly when you created the wallet. Enter a date a few weeks before that. Wallets convert the date into a block height for you.
- You know your first deposit. Find the transaction ID in your exchange withdrawal history, look it up on a block explorer, and note the block height. Subtract a margin of a few thousand blocks to be safe.
- You have no idea. Use the earliest plausible date. Feather’s documentation suggests that if you made the wallet sometime in 2019, enter 1 January 2019.
Tip: Write the restore height or creation date next to your seed backup. It is not secret, so it does not need extra protection, and it will save you a long sync later.
Special cases worth knowing
- Exodus exports: Exodus, which ended Monero support on 18 August 2025, tells users to enter the date of their first XMR transaction, or 26 April 2019 (the day Exodus added Monero) if unsure.
- MyMonero migrations: the MyMonero service went offline on 6 January 2026. If you are restoring a MyMonero 25-word seed, use your restore height if you have it; otherwise choose a date before you first used MyMonero.
- Old wallets from Monero’s early years: if you might have received XMR before 2017, using height 0 is the safe choice even though the sync will be long.
How to set or change the restore height
Feather
When restoring, Feather asks for a restore height or creation date. If you do not know it, enter the earliest possible date. For an existing wallet, open Help, Debug info to see the current value. If your balance looks wrong afterwards, restore the wallet again with an earlier date.
Monero GUI
- Open Settings, then the Info tab.
- Click (Change) next to Wallet restore height.
- Enter a block number or a date in
YYYY-MM-DDformat. - Confirm. The GUI warns that it will clear the wallet cache; it saves the old cache as a backup file in your wallet folder.
- Wait for the rescan. If you use your own node, it must be fully synced first.
If the balance is still wrong, repeat with a lower height.
Monero CLI
- When restoring with
monero-wallet-cli --restore-deterministic-wallet, the wallet prompts for a restore height. You can also pass--restore-height <block>. - In an open wallet,
restore_heightshows the current value. - To change it, run
set refresh-from-block-height <block>and thenrescan_bcto scan again.
Cake Wallet and Monero.com
During restore, choose to enter either a block height or a restore date. Cake’s QR-based backups already include a height. Since version 6.5.0 (October 2026), the Rescan option pre-fills your saved restore height for Monero, which makes it easy to lower it slightly and rescan.
A worked example
Say you bought XMR on an exchange in March 2023, withdrew it to Monero GUI, and later lost the computer. You have your 25-word seed but never wrote down the restore height.
- You know the wallet existed before March 2023, but not exactly when. You created it “early in 2023”, so you pick 1 January 2023 to leave a margin.
- You restore the seed in Monero GUI and enter
2023-01-01as the restore date. - The wallet converts the date to an approximate block height and scans from there. It takes longer than a restore from a precise height, but only once.
- Your March deposit appears, along with every later transaction, and the balance matches what you expected.
Had you entered 2023-06-01 instead, the March deposit would have been skipped. Any spends from it after June would still be visible, which can produce a confusing, even negative-looking history. That mismatch is a strong sign the restore height is too late.
Restore height for hardware and view-only wallets
Hardware wallets (Ledger or Trezor) store keys, not history. Each time you set up the Monero wallet on a new computer, the software asks for a restore height. For a device that has never held XMR, use today’s date. For a device that already has funds, use a date before the first deposit, exactly as with a seed restore.
View-only wallets are built from your address and private view key, often to watch a cold wallet. They need a restore height too. Use the same height as the full wallet so incoming transactions line up. Remember that a view-only wallet cannot detect outgoing spends unless you import key images from the full wallet, so its balance can look too high even with a perfect restore height.
Fixing a zero or incomplete balance after restore
Work through these in order:
- Confirm the wallet is fully synced. A partially synced wallet shows a partial balance.
- Confirm it is the right wallet. Compare the primary address with the one you sent funds to, or with your exchange withdrawal address. A different seed type, a typo or a passphrase difference produces a different, empty wallet.
- Lower the restore height to a date clearly before your first deposit and rescan.
- Check accounts and subaddresses. Funds sent to a subaddress in a second account will not show in account 0. Wallets also only look ahead a limited number of subaddresses; Feather 2.9.1 specifically fixed subaddress lookahead for 25-word seed restores, so update if you use an older version.
- Rescan spent outputs if the balance is too high or too low by amounts you already spent (Feather: Wallet, Advanced, Rescan spent; CLI:
rescan_spent). - Check for locked funds. New incoming XMR needs about 10 confirmations before it is spendable.
Warning: If someone online offers to “recover” your missing XMR and asks for your seed or private spend key, it is a scam. No legitimate helper needs either to diagnose a restore height problem.
Restore height versus seed passphrase
People sometimes confuse these. The restore height only changes where scanning starts. A seed passphrase (called a seed offset in Monero) changes the keys themselves. A wrong passphrase gives you a completely different, empty wallet, and no restore height will fix that. If lowering the height to an early date still shows nothing, double-check whether you used a passphrase when you created the wallet.
Good habits
- Record the creation date or restore height with every 25-word seed.
- Prefer Polyseed for new wallets, since the date is built in.
- After restoring, wait for a full sync before panicking about the balance.
- Do a test restore on a spare device once, so you know your backup and height work.
For related guides on seeds, sync and hardware wallets, see the Wallets category.
Frequently asked questions
What happens if I set the restore height too high?
The wallet skips blocks containing your earlier transactions, so your history is incomplete and your balance is wrong or zero. Lower the height and rescan; nothing is lost.
What happens if I set it too low?
Nothing bad. The wallet scans more blocks than needed, so syncing takes longer, but your balance will be correct.
Can I use a date instead of a block number?
Yes. Feather, Monero GUI and Cake Wallet accept a date and convert it to an approximate block height. Choose a date a little before your wallet was created.
Where do I find my current restore height?
In Feather, look under Help, Debug info. In Monero GUI, it appears in Settings, Info. In the CLI, the restore_height command prints it.