The memecoin space is a minefield. For every legitimate 100x, there are hundreds of scams designed to extract your capital. This guide will teach you how to identify red flags before you ape.
Types of Scams
Rug Pull
The developer drains liquidity from the trading pool, crashing the token to zero. Your tokens become worthless and unsellable overnight.
Honey Pot
You can buy but can't sell. The contract is coded to block sell transactions for everyone except the deployer.
Slow Rug
Developers gradually sell their tokens over time, suppressing price while maintaining the illusion of a legitimate project.
Mint Function Exploit
The contract allows unlimited minting of new tokens, which developers dump on buyers.
Pre-Trade Security Checklist
Before buying any memecoin, verify ALL of the following:
1. Liquidity Analysis
Locked Liquidity- Is the LP (Liquidity Provider) token locked?
- For how long? (Minimum 6 months, ideally 1+ year)
- What percentage of total LP is locked?
- Use: team.finance, unicrypt, or chain-specific lockers
- No liquidity lock
- Short lock duration (<3 months)
- Only partial liquidity locked
- Lock with unknown/unaudited locker
- What's the total liquidity value?
- Micro-cap with $5k liquidity = massive slippage
- Sudden large LP additions could precede dumps
2. Contract Ownership
Renounced Contract- Check if ownership is renounced (transferred to zero address)
- Verify on the blockchain explorer
- Renounced = no one can modify contract functions
- Ownership not renounced
- Recently deployed contract (< 24 hours)
- Upgradeable proxy contracts
- Hidden owner functions
3. Contract Functions
Scan for dangerous functions:
Blacklist FunctionCan the owner blacklist addresses from selling?
``
function blacklist(address _address) external onlyOwner
`
Max Transaction/Wallet
Legitimate: prevents whale accumulation
Suspicious: can be changed by owner to lock sales
Tax Modification
Can buy/sell taxes be increased after launch?
`
function setFee(uint256 _fee) external onlyOwner
`
Pause Trading
Can the owner pause all trading?
Mint Function
Can new tokens be minted?
🚩 Red Flags:
- Any modifiable tax function (can set to 100%)
- Hidden functions with obfuscated names
- Contract not verified (source code hidden)
4. Holder Distribution
Top Holders Analysis
- What % do top 10 wallets hold?
- Is there a concentrated whale wallet?
- Are team wallets identifiable and reasonable?
🚩 Red Flags:
- Single wallet holds >10% (excluding burn/dead wallets)
- Top 10 hold >40% collectively
- Fresh wallets with large holdings
- Multiple wallets funded from same source
Wallet Age & History
- When were top holder wallets created?
- What's their transaction history?
- Brand new wallets = likely insider
5. Developer Background
Social Verification
- Is the team doxxed (real identities)?
- Verified Twitter account with history?
- Any previous projects? How did they end?
Wallet History
- Track the deployer wallet
- Have they launched previous rugs?
- Are funds traceable to known scammers?
🚩 Red Flags:
- Anonymous team with no verifiable history
- New social accounts created at launch
- Previous projects with suspicious endings
Tools for Due Diligence
Solana
- Solscan: Contract verification, holder analysis
- Birdeye: Trading data, holder changes
- RugCheck: Automated security scoring
- Bubblemaps: Visual holder distribution
Ethereum/Base/BSC
- Etherscan/Basescan/BscScan: Contract reading
- TokenSniffer: Automated contract audit
- GoPlusLabs: Security API
- DEXScreener: Trading metrics + holder info
Cross-Chain
- DEXTools: Comprehensive trading data
- CoinGecko: Legitimacy indicators
- Twitter/X Search: Community sentiment
Reading Contract Code
Even without coding knowledge, check these basics:
On Etherscan/Similar
- Go to Contract tab
- Click "Read Contract"
- Check
owner() - is it zero address (renounced)?
Look for maxTxAmount, maxWalletSize
Check _taxWallet or similar fee recipients
Warning Signs in Code
`solidity
// DANGEROUS: Can change fees at any time
function setTaxFee(uint256 fee) external onlyOwner {
_taxFee = fee;
}
// DANGEROUS: Can blacklist any address
mapping(address => bool) private _isBlacklisted;
// DANGEROUS: Can mint new tokens
function mint(address to, uint256 amount) external onlyOwner {
_mint(to, amount);
}
``
Real-Time Red Flags During Trading
Even after passing initial checks, stay alert:
- Sudden large sells from early wallets
- Dev wallet moving tokens to exchanges
- Social media going quiet after launch hype
- Locked liquidity can still be rugged if unlockable by deployer
- New contract deployments from same deployer
- Telegram/Discord going private or heavily moderated
Quick Security Scan Workflow
- Paste contract in RugCheck/TokenSniffer - instant overview
- Check liquidity lock - team.finance or equivalent
- Verify ownership - is it renounced?
- Scan top holders - distribution and wallet ages
- Read contract basics - any modifiable fees or blacklist?
- Check deployer history - previous projects?
- Assess social presence - real community or bots?
When to Walk Away
If any of these are true, skip the trade:
- Contract not verified
- Liquidity not locked or short lock
- Ownership not renounced AND has dangerous functions
- Top holder concentration >40%
- Deployer has previous rug history
- Social presence seems artificial
Remember
No security check is 100% foolproof. Even "safe" tokens can fail for reasons beyond scams—low volume, lost interest, or market conditions.
Risk management still applies:
- Never invest more than you can afford to lose
- Size positions appropriately for the risk level
- Take profits when available
- If something feels wrong, trust your gut