Fixing Failed Close-Account Transactions
Updated · 5 min read
When a batch fails, nothing is closed and no rent is lost; you only pay the network fee if the transaction reached the chain. Here are the usual causes.
An account was not really empty
If a balance changed between scanning and signing, the close for that account fails and takes the whole batch with it. Scan again and retry.
The blockhash expired
Transactions are valid for roughly a minute. Leaving the approval window open too long, or heavy congestion, can make it expire. Retry, optionally with a higher priority fee.
Not enough SOL for the fee
The network fee is paid before the rent is returned, so the wallet needs a very small SOL balance to start.
Special accounts
Frozen accounts, accounts with a foreign close authority and Token-2022 accounts holding withheld fees cannot be closed. The scanner filters them out, but an account can change state after the scan.
Check your wallet for locked SOL
Scan any Solana address for empty token accounts and see exactly how much rent you can reclaim. Free to check, non-custodial to close.
Frequently asked questions
Did I lose SOL on a failed transaction?
At most the network fee, which is a tiny amount. The rent deposits stay in the accounts until a successful close.
