Tracking ERC-721 non-fungible token on Etherscan

Kaven Choi
Etherscan Blog
Published in
2 min readAug 2, 2018

--

The Ethereum blockchain is ever evolving, ERC-20 is one type of smart contract and in some cases used as a representation of tokenized value and many of the well-known projects are built on top of it. As the ecosystem grows, so as the type of smart contract and the function of the smart contract in representing value. ERC-721 is the product of this evolution.

ERC-721 tokens are non-fungible, meaning that every ERC-721 token has its unique value and is to be treated individually. Unlike ERC-20, every single ERC-20 token is equal in value and is identical and inter replaceable.

Think of currency; for example, each ERC-20 token can be compared to a $5 bill (USD) where you could exchange one $5 bill with another $5 bill without the differences in value. For the case of ERC-721, an example of a non-fungible token is CryptoKitties. Each kitty is different in value, having individual traits, and are usually treated as collectible.

Comparison for fungible and non-fungible tokens

Etherscan recently added support for CryptoKitties, an example of ERC-721 tokens. P.S Cryptokitties contract is created before ERC-721 specification is finalized. Each kitten is an ERC-721 token, individually different and valued.

CryptoKitties on Etherscan.io

To display ERC-721 token on Etherscan, Etherscan tracks all ERC-721 compliant tokens as per the finalized standard at with the following caveats:

  • The token contract must emit at least one ERC-721 compliant transfer event which looks something like:
event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId);
  • ERC-721 tokens can also contain additional metadata like images. To enable support of viewing these images on Etherscan, we will need to enable support for this on our end manually. Given the nature of images (size, loading times, potential copyright issues, etc.) the option for enabling preview images will be evaluated on a case by case basis at our discretion. This, however, does not affect the tracking of all ERC-721 compliant tokens as we will still show the essential information such as the sender, receiver, tokenID and date/time of the transaction.

To enable ERC-721 image viewing support on Etherscan will require the following sent to us here:

  1. Project info such as your official website and token icons
  2. The API endpoint for retrieving the image URL
  3. The average duration/time required for the image to be generated on the source server after the transaction has completed (i.e., 5 minute, 30 minute, 1 hour, etc.)

--

--