Create a Solana Token With the spl-token CLI (2026)
The full spl-token CLI path to a Solana token: the commands, the post-rent-cut cost of 0.0163 SOL verified on-chain, why your mint shows as Unknown Token.
Ready to create your Solana token? Enter your token details, choose your authority options, and confirm in your wallet.
You can create a Solana SPL token from the command line with three commands, and it costs about 0.0163 SOL once metadata is included. The catch is that those three commands do not produce a token anyone can recognise. The SPL mint account has no field for a name, symbol or image, so a token created this way and left alone renders as Unknown Token in every wallet and explorer. Attaching metadata is a fourth step, and which method you pick — Metaplex or the Token-2022 extension — changes both your cost and how much of the Solana ecosystem will cooperate with your token. This guide covers the whole path, honestly, including the cases where writing the commands yourself is the wrong call.
The three commands that create a token
Assuming you already have the Solana toolchain installed and a funded keypair, this is the entire minting sequence.
# 1. Create the mint. Prints the mint address — save it.
spl-token create-token
# 2. Create an account that can hold this token.
spl-token create-account <MINT_ADDRESS>
# 3. Issue supply into that account.
spl-token mint <MINT_ADDRESS> 1000000000
Three commands, one new token, supply sitting in your wallet. On devnet you can run this in under a minute for nothing; on mainnet it costs a few thousandths of a SOL in rent and signature fees.
A few defaults are worth knowing before you run it on mainnet, because two of them are permanent:
| Property | Default | Changeable later? |
|---|---|---|
| Decimals | 9 | No — fixed at creation |
| Mint authority | Your keypair | Yes, until you revoke it |
| Freeze authority | Not set unless you pass --enable-freeze | Cannot be added after creation |
| Supply | 0 until you run spl-token mint | Yes, while mint authority exists |
| Name, symbol, image | None | Separate program, see below |
Decimals is the one that catches people. It is set at creation and there is no instruction to change it afterwards. Nine decimals is the CLI default and matches SOL itself, but most memecoins ship with six, which is what our token creation form defaults to. If you want six, you have to say so at creation time with --decimals 6.
Freeze authority is the opposite trap and it cuts in your favour: the CLI does not set one unless you ask for it. A mint created with a plain spl-token create-token has no freeze authority, which is exactly the state traders want to see. It cannot be added later, so there is no way to sneak one in after launch.
Why your token still shows as Unknown Token
Run those three commands, open the mint in Phantom, and you will see the mint address rather than a name. This is not a bug and it is not a propagation delay.
The SPL mint account is 82 bytes. Those bytes hold the mint authority, the supply, the decimals, an initialisation flag and the optional freeze authority. There is no field for a name, no field for a symbol, and no field for an image URI. The reference implementation is explicit about the layout, and no amount of waiting will make a name appear in a struct that has nowhere to put one.
Display information comes from somewhere else entirely. There are exactly two places a wallet will look.
First, a note on why these numbers differ from every other guide
Solana is in the middle of cutting the price of on-chain storage. SIMD-0437 reduces lamports_per_byte from 6,960 to 696 in five feature-gated steps. The first landed on mainnet on 3 September 2026, and the second is live now: reading the rent sysvar directly on 15 September 2026 returns lamports_per_byte_year = 5,080 with an exemption threshold of 1.0, a 27% cut against the long-standing rate.
Every rent figure published before this month is therefore too high, including the ~0.0191 SOL floor that appears on most Solana cost guides and on our own older pages. Three further steps are scheduled for Agave 4.4 in November 2026, which will take storage costs down by roughly another 90%.
The practical advice: treat any SOL rent figure you read, including the ones below, as a dated measurement rather than a constant. You can check the current rate yourself in one call, and it is worth doing before you budget anything:
solana rent 607 # rent-exempt minimum for a 607-byte account
Path A: Metaplex Token Metadata
The classic answer, and the one the Solana trading ecosystem was built around. Metaplex Token Metadata is a separate on-chain program that creates a metadata account derived from your mint address. Wallets, explorers, aggregators and chart sites all know to look there.
The CLI does not do this for you. spl-token talks to the SPL Token Program; Metaplex is a different program with a different interface, so attaching metadata means writing a script against the Metaplex SDK, or using a tool that does it for you. In practice this is the step where the do-it-yourself path stops being three commands and starts being a small TypeScript project, plus somewhere to host your image and your metadata JSON.
One upside of the Metaplex account is that it stays editable for as long as you hold update authority, so a name or image chosen badly at launch can be corrected afterwards. The mint address and the decimals cannot.
It is also where nearly all of the cost lives:
| On-chain item | Cost (SOL) | Recoverable? |
|---|---|---|
| Mint account rent (82 bytes) | 0.00107 | No — a classic mint cannot be closed |
| Associated token account rent (165 bytes) | 0.00149 | Yes, on close |
| Metaplex metadata account rent (607 bytes) | 0.00373 | Yes, on close |
| Metaplex protocol fee | 0.01000 | No |
| Signature fees (2 signatures) | 0.00001 | No |
| Total floor | ~0.0163 | ~0.0052 of it comes back |
The flat 0.01 SOL fee is the headline. It is larger than all three rent deposits combined, it is charged on the create instruction, and it never comes back. You can confirm both halves on any live token: a Metaplex metadata account on mainnet holds 13,733,800 lamports against a rent requirement of 3,733,800, and the 10,000,000 lamport difference is the fee, parked in the account.
That fee is also the reason this article's argument got sharper this month. Rent fell 27% and the fee did not move, so the Metaplex fee is now 61% of the total cost of creating a Solana token, up from roughly 47% under the old rate. Every tool that creates a token with Metaplex metadata pays it, including ours. When a hosted creator quotes an all-in price, about 0.0163 SOL of it is this floor and is not the tool's margin.
One nuance worth knowing if you ever close the accounts: refunds are calculated at the rate in force when you close, not the rate you paid. Someone who funded a metadata account at the old rate and closes it today gets the lower amount back. With three more rent cuts scheduled, "you get your rent back" is not quite true any more.
Path B: the Token-2022 metadata extension
Token-2022 is a newer token program that supports extensions, one of which lets a mint store its own metadata directly. No second program, no Metaplex account, no protocol fee. The CLI supports it natively, which makes this the one metadata route you can complete without writing any code:
# Create a Token-2022 mint with the metadata extension enabled
spl-token create-token \
--program-id TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb \
--enable-metadata
# Write the name, symbol and URI into the mint itself
spl-token initialize-metadata <MINT_ADDRESS> "Example Token" "EXAMPLE" "https://example.com/token.json"
Fields stay editable afterwards with spl-token update-metadata <MINT> <FIELD> <VALUE> for as long as you hold the update authority, and the same command removes a field with --remove.
Four commands total, and the token has a name. On cost it wins comfortably: around 0.0038 SOL against 0.0163 SOL, roughly four times cheaper. The metadata lives inside a slightly larger mint account rather than a separate one, and there is no Metaplex fee at all. The gap in money you never see again is starker than the headline: about 0.011 SOL of the classic path is unrecoverable, against roughly 0.00001 SOL of this one. Exact mint size depends on how long your name, symbol and URI are, so treat 0.0038 SOL as a typical figure rather than a fixed one.
The catch is compatibility, and it is a serious one. Token-2022 support across wallets, aggregators, chart sites and automated market makers is real but uneven, and it varies by which extensions a mint uses. A token that renders perfectly in one wallet can be unroutable in an aggregator or rejected by a pool creation flow. For a token whose entire value depends on being tradable and visible within minutes of launch, that is not a risk worth taking to save about a hundredth of a SOL.
The honest recommendation: use Token-2022 for internal tokens, experiments, and projects that control their own interface. Use classic SPL with Metaplex metadata for anything that needs the wider ecosystem to cooperate on day one.
Revoking mint and freeze authority
This is the part of the CLI path that is genuinely excellent, and it is two commands.
# Permanently give up the ability to mint more supply
spl-token authorize <MINT_ADDRESS> mint --disable
# Permanently give up the ability to freeze holder accounts
spl-token authorize <MINT_ADDRESS> freeze --disable
Both are irreversible. There is no re-enable, no recovery, no support ticket. Rehearse them on devnet before you run them on mainnet, and check the mint address twice.
They also matter more than anything else in this guide. Across the launch dataset behind our survival analysis, tokens with mint authority revoked survived their first 24 hours at 4.2× the rate of tokens that kept it. The mechanism is not mysterious: an active mint authority means the creator can print unlimited supply at any moment, experienced traders check for it, and the ones who check are the ones with capital. Revoking mint authority is the cheapest trust signal available to a new token.
If you created a classic SPL mint with no freeze authority, the second command will fail because there is nothing to disable. That is the correct outcome and worth confirming rather than assuming.
Both operations have one-click equivalents if you would rather not point a terminal at a permanent decision: revoke mint authority and revoke freeze authority each build the same instruction and show you the mint address before you sign.
Which path fits what you are launching
Cost is the wrong axis for most of this decision, and the interactive breakdown below shows why: for a single launch, every path is cheap in absolute terms, and the differences only compound when you are minting at volume.
The CLI is the right tool when you are issuing many tokens programmatically, when you need Token-2022 extensions that no hosted form exposes, when you are testing on devnet, or when you simply want to understand what the instructions do. Those are real cases and this guide exists to serve them.
It is the wrong tool when you are launching one memecoin and the clock matters. The three-command part is easy; the parts that follow are not. You need an image hosted somewhere permanent, a metadata JSON that follows the expected schema, a Metaplex script that runs correctly the first time, and correct decimals chosen before the mint exists. Each of those is a place to lose an afternoon or make a permanent mistake, and none of them are interesting problems.
That is the gap a hosted creator fills. Create the token from the form instead and you get the same instructions and the same resulting mint, with the metadata upload, the authority toggles and the liquidity step in one flow you sign from your own wallet. One transaction, a flat fee shown before you connect, and no percentage of your trading volume afterwards.
Neither path is more legitimate than the other. A mint created from a form and a mint created from a terminal are byte-identical on-chain, and no explorer can distinguish them.
Quick Facts
All on-chain figures read from mainnet on 15 September 2026, at lamports_per_byte_year = 5,080.
| Fact | Value |
|---|---|
| Commands to a token with supply | 3 (create-token, create-account, mint) |
| Commands including metadata (Token-2022) | 4 |
| Classic SPL mint account size | 82 bytes |
| Associated token account size | 165 bytes |
| Metaplex metadata account size | 607 bytes |
| Default decimals from the CLI | 9 |
| Freeze authority by default | Not set (requires --enable-freeze) |
| On-chain floor, classic SPL + Metaplex | ~0.0163 SOL |
| Of which unrecoverable | ~0.0111 SOL |
| On-chain floor, Token-2022 + metadata extension | ~0.0038 SOL |
| Metaplex protocol fee | 0.01 SOL, flat, non-refundable |
| Metaplex fee as share of total | 61% |
| Base signature fee | 5,000 lamports (0.000005 SOL) |
| Token-2022 program ID | TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb |
| Revoke mint authority | spl-token authorize <MINT> mint --disable |
Limitations
Every SOL figure here is a measurement taken on 15 September 2026, not a constant. Solana is part-way through SIMD-0437, which cuts storage costs in five steps; two have landed and three more are expected in November 2026. Rent figures in this guide will be too high once those ship, in the same way that every pre-September guide is too high today. Run solana rent <bytes> before you rely on any of it.
This guide covers creating a token and configuring its authorities. It does not cover liquidity, which is a separate and larger problem: a token with no pool has no price and cannot be traded, and pool creation carries its own rent and its own decisions about how much to seed. See our guides on adding liquidity on Raydium and burning LP tokens for that half of a launch.
Priority fees during network congestion sit on top of every figure quoted here and can exceed the base costs during heavy periods.
Token-2022 ecosystem support is the fastest-moving claim in this article. Wallet, aggregator and market-maker support has been expanding, and which extensions are accepted varies by platform and changes without announcement. Check current support for your specific combination of extensions before committing a mainnet launch to it rather than trusting any guide, including this one.
This guide also does not cover writing Metaplex metadata programmatically, which needs a TypeScript project rather than a command, or Token-2022 extensions beyond metadata such as transfer fees and transfer hooks. Those extensions carry materially worse compatibility than plain metadata.
FAQ
How do I create a Solana token from the command line?
Install the Solana toolchain and the spl-token CLI, fund a keypair with SOL, then run three commands: spl-token create-token to create the mint, spl-token create-account <MINT> to create an account that can hold it, and spl-token mint <MINT> <AMOUNT> to issue supply into that account. That gives you a working token in about a minute. It does not give you a name, a symbol or an image — metadata is a separate step, and skipping it is why so many CLI-created tokens render as Unknown Token.
Why does my token show as Unknown Token in Phantom?
Because the classic SPL mint account has no field for a name, symbol or image. It stores decimals, supply, mint authority and freeze authority, and nothing else. Wallets and explorers read display information from a separate source: either a Metaplex Token Metadata account attached to the mint, or the Token-2022 metadata extension stored inside the mint itself. Create a mint with spl-token create-token and stop there, and there is nothing for Phantom to display, so it falls back to the mint address.
How much does it cost to create a Solana token with the CLI?
About 0.0163 SOL for the classic path as of 15 September 2026: 0.00107 SOL of rent for the mint, 0.00149 SOL for the associated token account, 0.00373 SOL for the Metaplex metadata account, a flat 0.01 SOL Metaplex fee, and 5,000 lamports per signature. Older guides quote about 0.0191 SOL because Solana cut its rent rate this month under SIMD-0437, and more cuts are scheduled. The Token-2022 route with the metadata extension skips Metaplex and lands near 0.0038 SOL.
How do I revoke mint authority from the command line?
Run spl-token authorize <MINT_ADDRESS> mint --disable. The freeze equivalent is spl-token authorize <MINT_ADDRESS> freeze --disable. Both are permanent and cannot be undone, so rehearse them on devnet first. Revoking mint authority is the single configuration choice most strongly associated with a token surviving its first day, so the fact that it is one command is the best news in this guide.
Is a CLI-created token different from one made by a no-code tool?
No. Both call the same SPL Token Program instructions and produce a mint that is indistinguishable on-chain. A block explorer cannot tell you which path was used. What differs is who writes the instructions, who uploads the image and metadata JSON, and how easy it is to get a detail wrong that cannot be changed afterwards, such as decimals.
Should I use Token-2022 for a memecoin?
Usually not, despite it being about four times cheaper on-chain. Classic SPL plus Metaplex metadata is the format the trading stack was built around, and a memecoin has to render correctly in wallets, appear on DexScreener and pair into a liquidity pool on day one. Token-2022 is a reasonable choice for internal tokens, tests and projects that control their own front end, and a risky one for anything that needs the whole ecosystem to cooperate immediately.
Sources & references
- Quickstart: create a token with the CLI — Solana docsPrimary source for the command sequence, the Token-2022 --enable-metadata flag and the initialize-metadata call.
- Reduced rent (SIMD-0437) — Solana FoundationThe five-step cut of lamports_per_byte from 6,960 to 696. Step one landed 3 September 2026; step two is live on mainnet as of 15 September 2026, verified against the rent sysvar.
- Solana rent and rent-exempt minimums — Solana docsRent-exemption formula used to compute every SOL figure on this page; rent is refundable when an account is closed.
- SPL Token Program reference implementation — GitHub / Solana ProgramDefines the 82-byte mint account layout — the classic mint has no field for a name, symbol or image.
- Token-2022 metadata extension — Solana Program LibrarySpecifies the metadata-pointer and token-metadata extensions that let a mint store its own name, symbol and URI.
- Metaplex Token Metadata — Metaplex FoundationThe separate program that supplies metadata to classic SPL mints, and the source of the flat protocol fee charged on create.
- Solana transaction fees — Solana docsBase fee of 5,000 lamports per signature, plus optional prioritization fees during congestion.
- Phantom developer documentation — PhantomHow the wallet resolves a token's display name, symbol and image, and what it falls back to when none is found.
- Raydium pool creation — RaydiumRequirements a mint must satisfy to be paired into a standard AMM pool.
- Jupiter token list and verification — JupiterHow a new mint becomes routable and what metadata the aggregator reads.
- Solscan — SolscanUsed to verify real mint transactions and confirm the per-instruction cost of each path.
- Agave / Solana CLI install guide — AnzaInstallation path for the Solana toolchain that the spl-token CLI runs alongside.
- Cost to create a Solana token in 2026 — AlchemiiCompanion cost breakdown; the on-chain floor figures on this page are reconciled against it.
- Why most Solana memecoins die in 24 hours — AlchemiiLaunch-configuration dataset behind the authority-revocation survival figures quoted here.
Create your Solana token
Choose your token name, symbol, supply and image. Review the authority options and creation fee, then confirm the transaction in your wallet. Liquidity is a separate step.
Related Topics
More guides to Solana token creation, authorities, liquidity, and meme coin launches.
How to Launch a Token on Solana That Isn't a Memecoin
Launch a Solana token built to last: authority strategy, decimals, supply, vesting and liquidity for game, governance, loyalty and creator tokens in 2026.
Transfer Mint Authority on Solana: Move vs Revoke
Transfer Solana SPL mint authority to a multisig instead of revoking — when each is right, SetAuthority mechanics, common pitfalls.
How to Airdrop Solana Tokens (Step-by-Step 2026)
Complete walkthrough for airdropping SPL tokens on Solana: wallet CSV prep, batch limits, cost per send, and when an airdrop helps vs. hurts your launch.
Raydium Token Launch: The 5-Step Playbook (2026)
End-to-end Raydium token launch flow: mint your SPL, configure metadata, seed a Raydium pool, burn LP, and get listed on Jupiter. Total cost ~0.72 SOL.
Cost to Create a Solana Token in 2026: 0.22 SOL
Create a Solana SPL token in 2026 for 0.22 SOL all-in: a 0.0191 SOL on-chain floor plus a 0.2 SOL flat fee, 0.32 SOL with mint revoked. Every line itemised.
Free Solana Token Creator? 0.0191 SOL Floor (2026)
No Solana token creator is free — the protocol floor is ~0.0191 SOL and no tool can waive it. Every no-code creator's real 2026 price, compared in SOL.