đź”’ WalletLock
Check any wallet for token approvals, Permit2 allowances and account delegations that could let someone move your assets — then revoke them right here with your wallet, or with the open-source script in this repo.
What is a token approval, and why should I care?
When you use a DEX, NFT marketplace or bridge, you usually sign an approval first: an on-chain permission that lets that app’s contract spend a token on your behalf. Many apps ask for unlimited approvals so you don’t have to approve again next time.
The catch: approvals don’t expire when you close the app. Years later, that contract (or whoever compromises it, or the scam site you approved once) can still move those tokens without any further action from you. Most “wallet drained” stories start with an old or malicious approval.
This tool finds everything your address has approved and still-active today: classic token allowances, NFT operator approvals, Permit2 allowances (a newer signature-based system used by Uniswap and others), and EIP-7702 delegations (where your whole account runs contract code).
Is this safe? What does the site do with my address?
Checking is read-only. Paste any address — the page queries public blockchain endpoints directly from your browser and renders the result. There is no backend; nothing is stored or sent anywhere else. An address is public information, and this site will never ask for your private key or seed phrase. Anyone who does is scamming you.
Revoking is optional and works like any dapp: connect a browser wallet and this page proposes plain revocation transactions (set allowance to 0, set approval to false). Your wallet shows you each transaction and nothing is signed or sent until you confirm it there — the key never leaves your wallet. Prefer not to trust a hosted site? Fork the open-source repo and deploy your own copy, run it locally, or use the bundled revoke.html (a single dependency-free file) or the revoke.ts script.
Settings — Etherscan API key (using this site’s shared key)
Full approval history comes from the Etherscan multichain API. A free key covers every chain in the main row above (Avalanche works keyless via Routescan); Base, OP Mainnet and BNB Smart Chain are only served on Etherscan’s paid plans. This deployment ships a shared free key, so scanning works out of the box — add your own if it hits rate limits.
The key stays in your browser’s localStorage and is sent only to the Etherscan API.