# Create an SPL Token This example demonstrates how to create an SPL Token on Solana with some metadata such as a token symbol and icon. --- All tokens - including Non-Fungible Tokens (NFTs) are SPL Tokens on Solana. They follow the SPL Token standard (similar to ERC-20). ```text Default SPL Tokens : 9 decimals NFTs : 0 decimals ``` ### How Decimals Work ```text Consider token JOE with 9 decimals: 1 JOE = quantity * 10 ^ (-1 * decimals) = 1 * 10 ^ (-1 * 9) = 0.000000001 ``` ### Mint & Metadata SPL Tokens on Solana are referred to as a Mint. A Mint is defined by a specific type of account on Solana that describes information about a token: ```TypeScript { isInitialized, supply, // The current supply of this token mint on Solana decimals, // The number of decimals this mint breaks down to mintAuthority, // The account who can authorize minting of new tokens freezeAuthority, // The account who can authorize freezing of tokens } ``` Any metadata about this Mint - such as a nickname, symbol, or image - is stored in a **separate** account called a Metadata Account: ```TypeScript { title, symbol, uri, // The URI to the hosted image } ``` > Project Metaplex is the standard for SPL Token metadata on Solana > You can use [Metaplex's Token Metadata Program](https://docs.metaplex.com/) to create metadata for your token. ### Steps to Create an SPL Token 1. Create an account for the Mint. 2. Initialize that account as a Mint Account. 3. Create a metadata account associated with that Mint Account.