Token-gate Discord and Telegram on Base
Give Discord roles and Telegram access to token or NFT holders on Base, including holders for N days, at a snapshot, or with a Coinbase Verification.
To token-gate a Discord server or Telegram group for holders of a token or NFT on Base, create a role in Guild, add a Token balance or NFT Balance requirement with Base as the chain, and give the role a Discord or Telegram reward. Members connect their wallets, and Guild gives the Discord role or the group invite to everyone who holds enough, then takes it away when they sell. Base (chain ID 8453, with ETH as its native coin) is one of only two chains, with Ethereum, where Guild can also check how long someone has held a token, because Guild runs its own Base archive node. Discord and Telegram gating are on the Free plan.
Base is the second most used chain for gating on Guild: 22.3% of active guilds with a chain requirement check Base, and those guilds hold 2.73 million memberships, more than for any other chain. See State of token-gated communities 2026.
What Guild can check on Base
Every onchain requirement type Guild offers works on Base:
| You want members who | Requirement | On Base |
|---|---|---|
| Hold ETH | Token balance, Native currency balance | Yes |
| Hold an ERC-20 token | Token balance, ERC20 balance | Yes |
| Hold an NFT | NFT Balance | Yes |
| Held a token at a snapshot | Held at a past block | Ethereum and Base only |
| Held a token for N days without a break | Held continuously for | Ethereum and Base only |
| Have an old or active wallet | Onchain activity | Yes |
| Pass a check your contract answers | Contract query | Yes |
| Have an EAS attestation | Be attested by | Yes |
You can also mint an NFT reward on Base for the members who earn a role. Supported chains compares Base with the other chains.
Set up the gate
The steps match the general guides, with Base picked as the chain:
- On your guild, choose Manage guild, open Spaces & roles, and create a role with New role, then Empty role.
- Under Who gets it, press Requirement, pick Token balance or NFT Balance, choose Base, paste the contract address and set the amount.
- Under Unlocks, press Add reward and pick Discord or Telegram.
Copy the contract address from the project's site or from the token's page on Basescan, and check it is the Base address: a project's token often has a different address on Ethereum. For every step in full, follow Token-gate a Discord server or Token-gate a Telegram group.
Reward holding, not a quick buy
A plain balance only looks at today, so someone can buy the morning a gated drop opens and sell the next day. On Base you can ask for more:
- Held continuously for checks that a wallet never dipped below the amount for the number of days in Held For (days). Someone who sold and bought back during the window doesn't qualify.
- Held at a past block checks the balance at a Block Number or Point In Time you choose, such as your token's launch or an announcement. Buying after it doesn't help.
Pick the Asset Type (COIN for ETH, ERC20, ERC721 or ERC1155) and paste the Token Address. These two requirements read Base's past state, which only a full archive of the chain can answer, so they aren't offered on Arbitrum, OP Mainnet, Polygon or other chains. See Holding history.
Gate on Coinbase Verifications
Coinbase issues EAS attestations on Base, called Coinbase Verifications, that a wallet belongs to a verified Coinbase account, a verified country, or a Coinbase One member. Guild's Be attested by requirement turns one of them into a role, which keeps out wallets with no verified account behind them:
- Press Requirement and pick Be attested by, then choose Base.
- In Reference, paste Coinbase's attester address. Coinbase's
verificationsrepository on GitHub lists it for Base mainnet as0x357458739F90461b99789350868CD7CF330Dd7EE. - In Schema Id, paste the schema for the check you want. The same repository lists Verified Account as
0xf8b05c79f090979bf4a80270aba232dff11a10d9ca55c4f88de95317970f0de9. - Leave Key and Value empty and press Add requirement.
Check both values against Coinbase's repository before you rely on them. A member qualifies only if the attestation was made to one of the wallets they connected to Guild. See Attestations.
Other ideas for Base
- Base users, not fresh wallets: Onchain activity, First transaction on Base before a date, or Transaction count on Base of at least 50.
- Users of your app: Onchain activity, Contract call on your contract and method, at least 5 in a Relative period of 30 days.
- Stablecoin holders: Token balance, ERC20 balance, USDC on Base. Circle lists the address as
0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913. - Stakers: a Contract query on your staking contract, such as
balanceOf(address)withUSER_ADDRESS.
Worked example: Base OG
A project with an NFT collection and a token on Base wants an "OG" Discord role and a Telegram group for long-term holders.
Role 1, "Base OG", for a Discord role:
- Onchain activity, First transaction, Base, Time before 1 January 2024.
- NFT Balance, Base, the collection's address, at least 1.
- Members should meet: All.
- Reward: Discord, New role named "Base OG", with Keep role once earned off, so the role goes when the NFT does.
Role 2, "Committed holders", for the Telegram group:
- Held continuously for, Base, ERC20, the token's address, Held For (days) 60, at least 500.
- Be attested by, Base, Coinbase's attester and the Verified Account schema.
- Members should meet: All.
- Reward: Telegram, with the bot added to the private group.
A member who sells the NFT loses "Base OG" and its Discord role once Guild's refreshed data shows the sale. A member who drops below 500 tokens on any day stops meeting role 2, and the bot removes them from the group.
FAQ
Is token-gating on Base free?
Yes. Every requirement on this page, and Discord and Telegram rewards, are on the Free plan. See Plans.
My token is on Base and Ethereum. Can holding on either count?
Yes. Add one requirement per chain, each with that chain's address, and set Members should meet to Any one.
Why can I pick Base for holding history but not my other chain?
Guild only offers Held at a past block and Held continuously for where it runs a full archive node of its own, today Ethereum and Base. It won't answer those checks from a provider that may have pruned the history.
How fast does Guild notice a sale on Base?
Guild refreshes onchain data in the background and removes access when members stop qualifying. A member who just bought can press Check access on the role instead of waiting.