Governance Tokens
Voting power.
Governance Tokens is a free Web3 & DApp Development Fundamentals lesson on CoddyKit — lesson 2 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Web3 & DApp Development Fundamentals learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
What Is a Governance Token?
A governance token is an ERC-20 token that grants its holder the right to participate in a DAO's decisions.
It converts ownership into voting power, aligning influence with stake in the organization.
Voting Power
In the simplest model, one token equals one vote. A holder of 1,000 tokens has ten times the weight of a holder of 100.
This ties decision-making to economic exposure to the protocol.
votingPower(address) = token.balanceOf(address)
// 1 token = 1 voteERC-20 Votes Extension
OpenZeppelin provides ERC20Votes, which adds vote tracking to a standard token.
It records historical balances so votes can be counted at a specific block, preventing double-voting by moving tokens.
contract GovToken is ERC20, ERC20Votes {
constructor() ERC20("Gov", "GOV") {}
}Snapshots and Checkpoints
To vote fairly, the system records a snapshot of balances at the block a proposal was created.
This checkpoint stops someone from buying tokens after a proposal starts just to swing the result.
votingPower = token.getPastVotes(
voter,
proposalSnapshotBlock
);Delegation
Holders can delegate their voting power to themselves or to another address (a trusted expert).
Crucially, in many systems you must delegate even to yourself before your tokens count as votes.
token.delegate(msg.sender); // self-delegate
token.delegate(expertAddress); // delegate to anotherWhy Delegation Helps
Delegation combats voter apathy. Passive holders can hand their power to active, informed delegates.
It concentrates expertise without forcing every holder to research every proposal.
Token Distribution Matters
How tokens are distributed shapes governance health:
- Concentrated — a few whales dominate (plutocracy)
- Broad — many small holders, more decentralized
Airdrops and vesting schedules are used to spread ownership.
Quorum
A quorum is the minimum total voting power that must participate for a vote to be valid.
Without a quorum requirement, a tiny minority could pass proposals during periods of low turnout.
if (totalVotes < quorum) {
proposal fails (not enough participation)
}Beyond One-Token-One-Vote
Some DAOs use alternative models to curb whale dominance:
- Quadratic voting — cost grows with the square of votes
- Reputation-based — non-transferable influence
- Conviction voting — power grows with time committed
Vote-Escrowed Tokens
Protocols like Curve use vote-escrow (veToken) models: lock tokens longer to gain more voting power.
This rewards long-term commitment and discourages short-term governance attacks.
lock 1000 tokens for 4 years
-> maximum veToken voting power
lock for 1 year
-> reduced powerPutting It Together
Governance tokens turn ownership into voting power, tracked via snapshots and made flexible through delegation. Quorums and alternative models keep governance fair and resistant to manipulation.
Next we build proposals and voting with Governor contracts.
Quick Check
Test your governance token knowledge.
Recap: Governance Tokens
You learned that:
- Governance tokens grant voting power (often 1 token = 1 vote)
- ERC20Votes tracks historical balances via snapshots
- Delegation lets holders assign their power
- Quorum ensures enough participation
- Alternatives like quadratic and veToken models curb whales
Next: proposals and voting.
Frequently asked questions
Is the “Governance Tokens” lesson free?
Yes — the full text of “Governance Tokens” is free to read here on the web, and the Web3 & DApp Development Fundamentals course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Web3 & DApp Development Fundamentals course, upgrade to CoddyKit PRO.
What will I learn in “Governance Tokens”?
Voting power. You practise Web3 & DApp Development Fundamentals with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start Web3 & DApp Development Fundamentals?
No prior experience is required. Web3 & DApp Development Fundamentals on CoddyKit is structured for beginners through advanced learners; this is — lesson 2 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “Governance Tokens” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this Web3 & DApp Development Fundamentals lesson?
Yes. Every Web3 & DApp Development Fundamentals lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- What Is a DAO
- Governance Tokens
- Proposals and Voting
- Timelocks and Execution