Skip to main content
This page is for people who hold CELO and want to use MetaMask on Celo, and for app developers whose users connect with MetaMask. MetaMask is a crypto wallet that can be used in a web browser and on mobile devices to interact with the Ethereum blockchain. Many apps integrate with MetaMask. Celo supports Ethereum-compatible transactions, added in the Donut hard fork in May 2021. Users can use MetaMask on Celo, and app developers can port Ethereum apps to Celo.
Do not send ETH to your Celo address. Do not send CELO assets to your Ethereum address. Always make sure that you are connected to the correct network.

How to use MetaMask with Celo

For end users

For developers

Things to keep in mind

MetaMask does not natively support Celo compatibility and some features won’t work perfectly. Here are some things to be aware of when using MetaMask with Celo.

Private key import

Celo and Ethereum use different derivation paths for generating seed phrases. Because MetaMask does not let you specify a derivation path to use:
  • You can’t import an existing Celo account into the MetaMask wallet using its seed phrase, as you’d get the Ethereum version of it. Instead, you have to import it using the associated private key.
  • If you want to import the Celo account you made on MetaMask to a different Celo wallet (e.g. Valora), you’d have to import it using the private key itself, NOT the seed phrase that MetaMask gives you.
  • See this guide if you would like to Import a Valora Account to MetaMask with a Private Key

Gas fees require CELO

While gas on Celo can usually be paid in many different currencies, when using MetaMask, gas fees will automatically be paid in CELO. This is because MetaMask will be using the Ethereum-compatible Celo transaction format, which doesn’t include the feeCurrency field. In some cases, the MetaMask UI may display the Ethereum logo in places where it should display a CELO logo or no logo at all.
MetaMask is primarily used for interacting with the Ethereum blockchain and does not natively support Celo compatibility. Alternatively, you may choose one of the native wallets on Wallets for users.
  • Programmatic Setup - add Celo to MetaMask from your app with wallet_addEthereumChain
  • Wallets for users - Celo native wallets and the other wallets that work with Celo
  • Network information - chain IDs, RPC URLs and the add-network buttons for Celo Mainnet and Celo Sepolia