Types of Tokens on Solana

Solana supports multiple token standards, each designed for specific use cases and offering different features. Understanding these token types is crucial for developers and users building on Solana.

Overview

Solana’s token ecosystem is built around the SPL Token Program, which provides the foundation for all token operations. All token types (SPL, Token-2022, NFTs, and Semi-fungible) are built on top of this core program, with additional features provided by metadata programs like Metaplex’s Token Metadata program.

Diagram showing different token types in Solana including SPL tokens, Token-2022, NFTs, and Semi-fungible tokens with their key features

Token Types in Solana - Understanding the Token Ecosystem

SPL Tokens (Fungible)

SPL Tokens are the standard fungible token implementation on Solana, similar to ERC-20 on Ethereum.

Key Features

  • Fungible: Each token is identical and interchangeable
  • Standard Operations: Mint, burn, transfer, approve
  • Metadata Support: Name, symbol, decimals, URI (links to off-chain metadata)
  • Authority Control: Mint and freeze authorities

Use Cases

  • Utility Tokens: Governance, staking, rewards
  • Stablecoins: USDC, USDT, DAI
  • DeFi Tokens: Liquidity provider tokens, yield farming tokens
  • Gaming Tokens: In-game currency, experience points

Example

// SPL Token with standard features
// Note: Examples below are illustrative, not actual Solana config syntax
{
name: "MyToken",
symbol: "MTK",
decimals: 9,
totalSupply: 1000000000,
mintAuthority: true,
freezeAuthority: true
}

Token-2022 (Enhanced SPL)

Token-2022 is an enhanced version of SPL tokens that introduces advanced features and improved security.

Key Features

  • All SPL Features: Backward compatible with SPL tokens
  • Transfer Fees: Configurable fees on transfers
  • Interest-Bearing: Tokens that earn interest over time
  • Non-Transferable: Tokens that cannot be transferred
  • Confidential Transfers: Enhanced privacy features
  • Metadata Extensions: More flexible metadata options

Use Cases

  • DeFi Protocols: Advanced lending and borrowing
  • Gaming: Non-transferable achievement tokens
  • Compliance: Tokens with transfer restrictions
  • Privacy: Confidential financial transactions

Example

// Token-2022 with transfer fees
// Note: Examples below are illustrative, not actual Solana config syntax
{
name: "TaxToken",
symbol: "TTK",
decimals: 6,
transferFee: {
basisPoints: 100, // 1%
maximumFee: 1000000, // Max 1 token
minimumFee: 10000 // Min 0.01 tokens
}
}

NFTs (Non-Fungible Tokens)

NFTs on Solana are SPL tokens with decimals = 0 and supply = 1, enhanced with rich metadata through Metaplex’s Token Metadata program. They represent unique, non-interchangeable digital or physical assets.

Key Features

  • Unique: Each token has distinct properties
  • Metadata Rich: Detailed information about the asset
  • Collection Support: Grouped into collections
  • Royalty Support: Automatic royalty distribution
  • Mutable/Immutable: Configurable metadata changes

Use Cases

  • Digital Art: Paintings, illustrations, 3D models
  • Collectibles: Trading cards, virtual items
  • Gaming: In-game assets, characters, equipment
  • Real Estate: Virtual land, property deeds
  • Identity: Usernames, domain names

Example

// NFT with collection and royalties
// Note: Examples below are illustrative, not actual Solana config syntax
{
name: "Rare Artwork #1",
symbol: "ART",
decimals: 0,
collection: "RareArtCollection",
royalty: {
basisPoints: 500, // 5%
creators: ["CreatorAddress1", "CreatorAddress2"]
}
}

Semi-Fungible Tokens

Semi-fungible tokens are a design pattern using SPL tokens with enhanced metadata. They combine properties of both fungible and non-fungible tokens, typically with supply > 1 but unique metadata for each instance.

Key Features

  • Partially Fungible: Some properties are identical, others unique
  • Batch Operations: Can transfer multiple tokens at once
  • Metadata Variations: Different metadata for different quantities

Use Cases

  • Gaming Items: Weapons with durability, armor with stats
  • Tickets: Event tickets with different seat numbers
  • Loyalty Programs: Points with different expiration dates
  • Real Estate: Property shares with different voting rights

Comparison Table

FeatureSPL TokensToken-2022NFTsSemi-Fungible
FungibilityFully FungibleFully FungibleNon-FungiblePartially Fungible
Transfer Fees
Interest Bearing
Non-Transferable
Metadata ExtensionsBasicAdvancedRichVariable
Collection Support
Royalty Support
Backward CompatibilityN/A

When to Use Each Type

Choose SPL Tokens When:

  • You need standard fungible tokens
  • Simplicity is priority
  • You want maximum compatibility
  • Building basic DeFi applications

Choose Token-2022 When:

  • You need advanced features like transfer fees
  • Building sophisticated DeFi protocols
  • Require interest-bearing capabilities
  • Need non-transferable tokens

Choose NFTs When:

  • Representing unique digital assets
  • Building collectible applications
  • Need rich metadata and collections
  • Implementing digital ownership

Choose Semi-Fungible When:

  • Tokens have both identical and unique properties
  • Building gaming applications with item systems
  • Need batch operations on similar items

Security Considerations

Authority Management

  • Mint Authority: Control over creating new tokens
  • Freeze Authority: Ability to freeze accounts
  • Transfer Authority: Control over transfers (Token-2022)

📝 Conclusion

Solana’s token ecosystem offers flexibility and power through multiple standards. Understanding when and how to use each token type is essential for building effective applications.

Key Takeaways:

  • SPL Tokens provide the foundation for most use cases
  • Token-2022 extends capabilities for advanced applications
  • NFTs enable unique digital asset ownership
  • Semi-fungible tokens bridge the gap between fungible and non-fungible

Choose the right token type based on your specific requirements, and remember that you can always upgrade from SPL to Token-2022 as your needs evolve.

❓ FAQ

Can I convert an SPL token to Token-2022?

No, you cannot directly convert an existing SPL token to Token-2022. They are separate programs. You would need to:

  1. Create a new Token-2022 mint
  2. Distribute new tokens to holders
  3. Update your application to use the new mint

However, Token-2022 is backward compatible, so existing SPL tokens continue to work normally.

Are all wallets compatible with Token-2022?

Not all wallets fully support every Token-2022 extension:

  • Basic features are widely supported
  • Advanced features like confidential transfers or interest-bearing tokens may have limited wallet support
  • Always check with your wallet provider for specific extension compatibility
  • Consider user experience when choosing Token-2022 features
What are the security risks of token authorities?

Key security considerations:

  • Mint Authority: Control over creating new tokens
  • Freeze Authority: Ability to freeze accounts
  • Transfer Authority: Control over transfers (Token-2022)

To learn more about Solana tokens, explore these pages: