Gas fee is not charged by imToken. Instead, it is paid to miners or validators on a blockchain for encouraging them to pack transactions and maintain the security and stability of the network. The gas fee can also be understood as the transaction fee on the network, similar to the transfer fee in our daily life.

This article will explain why we need to pay gas fees for failed transactions on the Ethereum mainnet.

Why did I have to pay gas fees for a failed transaction?

On the Ethereum mainnet, when you send tokens or interact with smart contracts, fees are required since these operations will take computational resources of the Ethereum network. The fee is calculated in Gas and settled in ETH in the end (Click here to check out how gas fee is calculated in detail).

So you need to pay for the computational resources regardless of your transaction status. This is because the resources have been consumed for validators validating and executing the transaction.

Please find out the reason for your failed transaction. And transfer again after fixing the problem to make sure the new transaction can succeed.

Common reasons for a failed transaction

When a transaction failure occurs, you can click "Query Details" on the transaction detail page to enter Etherscan. The reason for the failure is shown in Status. There are two common reasons for a failed transaction:

Out of Gas

The Gas Limit you set is too low, and the required gas for the transaction to be fully processed by validators exceeds the Gas Limit, leading to an Out of Gas error.

In this case, you can try initiating a new transfer with a higher Gas Limit value. You can also look up the latest transaction records on Etherscan and refer to successful transactions to set an appropriate Gas Limit.

Bad Instruction or Reverted

Here are the common reasons for a Bad Instruction of Reverted transaction:

  • The token is locked up by the project team.
  • A blacklist is set by the project team.
  • The transfer function of the token is disabled by the project team.

In this case, please reach out to the project team of the token to consult the specific reason for the transfer failure.