How to Freeze Solana Tokens: Step by Step Guide.

Everyone's buying in, but then some shady wallet starts dumping millions right when you hit ATH. Panic mode. You need to freeze that address now before they rug the liquidity. Happened to my buddy last week-saved his launch. That's when you freeze Solana tokens. Basically locks a specific wallet's holdings so they can't transfer or sell. Not the whole supply, just that one account.

Why does this matter? If you're the token creator with freeze authority, it's your emergency brake. Fraud? Hack? Compliance crap? Freeze it. But heads up-abuse this and your community hates you forever. In my experience, only use it for real threats.

First things first: Do you even have freeze authority?

Look, you can't freeze jack without it. Jump on Solscan or Helius Orb, punch in your token's mint address. Hit the Authority tab. See "Freeze Authority"? If it's your wallet address, you're good. If it's null or someone else's? Tough luck, can't freeze.

The thing is, most memecoin launchpads like Pump.fun set this to null on purpose. No freezes possible-decentralized vibes. But if you created via SPL tools or kept authority, boom, power's yours. I usually check this before launching anything serious.

Quick check on Solscan

  1. Go to solscan.io/token/YOURTOKENMINT.
  2. Scroll to Authorities section.
  3. Freeze Authority not null? Copy that address-it's gotta be your connected wallet.

Sound familiar? If it's revoked already, you're done. No take backs on Solana.

Easiest way: CoinFactory one pager

Alright, hands down my go to for quick freezes. No code, no BS. Fees? Like 0.01 SOL tops, depending on network congestion. Here's how I do it every time.

  1. Head to coinfactory.app/freezer or whatever their freeze page is-search "CoinFactory freeze Solana".
  2. Connect the wallet that owns the freeze authority. Phantom? Solflare? Pick it, approve.
  3. Paste your token mint address. Then the wallet(s) you wanna freeze. One by one or bulk?
  4. Review the summary. Looks good? Smash "Freeze Accounts".
  5. Wallet pops up-confirm the tx. ~0.000005 SOL fee, instant on mainnet.

And you're done. Check Solscan for that frozen state. Green check? Safe. I froze three snipers last launch this way. Worked like a charm.

Smithii if you got a list of wallets

Now, say you've got 50 shady addresses from your Telegram group. CoinFactory's cool, but Smithii's bulk king. Upload CSV? Genius.

Why switch? Faster for multiples. Same low fees. In my experience, their UI's cleaner for pros.

  1. Hit smithii.io, find Freeze Token Accounts tool.
  2. Connect authority wallet. Select your token from dropdown.
  3. Enter addresses or upload CSV-download their sample, fill 'er up, upload.
  4. Double check list. Hit Freeze.
  5. Confirm in wallet. Boom, batch frozen.

Pro tip: Verify on Solscan after. Search each account, look for "Frozen: Yes". If not, tx failed-retry with fresh blockhash.

Common screw ups and fixes

But wait, it doesn't always go smooth. Network busy? Tx times out. Wrong authority wallet? Rejected. Here's the dirt.

  • Insufficient SOL: Need ~0.002 SOL min for tx + rent. Top up.
  • Wrong network: Devnet vs mainnet? Stick to mainnet for real tokens.
  • Authority revoked: Can't fix. Lesson learned-don't revoke early.
  • Account not associated: Target wallet must hold your token balance first. No balance? Nothing to freeze.

One time, I fat fingered the mint address. Froze the wrong token. Panic sold my holdings to buy back. Don't be me.

Okay, but what if you're coding this beast?

Tools are lazy mode. Real devs use SPL Token Program. Rust or JS? I'll sketch JS 'cause it's quicker for most.

Grab @solana/web3.js and @solana/spl token. Connection to RPC-Helius or QuickNode free tier works.

import { Connection, PublicKey, Transaction } from '@solana/web3.js';
import { getFreezeAccountInstruction, TOKENPROGRAMID } from '@solana/spl token'; const connection = new Connection('https://api.mainnet beta.solana.com');
const mint = new PublicKey('YOURTOKENMINT');
const tokenAccountToFreeze = new PublicKey('TARGETWALLETTOKEN_ACCOUNT');
const freezeAuthority = new PublicKey('YOURAUTHORITYWALLET');
const payer = / your keypair /; const freezeIx = getFreezeAccountInstruction( TOKENPROGRAMID, tokenAccountToFreeze, mint, freezeAuthority, payer.publicKey // optional multi signer stuff
); const tx = new Transaction().add(freezeIx);
const sig = await sendAndConfirm(tx, [payer]);
console.log('Frozen:', sig);

Short version. Fees auto calculated, but expect 0.000005 SOL base + priority if congested. Test on devnet first. Why code? Custom logic, like auto freeze on volume spikes. I built a bot once-froze 20 accounts in 10 secs.

Freeze vs revoke: Don't mix 'em up

What?FreezeRevoke
PurposeLock specific accounts temporarilyKill freeze power forever
Reversible?Yes, thaw anytimeNo, permanent
Who?Current authority holderCurrent authority holder
ToolCoinFactory/SmithiiSolHub or SPL setAuthority null
Fee~0.000005 SOL per account~0.000005 SOL once

See? Freezing's tactical. Revoking's for trust building-do it post launch for memecoins. "Hey holders, no rugs possible!" My tokens always get revoked day 1.

Unfreezing: The thaw button

Froze too much? Or good guy now? Same tools, just "Unfreeze". CoinFactory has it. Smithii too. Steps mirror freeze, but use ThawAccount instruction if coding.

What's next? Contact the owner if you're frozen. Solflare users-hit up token team. They control it. If unresponsive? Red flag, probably scam. Sell what you can before full freeze.

CLI way for nerds

Spl token CLI's OG. Install via npm or cargo.

  1. spl token freeze YOURTOKENACCOUNT YOURMINT --owner YOURAUTHORITY_KEYPAIR.json
  2. Done. Check with spl token account info.

Super fast, no UI. I use it on VPS for bulk ops. ~0 SOL if you're funded.

Real talk: When to freeze (and when not)

Good uses? Sniper bot dumping your LP. Hacked multisig. Regs demanding it for USDC style tokens. Fraud prevention-freeze before they bounce.

Bad? Locking buyers post pump. Honeypot scams. Community riots. One project I saw froze top holders-price tanked 90%. Trust gone.

In my experience, announce freezes on X/Telegram. "Froze suspected drainer, funds safe." Transparency wins.

Edge cases that bite

Multi sig authority? Need all signers. Pain. Associated Token Accounts only-no native SOL freezes.

Token Extensions? Newer SPL stuff-check if freeze enabled. Pump.fun? Nope.

Fees spiking? Priority fee 0.001 SOL extra. Use Jito for bundles if 100+ accounts.

And if chain halts? Wait it out. Solana's fast, but not immortal.

Tools showdown

Quick pick your poison.

  • CoinFactory: Newbies. Simple UI. Bulk ok.
  • Smithii: Bulk CSV god. Memecoiners love it.
  • SolHub: More for revokes, but freezes too.
  • CLI/JS: Pros, bots, custom.

I rotate 'em. Smithii for launches, CLI for scripts.

Your first freeze: Dry run

Don't YOLO mainnet. Devnet tokens, practice. Create token with --enable freeze flag via spl token create token.

Mint to test wallet. Freeze it. Try transfer-fails. Unfreeze. Good? Go live.

One more: Track tx on Solscan. Search sig, see "Freeze Account" instruction. Confirms success.