The Light Token Program is a high performance token program that reduces the cost of account creations by 200x, while being more CU efficient than SPL on hot paths.
The Light Token Program pays the rent-exemption cost for the account.
Transaction fee payers bump a virtual rent balance when writing to the account, which keeps the account “hot”.
“Cold” accounts virtual rent balance below threshold (eg 24h without write bump) get auto-compressed.
The cold account’s state is cryptographically preserved on the Solana ledger.
Users can load a cold account into hot state in-flight when using the account
again.
The metadata field is used by the Light Token Program to store the internal state of a light-mint.The BaseMint field replicates the field layout and serialization format of SPL Mint accounts. The struct is serialized with Borsh to match the on-chain format of SPL tokens and mints.Here is how light-mints and SPL mints compare:
Basemint vs SPL mint
BaseMint Struct
Field
Light-Mint
SPL Mint
mint_authority
✓
✓
supply
✓
✓
decimals
✓
✓
is_initialized
✓
✓
freeze_authority
✓
✓
Light-Mint Data
✓
-
Extensions
✓
via Token-2022
Report incorrect code
Copy
Ask AI
pub struct BaseMint { /// Optional authority used to mint new tokens. The mint authority may only /// be provided during mint creation. If no mint authority is present /// then the mint has a fixed supply and no further tokens may be /// minted. pub mint_authority: Option<Pubkey>, /// Total supply of tokens. pub supply: u64, /// Number of base 10 digits to the right of the decimal place. pub decimals: u8, /// Is initialized - for SPL compatibility pub is_initialized: bool, /// Optional authority to freeze token accounts. pub freeze_authority: Option<Pubkey>,}
Light token accounts are on-chain accounts like SPL token accounts, but with rent-exemption paid
for by the Token program, instead of the user.
A light-token account holds token balances like SPL Token accounts:
A wallet needs a light-token account for each light-mint, SPL mint, or Token 2022 mint it wants to hold, with the wallet address set as the light-token account owner.
Each wallet can own multiple light-token accounts for the same light-mint.
A light-token account can only have one owner and hold units of one light-mint.
Light-Token
SPL-Token
Token Account
~0.00001 SOL
~0.002 SOL
Additionally Light Token is more compute-efficient than SPL on hot paths:
Light token accounts replicate the field layout and serialization format of SPL Token accounts. The struct is serialized with Borsh to match the on-chain format of SPL tokens.Here is how light-tokens and SPL tokens compare: