How to solve the gas fee war and unfair competition issues caused by NFT drops?
Original Title: NFT Drops Are Broken: Here's How We Fix Them
Authors: NIFTYTABLE AND TAKENS THEOREM
Compiled by: Hailsman, Chain Catcher
In 2021, NFT collectibles exploded into a multi-billion dollar asset class. However, rapid success also came with some "growing pains."
Most NFT Drops (usually referring to NFTs released for the first time in a whitelist format) predominantly use a first-come-first-served (FCFS) mechanism, with fixed prices far below market prices (the price that matches supply and demand). What problems does this create? Low prices and excessive demand effectively create competitive conditions. In the early stages of an NFT Drop, buyer expectations are high, but only the earliest buyers have the chance to mint NFTs. As a result, the rush leads to increased demand for minting transactions in the next block, significantly raising Gas fees.
During peak demand, a "Gas war" occurs. This creates a very poor experience for users during high-demand NFT Drops. For example, after the Loot project achieved breakthrough success, the rush to mint and list Loot derivatives caused gas fees to soar multiple times, raising transaction prices across the entire Ethereum network. The following images show how gas fees surged whenever Loot derivatives were minted on September 2nd last year.
This article will explore how the FCFS drop mechanism negatively impacts users and provide case studies. Additionally, we offer reference suggestions for project teams and creators to mitigate this issue.
Adidas' NFT Project Into the Metaverse
Into the Metaverse is an NFT project in collaboration with Adidas, Gmoney, Bored Ape Yacht Club (BAYC), and PUNKS Comic. It was launched in December 2021, with a total of 30,000 NFTs issued. Owning one of these NFTs grants access to limited edition Adidas merchandise and the opportunity to unlock more virtual experiences in the future. This NFT Drop had a presale event, but only collectors holding an NFT from one of the collaborating projects could participate; the public sale followed the presale and was open to anyone.
In this case, two main issues plagued the NFT Drop. First is the high gas fees, as the demand for purchasing Adidas NFTs resulted in minting transactions that far exceeded the number of transactions the Ethereum network could process in a single block. Consequently, the cost of processing an Ethereum transaction skyrocketed.
The above image illustrates these dynamics by plotting the minting transactions of various blocks. Green dots represent successful mints, while red dots indicate failures.
35,000 wallets attempted 39,000 minting transactions, with 59% of the minting attempts failing. The median gas cost for successful minting transactions was 0.16 ETH. Failed minting transactions wasted gas fees worth 680 ETH, estimated at approximately 2.6 million dollars based on ETH prices at the time.
The second issue is that high-skilled operators have an unfair competitive advantage. In principle, each wallet can mint a maximum of two NFTs; however, some participants used bots to circumvent the rules. For instance, one operator minted 330 Adidas NFTs in a single transaction. This individual wrote a custom smart contract and deployed numerous subcontracts. All subcontracts participated in minting NFTs and sent them to a single wallet address.
A system that could alleviate the issues faced by the Adidas NFT sale is the NFT Drop mechanism developed by Parallel NFT (https://parallel.life/). Using this system, the Into the Metaverse project would allow users to reserve NFTs off-chain. As initially planned, each user could reserve up to two NFTs. After making a reservation, users must wait 5 minutes to make another reservation. This way, bots cannot snipe all inventory before a human with normal reaction speed can make a purchase.
The reservation period will last until all NFTs are reserved. Once all NFTs are reserved, users can pay for their on-chain reserved NFTs within 24 hours. This means users do not have to rush to execute transactions in a short time, and "gas fee wars" will not occur. It will also give the core team time to identify and eliminate bots participating in the first phase.
Finally, NFTs will be minted and sent to buyers in batches. In this way, Adidas will cover the gas fee costs associated with minting and transferring NFTs from the revenue of the Drop. Notably, using this method, buyers only need to make a single payment transaction on-chain, which has a relatively low gas fee compared to minting transactions.
The downside of this approach is that users must trust a centralized off-chain reservation system, and the team members blacklisting bots must be unbiased. There is still significant room for development in web3 on how to prove that users are unique individuals rather than bots without compromising decentralization.
Doodles
Doodles is a collection of 10,000 unique profile picture NFTs launched in October 2021.
The Doodles drop has two phases: a whitelist-only FCFS minting phase and a public FCFS minting phase. During the whitelist phase, users can mint NFTs at any time, and with relatively stable base gas fees, very few transactions fail. Once the public sale begins, people rush to mint the remaining Doodles, leading to increased demand for block space and soaring gas fees.
During the presale period (before the gray vertical line), failed transactions accounted for only 0.2 ETH in fees. During the public drop period (after the gray line), 10,000 wallets attempted 13,000 minting transactions. Of these minting attempts, 12,000 failed, resulting in a failure rate of up to 90%. The median gas cost for successful minting transactions was 4.0 ETH.
Due to transaction failures, gas fees worth 335.2 ETH were wasted. Based on ETH prices at the time, this amounted to approximately 1.26 million dollars. Notably, the Etherscan entry for block 13,439,104 is a perfect snapshot of this "bloodbath," with over 1,000 failed Doodles transactions, leading to nearly 100 ETH in fees from failed transactions alone.
Using the MultiRaffle method can improve gas efficiency and reduce the failure rate of Doodles Drops. MultiRaffle was co-developed by prolific researchers Anish and Hasu from the Paradigm crypto investment firm. Users purchase raffle tickets by locking funds in a smart contract. The cost of a raffle ticket equals the cost of the NFT, and if they do not win, the money spent on the NFT will be automatically refunded.
The ticket purchase period should last several days to ensure that price competition does not affect gas fees. Once all buyers have purchased raffle tickets, Chainlink VRF will be used to select winners, providing robust randomness. High-skilled participants will not have an unfair advantage in the competition, as each ticket has an equal chance of being selected. Finally, users can request NFTs or refunds at any time, and only at this point can the project team extract funds from the contract according to the specified requirements.
If you are a developer, you can find the practical implementation of MultiRaffle here.
Stoner Cats
Stoner Cats is an animated short film produced by a star-studded cast including Mila Kunis and Ashton Kutcher. By purchasing one of the 10,420 NFTs, holders can gain access to various episodes and perks, such as brainstorming with the creators and behind-the-scenes content.
During the drop, 35,000 wallets made 50,000 minting transactions. 51% of the minting attempts failed. The average gas fee for successful mints was 0.22 ETH. Failed minting transactions wasted gas fees worth 345 ETH, which, based on Ethereum prices at the time, amounted to approximately 7.94 million dollars.
As the Stoner Cats minting competition began, gas fees soared. Additionally, the inefficiency of the minting contract's coding led to insufficient gas limit calculations. As a result, users who did not manually adjust the gas limit in their wallets were more likely to encounter transaction failures.
Fortunately, the Stoner Cats team decided to reimburse participants for their gas fees after the event.
In addition to improving the contract, one method that could help increase gas efficiency and reduce failure rates is to set minting options after a series of Stoner Cats-themed games and puzzles. These challenges are inherently diverse and occur on many different platforms, making it impractical for bots to "treasure hunt" even if users know all the steps. A great example is TempleDAO's "Joining Ceremony," which includes multiple steps involving Discord commands, puzzles in Cryptovoxels, and answering questions on a custom website.
This approach will stagger the timing of users minting NFTs. Users will not arrive at the final website simultaneously and compete for minting based on gas fees. Those who have not completed the series of challenges when all NFTs are minted will have no chance to submit mint transactions. This is preferable to submitting failed mint transactions, as there will be no remaining NFTs, and participants will lose gas fees.
Using puzzles and games to set minting thresholds will also be an interesting way to filter participants and select those most interested in the project, rather than inadvertently filtering for those with the largest wallets and highest skills, which is how things currently operate. In the long run, this could benefit the community.
TIMEPieces
In September 2021, TIME Magazine launched an NFT project called TIMEPieces. The collection includes 4,676 NFTs featuring works from over 40 artists. Benefits for holders include unlimited access to TIME's official website until 2023, as well as more opportunities to be invited to offline events in the future.
11,000 wallets made 13,500 minting attempts, with 96% of the attempts failing. The gas fee for successful minting transactions was 2.3 ETH. Due to transaction failures, gas fees worth 265 ETH were wasted, amounting to approximately 836,000 dollars based on ETH prices at the time. In block 13,283,025, failed TIMEPieces transactions accounted for about 90% of the entire block!
The failure rate for this TIMEPieces drop reached 96%. The NFTs sold out in just 2-3 minutes, as high-skilled participants found the contract early and deployed bots. Keith Grossman, the president of TIME Magazine, pointed out the issues related to this NFT release in a tweet.
To prevent such adverse outcomes, one method that can be adopted is smart batch auctions. Using this method, users submit bids to a smart contract, specifying the number of tokens they want and the price they wish to pay. After the bidding period ends, a clearing price will be calculated to match supply and demand. Users who bid above this price can claim NFTs at any time, along with the ETH difference between their bid and the clearing price. Users with low bids will receive ETH refunds through the contract. There are no peak periods, no rush to mint caused by early minting, and no gas fee wars.
If you are a developer, you can find the practical implementation of NFT smart batch auctions here.
Other Methods to Solve NFT Drop Issues
In addition to the drop mechanisms discussed above, NFT projects can also explore minting transactions through Flashbots RPC routing during the drop. This primarily has two benefits:
- If a transaction fails, users will not have to pay gas for it.
- Bots will not see users' minting transactions in the public memory pool.
Projects can utilize Flashbots RPC to add a pop-up message on the drop website, explaining to users how to mint using Flashbots RPC; another approach is to design the drop website to detect users who are not using Flashbots RPC and prompt them to add it to Metamask before minting.