What is an SPL token: tokens on Solana explained

An SPL token is a token issued with Solana’s Token Program, the Solana equivalent of ERC-20.

SPL stands for Solana Program Library, a set of standard on-chain programs. The Token Program (and its newer version, Token-2022) lets anyone create a fungible token defined by a mint account. USDC, USDT and many other assets on Solana are SPL tokens.

The account model is the main difference from Ethereum. On Solana, a wallet address does not hold token balances directly. Each token balance lives in a separate token account owned by the wallet. The standard one is the associated token account (ATA), whose address is derived from the owner’s wallet address and the token’s mint. When someone sends USDC to your wallet address, their wallet actually sends it to your USDC associated token account.

If the recipient has never held a particular token, the associated token account must be created first. Most wallets do this automatically as part of the transfer, and the sender pays a small rent-exempt deposit in SOL for the new account in addition to the transaction fee. Fees on Solana are paid in SOL and are usually very low, but a wallet with zero SOL cannot send tokens.

Common mistakes: sending to a token account address instead of a wallet address (or the other way around) in tools that don’t handle the difference, confusing similar-looking tokens with the same name, and not distinguishing between the classic Token Program and Token-2022 when integrating directly. Solana addresses are Base58 strings, typically 32–44 characters, with no 0x prefix.

Moonvex accepts SOL, USDT and USDC on Solana. The customer gets an address and the exact amount, and the service sweeps received funds and tops up SOL for fees itself.

FAQ

Is an SPL token the same as an ERC-20 token?

They serve the same purpose but work differently. ERC-20 balances are stored inside the token contract, while SPL balances are held in separate token accounts owned by wallets.

Why do I need SOL to send USDC on Solana?

Every Solana transaction pays a fee in SOL, and creating a token account for a new recipient requires a small SOL deposit. Without SOL the transfer cannot be submitted.

What is an associated token account?

It is the default token account for a specific wallet and token, at an address derived deterministically from both. Wallets use it so that senders only need the recipient’s main wallet address.

Where it matters

Related terms

Start accepting payments today

An account and your first project in a minute, no monthly fee.

Create account