basiliskawakens.xyz

How to Identify a Honeypot Smart Contract Before Interacting

A honeypot data/verify-contract-owner-and-proxy/">smart contract is a token contract designed to let you buy but not sell. You identify one by examining the contract code and transaction history on a block explorer before you send any funds. The core checks are: does the contract have a transfer restriction function, who controls it, and has anyone actually sold successfully.

What a honeypot actually does

Most honeypot contracts implement a function that blocks or taxes sell transfers while allowing buys. Common mechanisms include:

The contract owner typically triggers the restriction after enough buyers have entered, then drains liquidity or runs with the collected buy taxes.

Step 1: Verify the Contract on a Block Explorer

Start on Etherscan (or the relevant chain explorer). Paste the token contract address. Check these tabs:

Contract tab - If the contract is not verified (no source code shown), treat it as high risk. An unverified contract can hide malicious logic. Some legitimate projects delay verification, but you have no way to check the rules.

Code - Look for functions named _transfer, transfer, sell, or buy. Read the logic. Any function that checks msg.sender against a stored list or compares a balance to a hardcoded limit is suspicious.

Read Contract - Look for state variables like maxSellAmount, sellLock, isBlacklisted, isExcludedFromFee. If these exist and are set to restrictive values, the contract can block sells.

Step 2: Check the Owner's Powers

In the Read Contract section, find owner() or a similar function. Note the owner address. Then:

On the Contract tab, look for "Proxy" or "Upgradeability". If you see an admin address that can change the implementation, the contract is not immutable.

Step 3: examine actual transaction history

Go to the token's Holders or Transactions tab. Look for sell transactions. A sell is a transfer from a non-contract address to the token contract or to a DEX pair. If you see no sell transactions at all, or only sells from the deployer's wallet, that is a red flag.

Filter by method. Many explorers let you show only "Swap" or "Transfer" events. Look for transfers that go to a DEX router (like Uniswap V2 Router) - those are sells. If none exist after hours of trading, the contract blocks them.

Step 4: Simulate a Sell Transaction

Use a transaction simulator (like Tenderly or the built-in simulator on Etherscan) before you buy. This is the most reliable check.

You can also use the "Write Contract" section on Etherscan to call the transfer function from your wallet. If it reverts when you try to send tokens to a DEX pair, you have found a honeypot.

Step 5: check liquidity pool status

If the token trades on a DEX, check the liquidity pool contract. Look for:

You can check this by looking at the DEX pair contract on the explorer and reading its functions like owner(), factory(), or checking the LP token holder list.

What a legitimate contract looks like

A safe token contract will have:

No single check is enough. A contract can pass one test and fail another. Run all five steps before you commit funds. If anything looks unusual, walk away.

Not financial advice. basiliskawakens.xyz publishes market data and general information about digital assets. Crypto assets are volatile and you can lose everything you put in. Nothing here is a recommendation to buy, sell or hold, and we make no price predictions.

Prices are sourced from third parties and may be delayed or wrong. Verify anything you intend to act on against a primary source.

Back to on-chain data