Say I have the following:

  • Address A belongs to me and holds 10 ERC20 tokens, but does not hold any ETH
  • Address B belongs to somebody else and I need to send 10 ERC20 tokens there from address A
  • Address C belongs to me and holds 1 ETH. Address A did not approve address C to spend any tokens on its behalf.

Is it possible to transfer these 10 ERC20 tokens from address A to address B by somehow using multiple signatures? What I was hoping for is to initiate a transaction from address C (since it holds ETH to pay for gas) or make address C initiate a transaction on behalf of address A. Or maybe there's a smarter way to transfer ERC20 tokens from an address that never held any ETH?


  • Is A a multisig wallet or a regular account?
    – Ismael
    Jul 12, 2018 at 14:47
  • address A may be anything. I'm just trying to figure out how token withdraws should work for a system where I have addresses that hold only tokens and addresses that hold only ETH Jul 12, 2018 at 14:59

2 Answers 2


If A is an external owned account and you want to transfer tokens then you have two options:

  • Make tokens transfer: you need to pay for the transfer transaction.
  • Approve a third party for the transfer: you need to pay for the approve transaction.

If A is a contract then it doesn't need to have a non zero balance, since the user executing the contract will be paying for the transaction.

  • 1
    Well, I was hoping I would be able to transfer tokens from A without ever sending any ETH to A and fund transactions from C. Address B spending any ETH to receive tokens isn't an option either... Jul 13, 2018 at 7:59

To add on to the other answers, the only way to send tokens from a wallet without spending any gas is if the token has gasless transfer functinoality, like this

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.