Перейти к основному контенту

Account and wallet migration guide

This guide details the process of transferring the contents of all the accounts in your wallet(s) to a new wallet derived from a different Secret Recovery Phrase. You may be looking for instructions on how to perform "key migration", or you may have been told your SRP has been compromised. Maybe you have seen some unauthorized transactions in your accounts, or suspect someone has access to your wallet.

Whatever the reason, this guide is for those who want to move all their crypto assets to new, safe, accounts.

If you're in a hurry, and need to get started now, follow the steps below. We recommend reaching out to MetaMask Support for guidance through the process.

There is a lot of background information that can help you understand what's going on. If you get confused during the process, or would rather understand before proceeding, read the in-depth information further down in this article.

How to migrate your cryptoassets to new accounts and Secret Recovery Phrases

First, you need to know whether you connected your MetaMask to your Google or Apple account, or if you access your MetaMask via your Secret Recovery Phrase. The two options have distinct processes, so make sure you know which one you are using before proceeding. If you need help, contact MetaMask Support by clicking the conversation button at the bottom righthand of this page.

If you connected your MetaMask to your Google or Apple account, and want to move your cryptoassets to a completely new, separate wallet, then you need to create a brand new instance of MetaMask that is not connected to the original Google or Apple account.

Why not?

Good question. If you suspect your MetaMask, Google/Apple account, or hardware has been compromised,you need to create new SRPs and private keys that are in no way associated with your old accounts.

If you suspect a specific SRP has been compromised, or simply want to "rotate your keys", you may be able to continue using the same Google/Apple account, but you should contact MetaMask Support for guidance on your particular situation.

Your old wallets and accounts are all tied to that Google or Apple account, and there is no way to disconnect them. You cannot just create a new wallet or account in the same MetaMask Extension or Mobile app, because that wallet would automatically be connected to the original Google or Apple account.

If you like having a Google or Apple account connected to your MetaMask, you can choose a new account to connect. Keep reading for next steps.

Step One: Ensure a safe environment#

In order to keep your new wallet safe, you need to be in a safe situation.

This means:

  • You are not being physically observed
  • Your system is free from malware or spyware
  • You have a secure medium on which to record your new SRP/password
  • You are not being directed to do this by a person you don't trust
  • You are not doing this under duress
  • Traffic on your Internet connection is not being monitored
    • Hint: a VPN connection under such circumstances can be very helpful!

Step Two: Create a new wallet#

