You may sign a Solana transaction, wait a moment, and then see a message such as blockhash not found or transaction expired. It can feel alarming, especially when you are swapping tokens or claiming a Treasure Hunt reward. Usually, it does not mean your wallet is broken or that funds disappeared. It means the transaction was built with information that became too old before the network accepted it.
What is a blockhash?
A blockhash is a recent identifier from the Solana network. Wallets and apps include one when they prepare a transaction. It helps the network recognize that the request is current and prevents an old signed transaction from being replayed later. Because Solana moves quickly, a recent blockhash is only valid for a short window. If you leave a confirmation screen open too long, the transaction can expire.
Why does expiry happen?
- Slow approval: you paused before tapping Confirm.
- Network congestion: the transaction was sent but did not land before its validity window ended.
- App delay: a website prepared the transaction early, then your wallet opened late.
- Connection problems: your wallet or RPC connection briefly lost contact with the network.
Expiry is especially common after returning to an old browser tab. The app may still display a quote or button, but its underlying transaction data is no longer fresh.
What should you do?
- Check your wallet activity or a block explorer before retrying. Never assume a failed screen means nothing happened.
- If there is no confirmed transaction, close the old approval request and reload the app.
- Request a new quote or rebuild the action, then approve it promptly.
- For a swap, compare the new amount and price impact; market conditions may have changed.
A blockhash-expiry error normally means “try again with a fresh transaction,” not “send extra funds.”
How to stay safer
Only approve transactions from sites you intended to use, and read the wallet prompt every time. Do not repeatedly press Confirm on multiple pending pop-ups: this can create duplicate attempts if one eventually lands. When sending a large amount, make a small test transaction first and keep enough SOL for network fees. If expiry happens repeatedly, wait a few minutes, refresh the app, or try a reputable wallet connection again.
Understanding blockhash expiry turns a confusing error into a simple routine: verify the on-chain result, refresh the request, and approve one fresh transaction carefully.