When we start working with ERC721 i.e nft we initialize in constructor like this:


Means we are making a ERC721 token with this name and Symbol. But when we create multiple nfts by same contracts should not the token name and symbol change for every nfts as every nfts are unique?? How we can mint many nfts with same token name and symbol??

1 Answer 1


When you mint an NFT, you are not changing the name and symbol, you are incrementing the tokenId. It means that you would have the same name and symbol but a different TokenId. The tokenId is a uint256.

If you want to have different ERC721 NFT's in one contract I would suggest you use the ERC1155 token standard where you can manage several ERC20 and ERC721 within the same contract.

Hope it helps!

  • it means if 10 peoples mint my nft then they will get same nft with different ids, right?
    – Hacek
    Commented Apr 21, 2023 at 11:18
  • yes correct, every time you increase the number id by 1
    – donoso.eth
    Commented Apr 21, 2023 at 12:13
  • In ERC721, there is function called tokenURI() which takes tokenId and returns tokenURI. So if i wanna generate tokenUri for any tokenId i can use this function ? I am asking because i saw in few tutorial that they are making tokenUri from scratch by creating JSON object and concatenating with "data:application/json;base64,". i don't need to do it if i use tokenURI(), right?
    – Hacek
    Commented Apr 21, 2023 at 14:03

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.