How to Check a Smart Contract Address Before You Connect Your Wallet
Every time you click “Connect Wallet” on a new decentralized application, you are trusting that the code behind the scenes will do exactly what it promises. Unfortunately, malicious contracts drain millions in assets every year by requesting unlimited token approvals or containing hidden withdrawal functions. Taking two minutes to inspect a contract address can save your entire portfolio.
What You Need Before You Start
You only need the contract address itself. This usually appears on the project’s documentation page or in the URL of the dApp. Copy it carefully—one wrong character means you are looking at a completely different contract.
Step 1: Paste It Into a Blockchain Explorer
Open a block explorer like Etherscan, BscScan, or the equivalent for the network you are using. Paste the address into the search bar. If the explorer returns “Sorry, we are unable to locate this TxnHash,” or shows a wallet address instead of a contract, stop immediately. Either the team gave you the wrong address, or you are being directed to a personal wallet that will simply steal deposits.
Step 2: Look for the Contract Tab
Legitimate projects have their source code published. Click the “Contract” tab. If you see a green checkmark and the word “Verified,” you can read the actual code. If it says “Contract source code not verified,” treat this as a red flag. Unverified code means you cannot see what the contract actually does, and you should not interact with it unless you have other strong reasons to trust the developers.
Step 3: Scan the Code for Dangerous Functions
You do not need to be a programmer to spot obvious threats. Use your browser’s find function and search for these terms:
- selfdestruct
- mint(uint256
- transferOwnership
- approve(address,uint256)
If you see selfdestruct, the contract can be deleted and your funds locked forever. If you see a mint function with no maximum supply cap, the developers can print infinite tokens and crash the price. A transferOwnership function is normal, but check if it is restricted or if anyone can call it.
Step 4: Check the Token Approvals
Even if the contract looks clean, it may ask for unlimited spending rights on your USDC or WETH. When you initiate your first transaction, your wallet will show an “Approve” screen. Never click “Use default” or “Max.” Instead, click “Edit permission” and set a custom spending cap that matches exactly what you need for that transaction. You can always approve more later, but you cannot undo an infinite approval once it is exploited.
Step 5: Review the Contract Age and Activity
Scroll down to the “Contract Creation” section. If the contract was deployed two hours ago and already has millions of dollars inside, proceed with extreme caution. Check the transaction history. If the only interactions are deposits and no withdrawals have been tested, you may be looking at a honeypot that allows money in but not out.
Final Thoughts
Verifying a smart contract is not a guarantee of safety, but it removes the lowest-hanging fruit used by scammers. Make this inspection a non-negotiable habit, just like checking your car mirrors before driving. The few minutes you spend reading the code are far less painful than writing a support ticket to a decentralized protocol that has no customer service department.
