Fee Tier Migrator
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Fee Tier Migrator connects to any EVM-based concentrated liquidity position manager (such as Uniswap V3's NonfungiblePositionManager) and enables you to migrate a liquidity position from one fee tier to another. The tool reads comprehensive position state including the current fee tier, liquidity amount, token pair addresses, position NFT ID, pool address, tick range, accumulated fees, position value, and position status (active, inactive, migrated, closed). It then displays the current fee tier alongside the target fee tier you select, shows key position metrics, and enables a one-click migration transaction when the position is active. The tool handles multiple migration function signatures (migratePosition, moveLiquidity, rebalanceFeeTier) and automatically detects the correct function to call. After submission, the tool displays the transaction hash and refreshes the position data to show the updated status. This is ideal for liquidity providers who want to optimize their fee tier selection based on changing market conditions, volatility, or trading volume.
HOW TO USE
Connect your Web3 wallet (MetaMask, WalletConnect, or any EIP-1193 provider). Select the correct network for your position manager contract — the tool supports Ethereum, Polygon, Arbitrum, Optimism, Base, Avalanche C-Chain, and BNB Chain. Paste your position manager contract address (e.g., the Uniswap V3 NonfungiblePositionManager) into the input field. Enter your position NFT ID — the unique identifier for your liquidity position. Select the target fee tier you want to migrate to (0.01%, 0.05%, 0.30%, or 1.00%). The tool reads the contract using a default ABI that covers standard position manager functions, but you can paste a custom ABI if your contract uses non-standard naming. Review the displayed data carefully: position ID, pool address, current fee tier, target fee tier, liquidity amount, accumulated fees, and position status. When the position is active and has liquidity, the "Migrate fee tier" button becomes enabled. Click it to submit the migration transaction — the tool will show a confirmation dialog with all details, submit the transaction, and wait for confirmation. After successful execution, the position data refreshes automatically to show the updated fee tier.
THE REAL MECHANISM
This tool does not assume a single position manager interface — it adapts to the contract's actual implementation. It first detects the correct migration function by testing common names (migratePosition, moveLiquidity, rebalanceFeeTier) through static calls with your position ID, falling back to the user-provided name if none are found. For position data, the tool calls getPositionInfo(positionId) which returns a tuple containing the pool address, current fee tier, liquidity amount, and accumulated fees. It also calls positionStatus(positionId) to verify the position is active (status 0). The tool compares the current fee tier against your selected target fee tier and displays both clearly. When you execute the migration, the tool calls the detected migration function with your position ID, which triggers the position manager to withdraw liquidity from the current pool, move it to the target fee tier pool, and update the position NFT metadata. The tool uses the wallet's signer to broadcast the transaction and monitors the receipt for confirmation. All transaction parameters are estimated using eth_estimateGas and sent with the wallet's preferred gas strategy. The tool monitors the transaction receipt and extracts the effectiveGasPrice to display actual gas cost, not the cap. After migration, the tool refreshes the position data to show the updated status.
WHAT IT CANNOT SEE
Fee Tier Migrator cannot verify that the target fee tier is optimal for the current market conditions, trading volume, or volatility. It cannot detect if the migration will result in worse returns, lower fees, or increased impermanent loss. It cannot guarantee that the migration will execute without slippage or that the position will be correctly recreated in the target tier. It cannot ensure that the position NFT will be safely transferred or that the liquidity will be properly attributed. It cannot prevent front-running during the migration transaction. It cannot recover assets if the migration transaction fails due to contract bugs, out-of-gas errors, or network conditions. It cannot verify that the pool has sufficient liquidity in the target tier to accommodate your position. It cannot predict the optimal fee tier selection based on historical data or market analysis. It cannot detect if the position manager contract has been upgraded or modified to change migration behavior. It cannot verify that the position ID corresponds to a position you actually own.
PLEASE NOTE — EVM CHAINS ONLY
This tool works exclusively with EVM-compatible blockchains. Non-EVM chains are not supported. The tool does not deploy contracts, manage private keys, or sign anything outside the connected wallet's secure environment. It is a read-and-execute interface that relies entirely on the position manager contract's implementation and the migration logic defined therein. Always verify the position ID, current fee tier, and target fee tier directly on-chain before executing a migration.