Before You Start
Make sure you have:
- Your source wallet (the one you want to migrate from) available in MetaMask or a WalletConnect-compatible wallet
- Your destination wallet address (the address you are moving assets to) — this does not need to be connected, just the address
- Enough native token (ETH, MATIC, etc.) on the source wallet for gas fees
- A stable internet connection — do not interrupt a migration mid-session
Step 1: Connect Your Source Wallet
Open MovingWallet and click Connect Wallet. Choose MetaMask or use WalletConnect to connect any compatible wallet (Ledger, Trezor, Rainbow, etc.).
You will be prompted to sign a message to verify ownership. This is a read-only signature — no tokens are moved at this stage.
Step 2: Asset Detection
Once connected, MovingWallet scans your wallet across all supported chains. Detection typically takes 10–30 seconds depending on the number of chains and tokens.
After detection, you will see:
- Native balances (ETH, MATIC, etc.) per chain
- ERC-20 token holdings
- NFTs (ERC-721 and ERC-1155)
- Flagged DeFi positions (Aave, LP tokens, etc.)
Review the detected assets. If anything looks incorrect, you can exclude specific assets before proceeding.
Step 3: Specify Your Destination
Enter the destination wallet address. MovingWallet validates the address format and checksum. Double-check this address carefully — transactions sent to the wrong address are irreversible.
If you are migrating to a new hardware wallet, make sure you have already set up the hardware wallet and have access to its address before starting.
Step 4: Review the Migration Plan
MovingWallet generates a step-by-step plan. Each step shows:
- Which asset is being moved
- Source chain and destination chain
- Transaction type (direct transfer, bridge, swap)
- Estimated gas cost
- Estimated wait time (relevant for bridge steps)
The plan is sequenced to avoid gas issues — native token transfers are scheduled after all other assets are moved, and a gas reserve is calculated automatically.
Step 5: Run Simulation
Before signing anything, click Simulate to run a full simulation of every step in the plan. The simulation shows:
- Expected token balances after each step
- Any steps that would fail (insufficient balance, slippage too high, etc.)
- Total estimated gas cost across all steps
If any simulation step fails, it is flagged with a reason. You can adjust the plan (exclude the failing step or adjust parameters) and re-simulate.
Step 6: Execute the Plan
Once you are satisfied with the simulation results, start execution. For each step, you will be prompted to sign a transaction in your wallet.
Important: Each transaction requires your explicit signature. Nothing is submitted automatically. You can pause between steps.
For bridge steps, you sign the deposit transaction. The bridge will then process the transfer — this can take anywhere from a few minutes (third-party bridges) to several hours (native L2 bridges with challenge periods).
Step 7: Verify Completion
After all steps are complete, MovingWallet shows a summary of what moved and what is now in your destination wallet. You can also verify independently by checking the destination address on any block explorer (Etherscan, Polygonscan, etc.).
Common Issues
Not enough gas for all steps: Keep some native token on the source wallet beyond what MovingWallet estimates. Gas prices fluctuate.
Bridge taking longer than expected: Bridge wait times are estimates. Optimistic rollup withdrawals (Arbitrum, Optimism native bridge) have mandatory 7-day challenge periods — use third-party bridges (Hop, Across) for faster finality.
DeFi positions flagged but not migrated: Staked positions, LP tokens, and lending positions require manual withdrawal before they can be transferred. MovingWallet flags these but cannot withdraw them automatically in this version.
After Migration
- Verify all assets have arrived at the destination
- Keep the source wallet seed phrase safely stored — do not discard it
- The source wallet address still exists on-chain and can receive future transactions
- Export the migration audit log from MovingWallet for your records