Launch Your Own SNS
A comprehensive guide to creating and launching a Service Nervous System (SNS) on the Internet Computer Protocol, enabling decentralized governance for your dApp.

Introduction
Service Nervous Systems (SNSs) are decentralized autonomous organizations (DAOs) provided by the Internet Computer Protocol (ICP) platform. They enable dApp developers to decentralize their applications through a built-in launch process that raises initial funds for the project and hands over ownership of the dApp to a community.
An SNS DAO community then fully controls the evolution of the dApp, including key decisions such as tokenomics, upgrades, and project direction. This represents a fundamental shift from traditional centralized development models to true decentralized governance.
The SNS launch process is designed to be seamless and automated after initial setup, with only the first two stages requiring manual action from developers. All subsequent stages are executed automatically by the Network Nervous System (NNS), ensuring a smooth transition to decentralization.
What is SNS?
A Service Nervous System (SNS) is a sophisticated DAO framework built into the Internet Computer Protocol that allows dApp developers to transform their centralized applications into decentralized, community-governed projects.
Key Components
Each SNS consists of multiple smart contract canisters that work together:
- SNS Governance Canister: Manages proposals, voting, and neuron staking
- SNS Ledger Canister: Handles the native SNS token transactions and balances
- SNS Swap Canister: Manages the decentralization swap process
- SNS Root Canister: Controls the dApp canisters and coordinates upgrades
- SNS Archive Canister: Stores historical transaction data
How SNS Works
- Token Distribution: Initial tokens are distributed through a decentralization swap where participants contribute ICP tokens
- Neuron Creation: Swap participants receive neurons (voting power) based on their contribution
- Governance: Token holders stake their tokens in neurons to participate in voting on proposals
- Proposal Execution: Approved proposals are automatically executed by the SNS canisters
Benefits of SNS
- True Decentralization: Complete handover of control from developers to community
- Community Funding: Built-in mechanism to raise initial funds through token swaps
- Automated Governance: Transparent, on-chain voting and proposal execution
- Upgrade Control: Community decides on all future dApp upgrades and changes
- Token Utility: Native tokens can be used for governance, rewards, and ecosystem growth
Recent Developments (2024)
In 2024, SNSs have evolved significantly with enhanced security measures, simplified operations, and greater community collaboration:
- Critical Proposals: Higher voting thresholds and longer periods for sensitive operations like treasury movements
- Token Rebranding: Ability to change token symbols, names, and logos through governance
- Simplified Upgrades: Single proposal to upgrade all SNS canisters to latest versions
- Community Tools: Growing ecosystem of tools for better governance management
Prerequisites
Before launching an SNS, thorough preparation is essential. The SNS preparation checklist outlines several key areas that must be addressed:
1. Documentation & Preparation
1.1 Tokenomics Specification
1.1.1 Token Utility Define concisely for which use cases the token will be used:
- Governance participation and voting
- Rewarding active contributions to the dApp ecosystem
- Staking for additional benefits and rewards
1.1.2 Initial Token Allocation Plan distribution across main categories:
- DAO Treasury: Funds for ongoing operations and development
- Decentralization Swap: Tokens distributed to ICP contributors
- Seed Funders: Early supporters and investors
- Development Team: Team allocation with appropriate vesting
1.1.3 Voting Power
- Ensure swap participants have majority voting power at genesis
- Justify any developer or seed investor majority clearly
- Consider potential attack vectors and long-term power evolution
1.1.4 Funding Target
- Define minimum and maximum ICP collection targets
- Include detailed usage plans (team expansion, marketing, development)
- Be transparent about funding requirements and projections
1.1.5 SNS Tokenomics Tool
- Use the SNS Tokenomics Analyzer to validate distributions
- Analyze resulting voting power distribution
- Test different scenarios and configurations
1.2 Technical Architecture, Whitepaper & Roadmap
1.2.1 Technical Architecture
- Document complete canister structure and relationships
- Detail dependencies on off-chain services or 3rd parties
- Include data flow diagrams and system interactions
1.2.2 Whitepaper
- Provide comprehensive overview of the dApp and its goals
- Explain decentralization strategy and SNS benefits
- Include detailed tokenomics, revenue streams, and treasury usage
- Reference successful projects like OpenChat's whitepaper
1.2.3 Project Roadmap
- Outline post-launch development plans and vision
- Show how the project will evolve under community governance
- Reference examples like OpenChat's roadmap
1.3 Disclosure of Dependencies
Document all dependencies that cannot be controlled by the DAO:
- Off-chain services and APIs
- Third-party providers (payment gateways, SMS services, etc.)
- Data providers or external oracles
Include migration plans for bringing critical dependencies on-chain.
1.4 SNS Configuration File
Create comprehensive sns_init.yaml with all initial parameters:
- Token Configuration: Name, symbol, transaction fees
- Supply Distribution: Treasury, swap allocation, developer tokens
- Governance Parameters: Voting thresholds, proposal types
- Swap Settings: Minimum/maximum targets, timing constraints
# Example configuration snippet
token_name: "My Token"
token_symbol: "MTK"
transaction_fee: 1000
# Geo-restrictions (optional)
restricted_countries: ["US", "CA"]
# User confirmation text
confirmation_text: "Please confirm participation in this decentralization swap."
Include detailed comments explaining each parameter choice for transparency.
1.5 NNS Proposals
Prepare comprehensive proposal content covering:
- Complete tokenomics breakdown and justification
- Links to whitepaper, technical documentation, and forum discussions
- Detailed dApp architecture and canister information
- Security review status and open-source code location
- Community discussion history and feedback incorporation
Follow DFINITY's voting guidelines for proposal structure.
2. Technical Preparation & Testing
2.1 Security Review
- Conduct security audits of the dApp codebase
- Document security review extent and findings
2.2 Open Sourcing
- Make the dApp code publicly available before SNS launch
- Enable community evaluation and verification
2.3 Reproducible Builds
- Provide Docker-based build instructions
- Ensure community can verify builds independently
2.4 SNS Launch Testing
- Test the complete SNS lifecycle locally using sns-testing repository
- Simulate user participation and proposal voting
2.5 dApp Operations Testing
- Verify all maintenance operations work via SNS proposals
- Test canister upgrades, asset management, and cycle management
- Establish cycles management strategy
2.6 SNS Frontend Integration
- Optionally integrate SNS governance UI into your dApp
- Test all integrations thoroughly
3. Community Consultation
3.1 Documentation Publishing
- Make all documentation publicly available (website, GitHub, etc.)
3.2 Community Discussion
- Start forum discussion at least 2 weeks before NNS proposal
- Share init file, whitepaper, technical architecture, and tokenomics analysis
- Demonstrate working product-market fit and community traction
- Articulate token utility, voting power evolution, and treasury usage
4. SNS Launch Workflow
4.1 Dapp Control Handover
- Prepare for NNS root as co-controller before proposal submission
4.2 Submit Decentralization Proposal
- Submit properly formatted NNS proposal to initiate SNS creation
Steps to Launch
The SNS launch process consists of 11 stages, where only the first two require manual action from developers. All subsequent stages are executed automatically by the NNS.
Stage 1: Choose Initial SNS Parameters
Developers define all initial parameters for the SNS, including:
- Token name, symbol, and transaction fees
- Tokenomics and governance structure
- Initial token distribution
- Decentralization swap conditions (ICP min/max targets, start/end times)
- Initial neurons for governance during launch
These parameters are typically prepared using the SNS Tokenomics Analyzer and documented in the whitepaper.
Stage 2: Add NNS Root as Co-Controller
Before submitting the NNS proposal, developers hand over their dApp by adding the NNS root canister as an additional controller of the dApp canisters. This expresses intent to decentralize and allows the automated stages to proceed.
Stage 3: Submit NNS Proposal to Create SNS
Submit an NNS proposal presenting all initial SNS parameters to the NNS community. This proposal can only be submitted when no other SNS creation proposal is pending. Include comprehensive information about the dApp, tokenomics, and decentralization plan.
Stage 4: NNS Proposal Decision
The NNS community votes on the proposal. If adopted, the automated SNS creation begins. If rejected, dApp control returns to original developers.
Stage 5: SNS-W Deploys SNS Canisters (Automatic)
SNS-W canister automatically creates SNS canisters on the SNS subnet (governance, ledger, swap, root, archive).
Stage 6: SNS-W Sets SNS Root as Sole Controller (Automatic)
SNS-W transfers control of dApp canisters from developers to SNS root, with NNS coordination for the transition.
Stage 7: SNS-W Initializes SNS Canisters (Automatic)
SNS canisters are initialized with approved parameters. The SNS enters pre-decentralization-swap mode where only limited governance actions are available.
Stage 8: Swap Timing Protocol
A timing protocol ensures at least 24 hours between proposal execution and swap start. On mainnet, swap starts at specified time or randomly 24-48 hours later if no time specified. In testing, swap begins immediately if no time specified.
Stage 9: SNS Swap Starts (Automatic)
Decentralization swap opens for ICP participation. Users can contribute ICP tokens to participate in the token distribution.
Stage 10: SNS Swap Ends (Automatic)
Swap closes when end time is reached or maximum ICP target is met.
Stage 11: SNS Swap Finalizes (Automatic)
If minimum ICP target is met, tokens are distributed to participants in neurons. SNS enters full governance mode. If unsuccessful, dApp control returns to developers and ICP is refunded.
Management
After successful SNS launch, the community takes control through decentralized governance. Here are key aspects of managing an SNS DAO:
Governance Operations
Proposal Types
- Normal Proposals: Require 50% yes votes, 4-8 day voting period
- Critical Proposals: Higher security for sensitive operations (treasury transfers, token minting, canister deregistration) - require 67% yes votes, 5-10 day voting period
Critical Proposal Categories
- Treasury movements (ICP and SNS tokens)
- Minting new SNS tokens
- Deregistering controlled canisters
Voting Mechanics
- Liquid democracy with following system
- Critical proposals exclude "catch-all" following for individual decision-making
- Minimum dissolve delay requirements for voting eligibility
Post-Launch Tools and Resources
Official Tools
- NNS Frontend dApp: Primary interface for proposal voting and neuron management
- SNS Frontend Integration: Optional embedding of governance UI in dApp
- SNS Tokenomics Analyzer: For analyzing voting power distribution
Community Tools
- SNS Geek: Overview of all SNS DAOs with metrics and tracking
- Cycle Ops: Cycle consumption monitoring and management
- Toolkit: User-friendly proposal creation and voting
- Tally Bot: Real-time proposal voting tracking
- ICHouse Explore SNS Tracker: Detailed SNS DAO analytics
- ICSNS-Neurons: Browser-based proposal creation
Maintenance Tasks
Regular Operations
- Canister Upgrades: Propose and execute dApp canister upgrades through SNS governance
- Cycle Management: Monitor and replenish canister cycles
- Asset Management: Control content changes via SNS proposals
- Treasury Management: Community-controlled fund allocation
Framework Upgrades
- SNS Canister Upgrades: Use
AdvanceSnsTargetVersionproposal for one-click upgrades to latest framework versions - Security Updates: Stay current with SNS framework improvements
Testing and Development
Local Testing
- Use
sns-testingrepository for local SNS lifecycle simulation - Test with Docker or direct binary installation
- Validate proposal flows and user participation
PocketIC Integration
- Deploy and test SNS launches in PocketIC environment
- Complete launch process simulation for development
Community Building
DAO Circle
- Join the ICP DAO Circle on OpenChat for cross-SNS collaboration
- Share governance practices, tools, and experiences
- Participate in ICP labs DAO events
Best Practices
- Maintain active community engagement
- Provide clear communication on proposals
- Foster diverse participation in governance
- Plan for long-term token utility and ecosystem growth
Conclusion
Launching an SNS represents a significant milestone in transforming a traditional dApp into a truly decentralized, community-governed project. The Internet Computer's SNS framework provides a robust, battle-tested system for decentralization that has successfully launched 30+ DAOs as of late 2024.
Key Success Factors
Thorough Preparation: The SNS preparation checklist is not just a recommendation—it's essential for building community trust and ensuring technical readiness.
Community Engagement: Start forum discussions early, be transparent about plans, and demonstrate real product-market fit before proposing decentralization.
Technical Excellence: Open source your code, provide reproducible builds, and conduct security reviews. Test extensively using the sns-testing tools.
Realistic Tokenomics: Use the SNS Tokenomics Analyzer to validate your distribution ensures decentralized governance from day one.
Potential Challenges
- NNS Proposal Competition: Only one SNS creation proposal can be active at a time
- Timing Constraints: Swap timing protocols require careful planning
- Community Expectations: Ensure your project can deliver on the decentralization promise
- Operational Complexity: Post-launch maintenance requires ongoing community coordination
Future Outlook
The SNS ecosystem continues to evolve rapidly:
- Enhanced Security: Critical proposals and improved treasury controls
- Better UX: Simplified upgrades and user-friendly governance tools
- Cross-DAO Collaboration: Growing community of SNS DAOs sharing tools and best practices
- Innovation: Token rebranding, advanced proposal types, and improved liquid democracy
Getting Started
- Review the SNS preparation checklist
- Study successful SNS launches like OpenChat, Sonic, and Hot or Not
- Join the ICP Developer Forum for discussions
- Test locally using the sns-testing repository
- Use the SNS Tokenomics Analyzer for planning
SNS decentralization is more than a technical process—it's a commitment to building with your community rather than for your community. When done right, it creates sustainable, decentralized projects that can thrive independently of their original developers.
Resources
Official Documentation
- SNS Preparation Checklist
- SNS Launch Stages
- SNS Tokenomics
- SNS Testing Repository
- SNS Tokenomics Analyzer
Community Resources
Tools & Utilities
- SNS Geek - SNS DAO Overview
- Cycle Ops - Cycle Management
- SNS Toolkit - Proposal Creation
- ICHouse SNS Tracker - Analytics