This is easily done using MetaMask.

  1. You need to open a new instance of MetaMask. You can do so by creating a new browser profile, downloading MetaMask Mobile (if you only use Extension) or downloading MetaMask Extension (if you only use Mobile).
  • For guidance on creating a new browser profile, visit your browser's support page.
  1. If using MetaMask Extension, navigate to https://metamask.io/download/ (type in the address: don't click on a web search result).
    1. Alternatively, find MetaMask in the Android (https://play.google.com/store/apps/details?id=io.metamask) or iOS (https://apps.apple.com/us/app/metamask-blockchain-wallet/id1438144202) stores.
  2. Install the extension or application, and decide if you want to connect a new Google or Apple account to your new wallet, or if you want to write down your new Secret Recovery Phrase. If you choose to connect a Google or Apple account, make sure it's a different account than the one you connected your old wallet to, and create a brand new password for your new wallet.
  3. Write down your new password and Secret Recovery Phrase, and keep them somewhere safe.

Step Three: Get a safe address to send your tokens to#

  1. Follow the instructions here to copy the public address of the default account generated by your new SRP.
  2. Have that address at hand on the device that has the "original" SRP; it might help to open it in Etherscan, or you could hold it in a synced note, because it's a public address--you should never, ever, ever put an SRP in a cloud-synced note app.

Note: You can generate as many accounts as you want in your new wallet, and divide up your tokens however you wish among them. Also, if you have a hardware wallet on hand, now would be a convenient time to transfer assets to an address generated by an SRP that is only present on your hardware wallet.

Step Four: Transfer your stuff#

This part of the process will vary depending on your specific situation. You may need to do some reading below.

The process is currently manual: you will be sending all of your assets to the new address(es), one transaction at a time. If you're unfamiliar with sending assets, see here.

Your network gas tokens (ETH, POL (previously MATIC), etc.) should be the LAST THING YOU TRANSFER. Otherwise, you'll have no way to pay for the transfer fees of your other assets.

  1. Start with NFTs
    1. NFTS are likely to be the most expensive to transfer, so start with these. Currently, you can use MetaMask Mobile to transfer them; also, you can use OpenSea's transfer function.
      1. Keep in mind: if your account has been compromised, then adding more of the network's gas token to your account in order to transfer assets out of it may result in the new gas token balance being "swept out" before you can take any actions. If this is the case, see here.
  2. Move on to other ERC-20 tokens
  3. Gas Tokens: First in, Last out. Depending on the contents of your accounts and the network you're on, you may use a significant amount of the network gas token--so don't send it away while you still need it!
    1. Remember, ETH isn't technically an ERC-20 token, so automated ERC-20 sweeping tools may not automatically include balances of ETH.

Note: If you transferred an ENS name to your new address, and you use that ENS name to receive cryptoassets, make sure you update the routing information in the ENS app so that assets routed to that ETH name go to the new address, and not the old one!

Background information on SRPs and account migration

To transfer assets from one account to another, you will need to pay some gas fees, as these transactions are occurring on-chain. Depending on the amount you own in assets and the contracts storing or managing those assets, this can become costly.

You can use previous gas data to try to determine when is generally the best time to do these transactions so you are not overpaying, and you can broadcast the signed transactions with a lower gas price to see if they get included in a block sometime soon.

An important step you should take before you begin is to write down your assets in priority order so you are aware of what you are moving and can account for all variables (ie: token lockups, contract-backed taxes on transferring assets).

Some of the assets you may need to transfer ownership of are:

  • ERC-20 tokens
  • NFTs (ERC-721, ERC-1155)
  • Liquidity provider positions
  • Ownerships on smart contracts (i.e.: gnosis-safe)

As most assets on-chain make use of a standard interface for each type of asset (for the most part), it doesn’t need to be too complicated to move assets.

What assets do I have?

Over time you can come into ownership of various assets under your address and you might lose track of which assets you have. Below are some tools you can use to get a list of assets you own.

MetaMask

You can make use of the MetaMask interface to see which assets you have, especially if you’ve imported custom tokens.

You can see an expanded view of your account by clicking the hamburger icon (☰) in the top right and choosing the “Expand view” option.

MetaMask extension locate expand view menu

MetaMask Portfolio Dapp

If you want a more complete overview, MetaMask Portfolio will automatically detect and display most common assets. Check out its NFT tab, which shows a very complete listing of NFT-type tokens held by your accounts.

MetaMask Portfolio NFT tab example

Marketplaces

Various marketplaces such as OpenSea and LooksRare index your NFT assets on your profile page. You can see your assets on these marketplaces and evaluate which NFTs are a priority. Also, if for some reason you can't transfer an NFT from within MetaMask, you can use the tools on these platforms.

Indexers

You can make use of a blockchain indexer/block explorer to see your address and related transactions.

Keep in mind that in today's multi-chain world, you'll want to look at your address on multiple chains. Blockscan has a handy tool for this; paste the public address in question into the search bar here, and you'll be provided with links to block explorers on all chains on which the account has been active.

Aggregators

There are many different aggregators that index the blockchain to build a database of what assets an address holds - including assets in lockup and liquidity positions. The MetaMask Portfolio Dapp, mentioned above, fulfils exactly this function (and more!). Some alternatives include:

You'll notice, if you've gotten involved broadly in DeFi, that no one aggregator has everything. In order to be sure that you've "exited all your positions", it may help to visit several tools and see if there's anything you've missed.

Contract Tools

Some tools are available to help you semi-automate the finding of what contracts you have created which could have the Ownable pattern (or another similar pattern) for you to transfer ownership, as well as tools to help to search known contract function signatures.

What tools can I use to move assets?

Please note: These tools may not currently be functional. We are in the process of sourcing a tool that is up-to-date and functional. Additionally, we are providing you links to these tools as a point of reference, and this is in no way endorsement from MetaMask or Consensys. Before using any of these tools, please familiarize yourself with their README files.

409H/eoa-migrator (https://github.com/409H/eoa-migrator)

This tool offers an interface to help you step through the process of migrating funds and discovering different asset types on your address. It is strict in that for you to access the tool, you will need to confirm ownership of the keys you are transferring the assets to.

409H_eoa-migrator_tool

svanas/migratooor (https://github.com/svanas/migratooor)

Written in Pascal, this tool offers a user interface to migrate funds from one address to another. It does provide compile instructions and offers you an executable to download in the releases.

migratooor_tool

Eth-sweep (https://github.com/James-Sangalli/eth-sweep)

Written in JavaScript, eth-sweep allows you to sweep your tokens by transfer to a safe address, swap them for ETH, or migrate tokens to L2.

Eth-sweep_tool

Flashbots Whitehat (http://whitehat.flashbots.net)

If you believe your address is compromised and bad actors are watching the txpool to frontrun any transactions you may make with these tools, you can open a case with the Flashbots Whitehat team to help you create transaction bundles to skip the txpool.

Need help with any of this?

If you're looking to migrate your assets to a new wallet and need advice or assistance, we’re here to help. If you need help using one of the specific tools we’ve listed above, it is recommended that you reach out to the maintainers of that tool first, but you are still welcome to contact MetaMask Support.

As always, please keep your Secret Recovery Phrase safe. It is for your eyes and your eyes alone, and when you ask for help in various places there may be bad actors waiting to reach out to you and attempt to steal your funds.

Was this helpful?
Connect MetaMask to provide feedback
What is this?
This is a trial feedback system that uses Verax to record your feedback as onchain attestations on Linea Mainnet. When you vote, submit a transaction in your wallet.