When you create an SPL token, you're assigned two token authorities: Mint Authority and Freeze Authority. Understanding these is essential for building a trustworthy project.
Mint Authority
Mint Authority is the permission to create new tokens — effectively increasing the total supply. The address with Mint Authority can call the MintTo instruction to inflate the supply at will.
Keep Mint Authority if:
- You need to mint tokens for future team allocations or partnerships
- Your token is designed as an inflationary currency
- You're running a staking rewards program that requires new token emissions
Revoke Mint Authority if:
- You want a fixed, immutable total supply
- You're launching a memecoin or community token where supply manipulation would be catastrophic
- You want maximum investor trust and decentralization
Freeze Authority
Freeze Authority is the permission to freeze specific token accounts, preventing transfers. A frozen account can't send or receive your token until unfrozen.
Keep Freeze Authority if:
- You're building a regulated product that may need compliance controls
- Your token has KYC/AML requirements (security tokens)
Revoke Freeze Authority if:
- You want a fully permissionless token
- You're building a DeFi protocol where centralized control would be a red flag
- Community trust is a priority
How to Revoke Authorities
To revoke authorities, you need to call SetAuthority with the new authority set to null. You can do this using:
- Create Solana Token — uncheck the authority option during creation
- Solana CLI —
spl-token authorize <mint> mint --disable - Metaboss — command-line tool for authority management
💡 Best Practice: For memecoins and community tokens, revoke both authorities at launch. For utility tokens with planned emissions, keep Mint Authority but communicate clearly about the supply schedule.