Transaction loads an address table account that doesn't exist
The transaction references an Address Lookup Table (ALT) account that does not exist on-chain or has been deactivated and closed.
Common causes
- Wrong lookup table address. The public key used for the lookup table is incorrect or from a different environment (devnet vs. mainnet).
- Table was deactivated and closed. The owner deactivated the ALT and reclaimed the rent after the cooldown period.
- Table not yet created. The ALT creation transaction has not been confirmed, or the table was created on a different cluster.
- Table recently created. The RPC node has not yet processed the slot where the ALT was created. Wait for confirmation.
How to fix
- Verify the ALT address. Use getAccountInfo to check that the lookup table account exists and is owned by the Address Lookup Table program (
AddressLookupTab1e1111111111111111111111111). - Check the cluster. Ensure you are using the same cluster (mainnet/devnet/testnet) where the ALT was created.
- Wait for confirmation. If you just created the ALT, wait for the creation transaction to be confirmed before using it.
- Recreate if closed. If the table was closed, create a new one with createLookupTable.
FAQ
What is an Address Lookup Table? An ALT stores up to 256 public keys on-chain. Transactions reference the table instead of including each key, reducing transaction size and enabling more accounts per transaction.
Can a closed ALT be reopened? No. Once an ALT is deactivated and closed, it cannot be reopened. You must create a new one.
How long before a deactivated ALT can be closed? Approximately one epoch (~2 days) after deactivation. During this cooldown, transactions referencing the table can still be processed.
Error text variants
-
Transaction loads an address table account that doesn't exist -
Address lookup table not found -
address table account does not exist
Updated: