Solana Programs

Address Lookup Table Program

What are Address Lookup Tables?

Address Lookup Tables (ALTs) allow transactions to reference accounts by index rather than full 32-byte addresses, dramatically reducing transaction size and enabling more complex transactions within Solana's size limits.

Smaller Transactions

Store account addresses in a table and reference them with 1-byte indices instead of 32 bytes.

More Accounts

Fit more account references in a transaction, enabling more complex multi-account operations.

Reusable Tables

Create tables once and reuse them across many transactions for frequently accessed accounts.

Program Details

Program ID: AddressLookupTab1e1111111111111111111111111

How It Works

An Address Lookup Table is an on-chain account that stores a list of addresses. Transactions can reference this table and use 1-byte indices to point to addresses within it, instead of including the full 32-byte address in the transaction.

For example, instead of including 20 × 32 = 640 bytes of addresses, a transaction using an ALT only needs 20 × 1 = 20 bytes plus a reference to the table.

Key Instructions

  • CreateLookupTable: Create a new address lookup table

  • ExtendLookupTable: Add addresses to an existing table

  • FreezeLookupTable: Make a table immutable (cannot be extended)

  • CloseLookupTable: Close and reclaim rent from a table

  • DeactivateLookupTable: Mark a table for deactivation before closing

Common Use Cases

  • DeFi protocols with many token accounts and pools

  • Multi-hop swap routes that touch many accounts

  • Gaming programs with complex state across many accounts

  • Governance systems voting across many proposals

  • Any transaction that hits account limits

Best Practices

  • Tables can hold up to 256 addresses

  • Wait at least 1 slot after extending before using new addresses

  • Consider freezing tables that won't change to prevent accidents

  • Deactivate tables before closing (must wait ~512 slots)

  • Group frequently used addresses together in the same table

Resources

  • Solana Address Lookup Tables Documentation

  • ALT Program Source Code

  • Versioned Transactions Guide