HelpMechanic

Whitelist (Merkle allowlist)

An allowlist is a snapshot of addresses authorised to mint during a private phase. artsunami stores it as a Merkle root in the contract - gas-efficient, no on-chain CSV.

Why Merkle

Storing a list of 5,000 addresses on chain would cost an absurd amount of gas (~22 k gas per slot × 5,000). Instead the contract stores one bytes32 - the Merkle root - which compresses any list into 32 bytes. At mint time, the buyer's wallet submits a 'proof' (a tiny array of hashes) and the contract verifies the proof matches the root.

How you supply the list

In the /create/drop wizard, paste your CSV (one address per line, optionally followed by a max-mint count). The wizard runs keccak256 over each entry, builds the tree, and you sign the deploy with the resulting root. The full list is exported as a JSON file - host it on IPFS / S3 / your gallery, the public mint page fetches it to compute proofs at mint time.

Discount price

The allowlist phase can have its own price (typically a discount). The contract stores both prices and routes the user to the right one based on whether they submit a valid proof and which phase is active.

Snapshots

If you're allowlisting holders of another collection, take a snapshot of holders at a chosen block via Etherscan or a tool like Snapshot.org, dump the addresses, and feed them in. The proof system doesn't care where the list came from.

Need a personalised answer?

ChatZilla lives at the top of the Help center. It knows every topic in this center and can walk you through your specific collection, wallet or transaction.

Create