SPL Token or Token-2022?

Two different programs, one permanent decision. Token-2022 can do things the original cannot, and you pay for every one of them in compatibility. Here is how to tell which side of that trade you are on.

They are programs, not versions

The names suggest an upgrade, and that is the first thing to unlearn. SPL Token and Token-2022 are two separate programs running side by side on Solana. Token-2022 did not replace anything and the original was not deprecated. The overwhelming majority of Solana tokens, including the ones with the deepest liquidity, are standard SPL tokens.

A token is created under one program or the other, and that is permanent. There is no migration path, no upgrade instruction, and no wrapper that makes an SPL token behave like a Token-2022 one. Choosing means choosing for the life of the token.

What Token-2022 adds

Token-2022 supports everything the original does, plus optional extensions configured at creation. The ones that matter in practice:

  • Transfer fees. A percentage of every transfer is withheld automatically, collectable only by a nominated withdraw authority. This is the extension most people are actually after.
  • Transfer hooks. Custom logic that runs on every transfer, used for allowlists and compliance checks.
  • Confidential transfers. Balances and amounts hidden from public view while remaining verifiable.
  • Interest-bearing tokens. Balances that display accrued interest without repeated minting.
  • Non-transferable tokens. Tokens bound to the account that received them.

These are genuinely useful capabilities. The question is never whether they are impressive, it is whether your token needs one badly enough to pay what they cost.

What they cost you

Not in SOL, though the deployment is more expensive. The real price is compatibility.

Every piece of infrastructure that touches your token has to know how to handle the program it was created under, and for the extensions, how to handle that specific extension. Wallets have largely caught up. Explorers have largely caught up. Beyond that it gets uneven:

  • Some decentralized exchanges support Token-2022 tokens, and some support them but exclude ones with transfer fees, because a fee breaks the arithmetic their pools rely on.
  • Some aggregators route them, some skip them, and the ones that route them may quote you a price that does not account for the fee.
  • Some centralized exchanges do not accept Token-2022 deposits at all.
  • Some bridges do not support them, which can strand your token on Solana.

None of this is a reason to never use Token-2022. It is a reason to check the specific venues that matter to your project, by name, before you launch rather than after.

The honest decision rule

Use standard SPL unless you can name the extension you need and say what job it does.

That is not a hedge, it is the actual answer for most launches. If you are creating a community token, a memecoin, a governance token, or a straightforward utility token, the original program gives you maximum compatibility, the lowest cost, and no surprises at listing time.

Use Token-2022 when the extension is doing identifiable work:

  • A transfer fee funding a treasury or a buyback, where you have decided the rate and can defend it to holders.
  • A compliance requirement that needs transfer hooks or a permissioned allowlist.
  • A product genuinely built around confidential balances or accrued interest.

If your reason is that a fee on every transfer sounds like passive income, stop. Every holder pays that fee on every transfer, it makes your token measurably worse to trade, and thin volume on a fee-bearing token produces very little revenue while actively suppressing the activity that would have produced more.

If you do want a transfer fee

A few things worth fixing in your head before you commit, because none of them can be changed afterwards:

  • The rate is permanent. Anvilmint creates the fee configuration fixed at launch. You cannot lower it later if it turns out to be suppressing volume.
  • Keep it low. A rate above about 5% is where most tokens find that trading simply stops. Under 2% is where most workable fee tokens sit.
  • Consider a cap. Without one, a single large transfer pays the full percentage, which can be enough to deter the exact liquidity you want.
  • Fees do not arrive automatically. They accumulate on chain and stay there until your wallet collects them.
  • Only your wallet can collect. Anvilmint sets the withdraw authority to the address you connect and never to its own. We take no share of your transfer fees.

Side by side

 SPL TokenToken-2022
Transfer feesNot available0.1% to 10%, fixed at launch
Wallet supportUniversalBroad, not universal
DEX and aggregator supportUniversalUneven, worse with a fee
Centralized exchange supportStandardVaries, some decline it
Deployment on Anvilmint0.1 SOL0.5 SOL
Right for most launchesYesOnly with a specific reason

Common questions

What is the difference between SPL Token and Token-2022?
They are two separate on-chain programs. SPL Token is the original and is what almost every Solana token uses. Token-2022 is a newer program that supports the same basics plus optional extensions, such as a fee on every transfer, confidential balances, and interest-bearing tokens. A token is created under one program or the other and cannot be moved between them afterwards.
Is Token-2022 better than SPL Token?
It is more capable, which is not the same as better. If you do not need one of its extensions, Token-2022 gives you nothing except a larger account, a higher deployment cost, and worse compatibility. For the large majority of launches the standard SPL token is the correct choice.
Which exchanges and protocols support Token-2022?
Support is real but uneven, and it changes. Major Solana wallets handle Token-2022 tokens, and several DEXs support them, but some venues will not list a token that charges a transfer fee, and some centralized exchanges do not accept Token-2022 at all. Check the specific venues you care about before launching rather than assuming, because the choice cannot be reversed.
Can I convert an SPL token to Token-2022 later?
No. The program a token is created under is fixed for the life of that token. Switching means launching a new token under the other program and migrating holders to it, which is a substantial undertaking and usually loses you part of your holder base.
Do I need Token-2022 for a memecoin?
Almost certainly not. Memecoins depend on being easy to buy, easy to list, and easy to route through aggregators, which is exactly what the standard SPL program gives you and exactly what a transfer fee complicates. Unless the fee is central to the concept, use SPL.
What does each one cost on Anvilmint?
A standard SPL token deployment is 0.1 SOL. A Token-2022 fee-on-transfer token is 0.5 SOL. Both figures include the Solana rent and transaction fees, which Anvilmint covers. Token-2022 costs more because the mint account carries the extension data and is therefore larger to rent-exempt, and because there is a second authority to configure.
Recommended for most

Standard SPL token

Maximum compatibility, lowest cost, no listing surprises. The right default unless you can name the extension you need.

Create an SPL token for 0.1 SOL
Token-2022

Fee-on-transfer token

A permanent fee on every transfer, collectable only by your wallet. Worth it when the fee is doing a specific job.

Create a tax token for 0.5 SOL