A MetaMask token approval lets a smart contract move a specified token from your wallet up to an authorized amount. Disconnecting a website does not remove that onchain allowance. To stop future transfers under a traditional approval, you must submit a revocation transaction on the same network—or use the appropriate permission-management process for a signature-based system such as Permit2.
Last reviewed: September 2, 2026. MetaMask interfaces, supported networks and permission standards can change. Confirm current details in the official MetaMask application and Help Center before signing. This independent guide is educational and is not financial advice.
What is a MetaMask token approval?
Most ERC-20 tokens cannot be taken from a self-custody wallet by a dapp merely because the wallet is connected. Before a decentralized exchange, lending market, staking app or other smart contract can transfer a token, the wallet owner usually authorizes a spender contract.
The approval records an allowance on the token contract. It identifies:
- the wallet account granting permission;
- the exact token contract;
- the spender contract allowed to use the token;
- the maximum amount the spender can transfer;
- the blockchain network where the permission exists.
An allowance is specific. Approval for USDC does not authorize the same spender to move USDT, and an Ethereum approval does not automatically exist on Base or BNB Chain. However, one unlimited USDC approval can expose the current and future USDC balance in that account while the allowance remains active.
Why do dapps request token approvals?
A smart contract needs permission before it can perform an action that pulls tokens from the user. Common examples include:
- swapping a token on a decentralized exchange;
- depositing assets into a lending protocol;
- adding liquidity to a pool;
- staking an ERC-20 token;
- paying through a contract-based service;
- listing or transferring supported NFTs through a marketplace.
The approval is often the first of two steps. The user authorizes the spender, then confirms the actual deposit, swap or other transaction. Seeing a successful approval in a block explorer does not mean the intended swap also completed.
Spending cap vs unlimited approval
A limited spending cap authorizes a defined quantity. If a dapp needs 100 USDC, approving 100 USDC limits that allowance to the required amount. An unlimited approval uses a very large maximum so the dapp can perform future transactions without requesting another approval each time.
Unlimited allowances reduce repeated gas costs and confirmation prompts. The trade-off is persistent exposure: if the spender contract is malicious, compromised or incorrectly upgradeable, it may be able to move the token without asking for a new approval.
MetaMask allows users to edit the proposed spending cap. Depending on the interface, the choices can include a custom value, the current wallet balance or the amount suggested by the site. Before confirming, compare the cap with the intended action and verify the spender address.
Connecting, disconnecting and revoking are different
These actions are frequently confused:
- Connecting a wallet: shares the selected public address and lets the dapp read public blockchain data and request actions.
- Disconnecting a dapp: removes the site’s active connection or account visibility in MetaMask.
- Token approval: creates an onchain allowance for a spender contract.
- Revocation: changes that allowance—normally to zero—through another onchain transaction.
Disconnecting can stop a site from conveniently displaying the account or opening new prompts, but it does not alter the token contract. An old allowance can remain valid long after the browser session ends, the website is closed or MetaMask is reinstalled.
How to check approvals in MetaMask Portfolio
MetaMask Portfolio includes a Spending Caps view for supported networks. At the time of review, the current Help Center lists Ethereum Mainnet, Polygon, BNB Chain, Optimism and Base.
- Open MetaMask Portfolio through an official MetaMask link or trusted bookmark.
- Connect the account you want to audit.
- Open the Spending Caps section.
- Select the correct blockchain network.
- Review each token, spender and remaining allowance.
- Identify permissions that are unused, unlimited, unfamiliar or connected to retired dapps.
- Select Revoke for the permission you intend to remove.
- Review the network, token and gas estimate in MetaMask before confirming.
- Wait for confirmation and refresh the allowance record.
A Portfolio list can be limited by its supported networks and permission types. Absence from that page is not proof that no approval exists elsewhere. Check each network where the wallet has used dapps.
How to revoke a MetaMask token approval
A traditional ERC-20 revocation usually sends a new transaction to the token contract setting the spender’s allowance to zero. It must be submitted from the same account on the same network as the original approval.
Before signing a revoke transaction, confirm:
- the connected account matches the approval owner;
- the selected network is correct;
- the token contract is authentic;
- the spender being revoked is the intended contract;
- the action changes the allowance rather than transferring tokens;
- the gas fee is paid in the network’s native asset.
After confirmation, inspect the transaction in the relevant block explorer. The current allowance should show zero or the lower value selected. Revoking one spender does not affect other spenders approved for the same token.
Why does revoking an approval cost gas?
A legacy token allowance is blockchain state. Changing it requires validators or sequencers to process another transaction, so the wallet pays a network fee. MetaMask does not receive the base network fee merely because its interface submits the revoke.
Each network has its own gas asset. Ethereum, Base, Optimism and many EVM networks use ETH, while BNB Chain uses BNB and Polygon uses POL. The required asset must exist on the exact network where the approval is being changed.
Gas cost can exceed the value protected by a very small token balance. Still, an unlimited allowance can also expose tokens added later. Evaluate the current and potential future exposure, not only the present balance.
Using a block explorer approval checker
When MetaMask Portfolio does not support a network or permission, the network’s reputable block explorer may provide a token-approval checker. Examples include Etherscan, BscScan and PolygonScan for their respective networks.
Start from the explorer’s verified domain, paste only the public wallet address and inspect the spender contracts. A legitimate checker does not need the Secret Recovery Phrase or private key. Connecting a wallet should be necessary only when signing the selected revocation.
Third-party tools such as Revoke.cash can aggregate permissions across multiple networks and permission types. They can be useful, but they remain external dapps. Verify the domain, understand the transaction and reject unexpected signature or approval requests.
How to evaluate an approval before revoking it
A long hexadecimal spender address is not meaningful by itself. Investigate:
- which transaction originally created the approval;
- the dapp used at that time;
- whether the spender is verified in a block explorer;
- whether official protocol documentation publishes the same address;
- the approved amount and remaining allowance;
- whether the protocol is still used;
- whether any exploit, migration or deprecation has been announced.
Do not revoke a random contract solely because its name is unfamiliar without checking the original transaction. Revocation is generally safe for wallet custody, but it can interrupt automated payments, active strategies or future dapp actions and require another approval later.
Permit and Permit2 approvals
Traditional ERC-20 approvals are onchain transactions. Permit-style systems can use an offchain signature to authorize token use. Because signing a message does not necessarily spend gas or immediately appear as a token transfer, a dangerous request may look less serious than a transaction.
Permit2, deployed by Uniswap Labs and integrated by multiple DeFi applications, separates two permission layers:
- the token owner gives the Permit2 contract an onchain allowance;
- individual dapp actions use signed messages specifying a spender, token, amount and deadline.
Deadlines and nonces can reduce stale-permission risk, but signature phishing becomes important. A malicious site can request a Permit2 typed-data signature authorizing a large transfer and use it later within its validity period.
Read every signature screen. If a message shows a token, spender, amount or deadline, treat it as financial authorization—not a harmless login. Managing Permit2 exposure may require checking both the underlying allowance to Permit2 and outstanding signature permissions through a compatible permission tool.
Traditional approvals vs Advanced Permissions
MetaMask Advanced Permissions use ERC-7715 with supported smart-account capabilities. They can restrict access by amount, frequency, duration and other conditions, enabling use cases such as subscriptions or recurring strategies.
These permissions are newer and appear only in compatible dapps. They do not automatically replace every existing ERC-20 allowance. Review the human-readable scope, expiration and ability to revoke. A time-bound permission can reduce indefinite exposure, but the authorized activity can still be risky within its approved limits.
What to do after signing a suspicious approval
Act quickly but verify every step:
- Stop interacting with the suspicious site. Do not follow its recovery instructions.
- Record the account and network. Approvals are network-specific.
- Inspect recent activity. Identify the token, spender, amount and transaction or signature.
- Revoke the permission. Use MetaMask Portfolio, a trusted explorer or an established permission tool.
- Check Permit2 and NFT permissions. A standard ERC-20 list may not show every authorization type.
- Move assets when immediate risk remains. Use a new account with a separately secured recovery setup.
- Preserve gas assets. The affected account needs enough gas to revoke or transfer.
- Review other networks. The same phishing session may have requested several signatures.
Revocation cannot reverse an already completed transfer. If tokens have been moved onchain, MetaMask or a revocation service cannot retrieve them. Be skeptical of anyone promising guaranteed recovery for an upfront fee.
Does an approval expose every asset?
A standard ERC-20 allowance applies to one token contract, not every token in the wallet. It does not directly authorize spending native ETH because ETH is not an ERC-20 token. Wrapped ETH, however, is an ERC-20 token and can be exposed through a WETH approval.
NFT standards use their own approval mechanisms, including permissions for individual tokens or an operator across a collection. Audit NFT approvals separately when the account holds valuable NFTs or has interacted with marketplaces.
Does hiding a token revoke its allowance?
No. Hiding or removing a token from the MetaMask interface changes only what the wallet displays. It does not move the asset, delete the balance or modify onchain allowances. Likewise, adding a token back does not create a new approval.
Use a permission-management interface or token-contract transaction when the goal is to change spender authority.
How often should you review MetaMask approvals?
There is no universal schedule. A monthly or quarterly review can be reasonable for an active DeFi account, while an audit should also follow:
- interaction with a new or experimental dapp;
- a protocol exploit or contract migration;
- signing an unexpected message;
- using a wallet on a phishing-like domain;
- ending a staking, lending or liquidity position;
- moving long-term holdings into an account previously used for DeFi.
Account separation can reduce exposure. Keeping long-term holdings in an account that does not routinely approve dapps limits the assets reachable through old permissions in an active wallet.
MetaMask approval security checklist
- Verify the dapp domain before connecting.
- Read the token, spender and amount.
- Prefer a limited spending cap when practical.
- Do not treat “Sign” as automatically harmless.
- Inspect Permit2 amount and deadline details.
- Enable MetaMask security alerts, understanding they are warnings rather than guarantees.
- Review every active network separately.
- Revoke unused permissions after completing a strategy.
- Never enter the Secret Recovery Phrase into a revoke website.
- Keep enough native gas token for emergency transactions.
Frequently asked questions
How do I revoke token approval in MetaMask?
Connect the correct account to MetaMask Portfolio, open Spending Caps, choose the network and approval, then submit the revoke transaction. For unsupported networks, use a reputable block explorer or established permission checker.
Is disconnecting a dapp the same as revoking approval?
No. Disconnecting removes the site’s wallet connection, while revoking changes the token allowance recorded onchain.
Can I revoke a MetaMask approval without gas?
A traditional onchain allowance normally requires a gas-paying transaction to change it. Signature-based permissions can follow different management rules, but never assume that closing a site invalidates them.
Should I revoke every unlimited approval?
Review each one based on contract trust, current use and token exposure. Unused or unfamiliar unlimited permissions are strong candidates for revocation.
Will revoking an approval recover stolen tokens?
No. It prevents future transfers under that permission but cannot reverse transactions already confirmed on the blockchain.
Why is a dapp still connected after I revoke approval?
Connection and allowance are separate permissions. Disconnect the dapp separately if you also want to remove its active account connection.
Can one approval access all my MetaMask accounts?
No. Approvals are tied to the account that granted them. Other accounts have separate addresses and allowances, although users can accidentally approve the same spender from several accounts.
Is Permit2 safe?
Permit2 adds deadlines and reusable infrastructure but introduces signature-phishing risk. Safety depends on verifying the site, spender, token, amount and expiration before signing.
Final takeaway
MetaMask token approvals are necessary for many DeFi actions, but they can remain active longer than the interaction that created them. Disconnecting a dapp or hiding a token does not remove an allowance. Audit every relevant network, limit new spending caps and revoke permissions that no longer have a clear purpose.
For current instructions, consult MetaMask’s official guides to revoking token approvals, customizing spending caps and Permit2 and approval risks.