Snapshot
Gasless off-chain voting platform where signed messages plus a block-height 'snapshot' of token balances became the de facto governance layer for tens of thousands of DAOs.
▶ Run interactive simulation animated mechanism with editable parameters
How it works onchain
Summary
Snapshot is the governance experiment that won by leaving the chain. Built in August 2020 by Fabien (later publicly identified as Fabien Marino) as a side project while he was working at Balancer, it began as an attempt to build a simple voting portal for BAL holders. On-chain voting proved too gas-heavy and too inflexible — Balancer wanted BAL locked inside AMM pools to still count as voting power — so Fabien moved the vote itself off-chain: users sign a message with their wallet (free), the signed vote is stored on IPFS, and voting power is computed from a "snapshot" of token balances at a fixed historical block. Open-sourced during DeFi summer, it was adopted within weeks by Yam and Yearn, then by essentially everyone: Aave, Uniswap, Sushi, ENS, Optimism, PancakeSwap and tens of thousands of others. By the mid-2020s Snapshot was reported to serve roughly 96% of DAOs, with 20,000+ active spaces, ~130,000 proposals and over 10 million votes cast across 50+ networks. Snapshot Labs raised a $4M round in November 2021 led by 1kx (with Coinbase Ventures, Gnosis, StarkWare, The LAO and others) and has never issued a token. In September 2024 it launched Snapshot X, a fully onchain voting protocol on Starknet using storage proofs, closing the loop back to the chain it originally abandoned.
Design (Mechanism)
The core insight is separating vote authentication from vote settlement:
- Block-snapshot voting power. Each proposal fixes a block number. Voting power is read from chain state at that block, which kills flash-loan vote-buying for the ballot itself (you can't borrow tokens after the snapshot) and makes results reproducible by anyone with an archive node.
- Gasless signed messages. A vote is an off-chain message (wallet signature) rather than a transaction. Signatures are relayed by Snapshot's sequencer and pinned to IPFS, making the ballot record independently verifiable and hard to tamper with, while costing voters nothing.
- Composable voting strategies. A "space" (originally keyed to an ENS name) defines how power is computed from 400+ open-source strategies: raw token balance, staked/LP positions, NFT ownership, delegation, whitelists, quadratic weighting, or arbitrary combinations across multiple contracts and chains. This flexibility — impossible in gas-constrained on-chain voting — is Snapshot's real moat.
- Multiple voting systems. Single choice, approval, ranked choice, weighted, and quadratic voting are all supported per-proposal.
- On-chain delegation. The Gnosis-built DelegateRegistry contract (0x4697...5446, deployed across EVM chains) lets holders delegate Snapshot voting power on-chain without transferring tokens.
- Execution bridges. Because Snapshot results are signals, not transactions, execution modules were bolted on: SafeSnap (Reality.eth oracle + Zodiac module) and later UMA's oSnap let a Safe execute a passed vote unless challenged, converting signaling into optimistically trustless execution.
- Shielded voting (2022). Shutter Network threshold encryption keeps votes hidden until the poll closes, countering bandwagon effects and last-minute whale swings.
- Snapshot X (2024). A fully onchain protocol on Starknet using Herodotus storage proofs to verify L1 token balances, cutting voting costs 10–50x versus L1 and letting EVM wallets vote onchain without bridging or onboarding to Starknet.
Outcome
Ongoing and dominant — arguably the most successful piece of DAO infrastructure ever shipped. Snapshot became the default legitimacy layer for token governance: treasury decisions worth billions have been routed through Snapshot signaling followed by multisig or module execution. Reported scale (2023–2025): 20,000+ spaces, ~130,000 proposals, 10.4M votes from ~1.7M voters, ~600K monthly active users across 52 networks; Optimism Collective alone crossed 1M votes. The company stayed small, free-to-use, MIT-licensed, and tokenless, monetizing lightly (premium features, network integrations) — a rarity in crypto. The 2024 v2 interface and Snapshot X extended the product from pure signaling toward binding onchain governance. Classified here as major_success on adoption and durability, with the caveat that "governance theater" criticisms attach to how DAOs use it, not to whether it worked.
Why it worked
- It removed the single biggest barrier to participation — cost. Free voting turned governance from a whale ritual into something any holder could do, exactly when DeFi summer minted thousands of new token communities needing a ballot box overnight.
- Flexibility on-chain couldn't match. Counting LP tokens, staked positions, NFTs, or cross-chain balances as voting power is trivial off-chain and prohibitive on-chain; Snapshot's strategy system let every DAO define power its own way.
- Radically low integration cost. An ENS name and a JSON config created a space; no contracts to deploy or audit. Yam and Yearn adopting it in the frenzy of August 2020 created a default that network effects then locked in.
- Verifiability without settlement. IPFS-pinned signed ballots plus deterministic block-height power calculations meant results were auditable and hard to contest, giving off-chain votes enough legitimacy to govern real treasuries.
- It embraced being a layer, not a totality. By punting execution to Safes, SafeSnap/oSnap, and later Snapshot X, it never had to solve the hardest problem to become indispensable.
Limitations and criticisms
The model carries structural weaknesses that adoption has not erased:
- The execution gap. Snapshot votes are signals; a multisig must act on them. This reintroduces trusted intermediaries and has repeatedly produced disputes when signers delayed, reinterpreted, or ignored results — the gap SafeSnap/oSnap/Snapshot X exist to patch.
- Centralization of the pipeline. The sequencer, hub API, and default interface are run by Snapshot Labs; censorship resistance is weaker than on-chain voting, and IPFS persistence depends on continued pinning.
- It made plutocracy cheaper, not fairer. Free voting didn't fix concentration (Chainalysis, 2022: in major DAOs <1% of holders held ~90% of voting power) or apathy (participation commonly below 20%); token-weighted voting remained sybil-resistant but whale-dominated.
- Low-cost surface for abuse. Free proposal creation invited spam spaces and phishing "airdrop vote" proposals used as wallet-drainer lures.
- Tokenless sustainability question. No protocol revenue mechanism has been proven at scale; the company remains dependent on funding and modest monetization.
Lessons
- Legitimacy does not require settlement. A vote that is verifiable (signatures + deterministic power at a fixed block) can carry binding social force even if nothing executes on-chain; the chain is needed only where enforcement is needed.
- Cost, not mechanism design, was the binding constraint on governance participation. Removing gas did more for turnout than any clever voting scheme; conversely, removing cost alone did not fix plutocracy or apathy — those are token-distribution problems.
- Snapshot-at-a-block is a general anti-manipulation primitive. Fixing eligibility at a past block neutralizes flash-loan and just-in-time token acquisition, and has been reused far beyond voting (airdrops, allowlists).
- Winning as neutral infrastructure means being boring: free, open-source, tokenless, and easy to integrate beat richer but heavier on-chain governance frameworks (e.g., Aragon-style full-stack DAOs) on adoption.
- Signal-then-execute architectures accumulate trust debt. Every off-chain vote executed by a multisig is a promise; systems that don't eventually close the execution gap (optimistic oracles, storage proofs) invite governance crises.
Redesign (EDITORIAL — hypothesis, not fact)
This section is editorial speculation, not a description of Snapshot's plans. A redesign would attack the two residual weaknesses: the trusted sequencer and the execution gap. First, make the off-chain pipeline trust-minimized by default — votes aggregated by a decentralized relayer set, with periodic Merkle-root commitments of all ballots posted on-chain so any third party can prove inclusion/exclusion of a vote without relying on Snapshot Labs' hub. Second, invert the execution default: every proposal ships with an oSnap/Snapshot X-style optimistic execution path unless a space explicitly opts into signaling-only, making "the multisig ignored the vote" an exceptional challenge event rather than routine discretion. Third, treat participation as a first-class mechanism problem: native support for shielded-by-default ballots, delegation marketplaces with performance-based revocation, and quadratic or reputation-hybrid strategies gated by proof-of-personhood plugins to blunt pure coin-voting. Finally, sustainability: a per-space fee denominated in the space's own treasury assets (not a new token), flowing to relayers and pinning infrastructure, would fund the commons without turning the ballot box itself into a speculative asset.
Sources
- Case study: Snapshot & IPFS — primary (docs)
- Snapshot documentation (docs.snapshot.box) — primary (docs)
- Snapshot delegation docs (DelegateRegistry) — primary (docs)
- Etherscan: Snapshot: Delegation (DelegateRegistry) — primary (contract)
- snapshot-labs/snapshot-v1 (open-source client) — primary (contract)
- Introducing Snapshot's onchain voting protocol: Snapshot X — Snapshot Labs (Mirror) — primary (governance)
- Popular DAO Voting Platform Snapshot Labs Raises $4M — CoinDesk (news)
- Snapshot Labs Raises $4 Million to Shape Future of DAO Voting — Decrypt (news)
- Shutter Brings Shielded Voting to Snapshot (analysis)
- Snapshot X launches to enable gas-free onchain voting via Starknet — The Block (news)
- Snapshot, Popular DAO Voting Platform, Finally Moves On-Chain, Atop Starknet — CoinDesk (news)
- Snapshot DAO Tool Report for 2025 — DAO Times (analysis)
Related experiments
Last verified: 2026-07-26 · Spot an error? Suggest a correction