Exploring the Features and Benefits of Azuki’s ERC-721A NFT Standard

Kristaps Grinbergs
3 min readMay 16, 2023

NFT minting on Ethereum can be expensive due to the high gas fees associated with executing intelligent contract transactions on the blockchain. Previously we learned how to use the ERC-721 standard, but there is an improved standard, ERC-721A, by Azuki. It gives enormous gas savings when minting multiple NFTs in one transaction. Minting five NFTs can save 7.2 times gas compared to the original ERC-721 standard. Let’s check it out in this article.

Photo by Call Me Fred on Unsplash.

ERC-721A vs ERC-721

The ERC-721A standard, compared to the original ERC-721 standard, has some distinctive differences:

The most significant difference between the ERC-721A and the original ERC-721 standards is that ERC-721A includes additional features and functionality not present in ERC-721. For example, ERC-721A allows for dynamic minting of NFTs, meaning they can be minted on-demand rather than having to pre-mint them all at once. This feature can be more cost-effective and efficient for users who don’t need to mint a large number of NFTs upfront.

To gain such gas savings Azuki team has implemented an approach. It keeps an address in the records and how many NFTs are in a sequence. For instance, Mary mints five NFTs starting from number 100. Essentially it will hold data that the owner of the #100 is Mary, and the next five will be without an owner. Using this approach, the ERC-721A standard can achieve significant gas savings because there is no need to mint every five NFTs. Azuki team has calculated that minting one NFT with the ERC-721 is 154,814 gas; with the ERC-721A, it is 76,690. Minting five NFTs, respectively, it is 616,914 and 85,206. It is 7.2 times more gas!

Using the ERC-721A

Using the ERC-721A is very straightforward and similar to the original ERC-721 standard.

After we install the erc721a package in our project, we can import it into the smart contract.

import "erc721a/contracts/ERC721A.sol";

After that, we must extend our NFT smart contract from the ERC721A and create a constructor like we would use the OpenZeppelin implementation.

contract GasSaverNFT is ERC721A {
constructor(
string…

--

--

Kristaps Grinbergs

Blockchain, mobile and fullstack developer. Startup founder. Conference speaker. Mentor. Passionate about building products, sustainability and Web 3.0.