How to Create an NFT Gated Discord Server [2026 Guide]
Complete step-by-step guide to setting up NFT gating on your Discord server. Verify holders and assign roles automatically.
What is an NFT Gated Discord Server?
An NFT gated Discord server restricts access to certain channels or roles based on NFT ownership. Only users who can prove they own specific NFTs gain access to exclusive content, creating value for your holders and building a stronger community.
NFT gating is used by NFT projects, DAOs, gaming communities, and DeFi protocols to reward their most committed members with exclusive access to alpha channels, private AMAs, early announcements, and more.
In this guide, we'll show you how to set up NFT gating for Discord using Azalea Gate in under 10 minutes.
Prerequisites
Before you start, make sure you have:
- Admin permissions on your Discord server
- Your NFT collection address (Solana, Ethereum, or other supported chain)
- A role you want to assign to NFT holders (or create one in the next step)
Step 1: Add Azalea Gate to Your Server
First, invite the Azalea Gate bot to your Discord server:
- Click the "Add to Discord" button on azaleagate.com
- Select your server from the dropdown
- Authorize the required permissions
- Complete the CAPTCHA verification
The bot needs Manage Roles permission to assign holder roles automatically.
Step 2: Create a Holder Role
Create a role that will be assigned to verified NFT holders:
- Go to Server Settings → Roles
- Click Create Role
- Name it something like "Verified Holder" or "[Collection] Holder"
- Set the role color and permissions as desired
- Important: Make sure the Azalea Gate bot role is above this role in the hierarchy
Pro Tip: Role Hierarchy
Discord bots can only assign roles that are below their own role in the hierarchy. Drag the Azalea Gate role above any holder roles you want to assign.
Step 3: Configure Your NFT Collection
Now configure which NFT collection to verify. Use the /nft-config command:
For Solana NFTs:
/nft-config add collection:[collection_address] role:@Verified-HolderExample with a real collection:
/nft-config add collection:DRiP2Pn2K6fuMLKQmt5rZWyHiUZ6WK3GChEySUpHSS4x role:@DRiP-HolderFor Ethereum/EVM NFTs:
/evm-config add-collection contract:[contract_address] chain:ethereum role:@Verified-HolderSupported chains: ethereum, polygon, base, arbitrum, optimism
Step 4: Set Up Verification Channel
Create a channel where users can verify their NFT ownership:
- Create a new channel called
#verifyor#holder-verification - Run
/setupin the channel to create a verification panel - Users will see a "Verify" button they can click
When users click verify, they'll be prompted to connect their wallet and sign a message. The bot checks their wallet for the required NFTs and assigns the role automatically.
Step 5: Test the Verification
Before announcing to your community, test the verification yourself:
- Click the "Verify" button in your verification channel
- Connect a wallet that holds your NFT
- Sign the verification message
- Confirm you received the holder role
If everything works, you're ready to announce NFT gating to your community!
Advanced Options
Azalea Gate supports advanced NFT gating configurations:
Tiered Roles Based on NFT Count
Assign different roles based on how many NFTs a user holds:
/nft-config add collection:[address] role:@Bronze min-count:1 /nft-config add collection:[address] role:@Silver min-count:5 /nft-config add collection:[address] role:@Gold min-count:10Multiple Collections
Require NFTs from multiple collections using custom verification rules:
/rules create name:"Dual Holder" role:@Dual-Holder /rules add-condition rule:"Dual Holder" type:nft collection:[address1] /rules add-condition rule:"Dual Holder" type:nft collection:[address2]Staking Verification
Verify staked NFTs so holders keep their roles while earning rewards:
/staking add program:[staking_program] collection:[address] role:@StakerTroubleshooting
Bot can't assign roles
Make sure the Azalea Gate bot role is above the holder role in Server Settings → Roles. Drag it higher in the list.
Verification not working
Check that you entered the correct collection address. For Solana, use the collection address (not the individual NFT mint). For EVM chains, use the contract address.
Users losing roles
This is expected behavior! When users sell their NFTs, they lose the holder role during the next re-verification. This keeps your gated channels exclusive to current holders.
For more help, check our documentation or read our guide on token gating explained.
Ready to Create Your NFT Gated Discord?
Set up NFT gating in under 5 minutes. Free tier available for small communities.