I've recently found that the value of token transfers are in 10^18 hex value.

For example, in this event, the hex value of the token transfer is 00000000000000000000000000000000000000000000000ad62b76e268960000 converted to decimal is 199900000000000000000. However, the token transfer value should be 199.9 according to here. Therefore, the original number was divided by 10^18.

I found it is the same case for other tokens EOS, QTUM and ICONOMI. Therefore I assume that it is common for Ethereum. I was wondering if 199900000000000000000 is in wei?


The source code for that contract states that an initialSupply of 100000000000000000000000000 tokens was set.

In this case it looks like the user transferred 199900000000000000000 of those tokens.

It would seem that Etherscan is formatting the information to display it in the most user friendly way, making the incorrect assumption that it is dealing with Wei.

It is however possible that these ICO creators have developed their tokens intentionally in this way to allow for subdivision of tokens, and have asked Etherscan to display it like this.

EDIT for clarity.

When you deploy a ERC20 token (a tutorial for which can be found here), you are required to specify the initialSupply of tokens.

This is passed in as a constructor argument.

In this case the Qtum creators specified an initialSupply of 100000000000000000000000000

EDIT - additional information

As commented by Ismael below, the balances and values are formatted like this on Etherscan as a result of the other properties defined in the contract.

This is also outlined in the tutorial from the Ethereum foundation (linked above).

  • Are you saying this is defined by the token creators? – Jinhua Wang Jul 31 '17 at 15:33
  • Yes. I have made an edit to clarify this. – Thomas Clowes Jul 31 '17 at 15:38
  • 1
    The contract states the token has 18 decimals, so every every token can be divided into 10^18 smaller parts. The amounts in the contracts are stored in this smaller unit. There is a total supply of 100000000000000000000000000 of this units, since 10^18 of this makes one token we have in total 100000000000000000000000000/10^18 = 100,000,000 tokens the total displayed by Etherscan. – Ismael Jul 31 '17 at 15:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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