Preventing Peeking in Shuffles
Support for shuffles is new and experimental. We recommend you understand the limitations on the existing shuffle system before creating a shuffle
Important
Without placeholder metadata, all pre-minted NFTs are fully visible on-chain.
As a result, users may analyze the shuffle wallet to see which NFTs are available — and potentially sign only for the one they prefer. Projects that skip the placeholder stage should accept this trade-off as part of their shuffle design.
Algorand’s NFT ecosystem works a little differently from Ethereum and other chains.
If you’re building or launching a collection through our shuffle platform, it’s important to understand how randomness, minting, and asset visibility work — and what limitations currently exist.
🧩 The Core Difference: Pre-Minted vs. Mint-on-Demand
On Ethereum, NFTs are typically minted on demand — meaning the smart contract creates a new token when a user mints. The randomness (which NFT they get) is determined at that moment, and the metadata may not even exist until after minting.
On Algorand, things are different:
NFTs are generally pre-minted before distribution.
The shuffle mechanism simply transfers a pre-existing NFT from a central wallet (the “shuffle wallet”) to the buyer.
The “randomness” comes from off-chain logic in the shuffle process — not from the blockchain itself.
So while the user experiences what looks like a random draw, the NFTs already exist on-chain at the time of the shuffle.
🔍 The “Peeking” Problem
Because all NFTs are pre-minted and public on Algorand:
Any user can view the shuffle wallet’s holdings.
If artwork and metadata are already revealed, users can inspect asset IDs and preview which ones are available.
This makes it technically possible to “peek” at what they might receive before the shuffle happens.
Even though the front end only submits one transaction (the transfer of the final NFT), savvy users can still analyze the wallet’s state in advance.
Important: This is not a vulnerability in the shuffle platform — it’s simply a structural limitation of how preminted NFTs and opt-ins work.
🕵️ Best Practice: Use a Placeholder Reveal
To maintain fairness and mystery during your mint:
Mint all NFTs in advance as required.
Assign placeholder metadata and artwork (for example, a “mystery” image).
Run your shuffle as normal — users will receive a random NFT, all showing the same placeholder.
Once the NFT leaves the shuffle wallet and lands with the buyer, update the metadata to reveal the actual artwork.
This “reveal after transfer” pattern prevents peeking and preserves the random experience that collectors expect. This pattern has been used for many successful shuffles on Algorand, including Mostly Frens, Al Goanna MvZ, The Lost Bots and so on.
⚙️ Example Workflow
Mint 100 NFTs with a generic placeholder image and metadata.
Store final artwork and traits securely (off-chain or IPFS links).
Run the shuffle — each buyer receives a random placeholder NFT.
After the shuffle ends (or on a per-NFT basis after transfer), update metadata via the ARC19 standard to point to the revealed artwork.
🧭 TL;DR for Creators
NFTs on Downbad are be pre-minted.
Users could technically see what’s in the shuffle wallet and peek at what they'll receive.
To keep your mint fair and exciting, use placeholder artwork, then swap it after shuffle.
This is the standard approach for serious Algorand NFT projects today.
Last updated