There are a couple of reasons why you might not be able to transfer your DOT. In this article, we examine the most common of them, but if you encounter a situation not covered by this article or have any questions, feel free to ask our AI chatbot or contact us.


Locked and Reserved DOT

Your account can have different types of balances, more specifically, transferable, locked, and reserved. Only transferable balance can be sent out of your account. Your locked and reserved balance can't be moved. But it can be made transferable if or when the locks are removed or the reasons for the reserves cease to exist. To learn more about the different types of balance, please check this article, and to learn how to remove locks and make your balance transferable, please watch the video at the end of the article.

To check your account's different types of balance, go to the Accounts page on Polkadot-JS UI and click on the little down arrow to the right of your account.

When you try to send an amount of DOT, make sure that it does not exceed your transferable balance (including fees); otherwise, the error 'balances.InsufficientFunds' will occur.

Transaction Fees

Every transaction requires a transaction fee to be paid. It can be paid only from the transferable 

balance. If you want to transfer out your entire transferable balance (or very close to it), the transaction fees must be considered and subtracted from the amount being transferred.

Thankfully, there is an extrinsic called 'balances.transferAll' specifically for that purpose that handles all of this automatically. To learn how to send out all your transferable balance, please check this article.

Error: 'balances.KeepAlive'

An account must have a balance of at least 1 DOT to be active on the Polkadot network. This is known as the Existential Deposit (ED). If your account's balance ever drops below the ED, the account will be reaped (deactivated), and any remaining balance will be lost!

To prevent this from happening, all transfers on Polkadot-JS UI are, by default, made with the "keep alive" protection enabled. So, if you try to send out enough funds to drop your balance below 1 DOT, you will receive this error, and the transaction will fail. To deactivate this and transfer out your entire balance, check the article in the previous section.

Error: 'balances.ExistentialDeposit'

Because for an account to exist on-chain, it needs to have at least 1 DOT as balance, if you try to send less than 1 DOT to an account with no balance, the transaction will fail with this error. To remedy this, simply send more than 1 DOT to the account, but also check this article for more information, especially if you are sending to an exchange.

In the following video, we dive a little deeper into the various locks that can exist on your balance and how to remove them to make your balance transferable again.