What Is SPL Token in Solana?
SPL Token is the token standard on Solana, similar to ERC-20 on Ethereum. All fungible tokens (USDC, USDT, wrapped SOL) and most non-fungible tokens on Solana are SPL tokens managed by the Token Program.
Token structure
An SPL token consists of two types of accounts:
- Mint account — defines the token (decimals, supply, mint authority, freeze authority). There is one mint per token type.
- Token accounts — hold balances for specific owners. Each wallet needs one token account per mint it holds.
Creating a token
- Create a mint account with desired decimals and authorities
- Create token accounts (ATAs) for recipients
- Mint tokens to those accounts using the
MintToinstruction
Common operations
| Operation | Description |
|---|---|
MintTo | Create new tokens (requires mint authority) |
Transfer | Move tokens between accounts |
Burn | Destroy tokens, reducing supply |
Approve | Delegate spending to another account |
CloseAccount | Close an empty token account and recover rent |
FAQ
What is the difference between SPL Token and Token-2022? SPL Token is the original standard. Token-2022 adds extensions like transfer fees, confidential transfers, and on-chain metadata. Both standards coexist on Solana.
How do I check a token’s supply? Use getTokenSupply with the mint address to get the current circulating supply.
Do SPL tokens have metadata? The Token Program itself does not store metadata. Token metadata (name, symbol, image URI) is stored by Metaplex Token Metadata or, for Token-2022 mints, via the TokenMetadata extension.
Updated: