Skip to main content

How to manage spending caps in MetaMask Portfolio

Does this article need to be translated?

Contribute to the Help Center

Submit translations, corrections, and suggestions on GitHub, or reach out on our Community forums.

You can view and revoke spending caps (also known as token approvals or allowances) in MetaMask Portfolio.

Currently supported networks include:

  • Ethereum mainnet
  • Polygon
  • BNB Chain
  • Optimism
  • Base

What is a spending cap?

Spending caps are permissions that you sign to indicate consent for a dapp to access a given number of a specific token type. Usually, this is because you're interacting with a dapp that involves an operation like depositing, sending, staking, etc. — all of which require tokens to be moved from your account and, generally, to a smart contract or another externally owned account (just like yours). You can read a more in-depth explainer of spending caps here. (Note that you don't need to sign spending caps for ETH — only ERC-20 and ERC-777 tokens require them.)

Once a spending cap transaction is signed, its existence is recorded on the blockchain, meaning it will be valid until you sign another transaction that revokes it. Each spending cap limits how many tokens of that type the dapp can access. For example, if you signed a spending cap of 1,000 USDC, you could order the dapp to use up to 1,000 USDC tokens in one transaction or many — either way, the permission is valid until you've used up this allowance.

unlimited spending caps

When you sign a token spending cap in MetaMask, you're prompted to specify how many of the tokens you want to allow access to. You can read more about the process here. Dapps often request a default value, which in many cases is so large it essentially permits unlimited access. Unlimited spending caps are dangerous — signing one to a fraudulent dapp, or a legitimate dapp that is hacked, can result in all of a certain token type being drained from your wallet without you being aware.

How to view and revoke spending caps

  1. Head to MetaMask Portfolio and make sure your wallet is connected.

  2. On the 'Overview' tab, switch to the 'Spending Caps' tab:

MetaMask Portfolio spending caps tab

  1. You should now see any spending caps on your account(s).

  2. To revoke a spending cap, click the revoke button next to it:

MetaMask Portfolio revoke token allowance button

  1. Submit the transaction in MetaMask. Since revocation requires submitting a transaction to the network, you will need pay gas fees to revoke a spending cap.