Introduction

Genesis - Solana Token Launch Smart Contract

Last updated January 31, 2026

Genesis is a Metaplex smart contract for Token Generation Events (TGE) on Solana. Build presales, launch pools, and auctions with on-chain coordination for token creation, distribution, and fund collection.

Choose Your Path

What is Genesis?

Genesis provides on-chain infrastructure for launching tokens on Solana. It handles:

  • Token creation with metadata (name, symbol, image)
  • Fund collection from participants (SOL deposits)
  • Distribution based on your chosen mechanism
  • Time coordination for deposit and claim windows

Think of Genesis as a smart contract that sits between you (the launcher) and your participants, ensuring fair, transparent, and automated token distribution.

Launch Mechanisms

Genesis supports three mechanisms that can be combined:

MechanismPriceDistributionBest For
Launch PoolDiscovered at closeProportional to depositFair launches, community tokens
PresaleFixed upfrontFirst-come-first-servedPredictable raises, known valuation
Uniform Price AuctionClearing priceHighest bidders winLarge raises, institutional interest

Which Should I Use?

Launch Pool - You want organic price discovery and fair distribution. Everyone who deposits gets tokens proportional to their share. No one gets sniped.

Presale - You know your valuation and want predictable pricing. Set a fixed price and let participants buy until the cap is reached.

Auction - You want competitive bidding from larger participants. Best for established projects with institutional interest.

Core Concepts

Genesis Account

The central coordinator for your launch. When you initialize a Genesis Account, it:

  • Creates your SPL token with metadata
  • Mints the total supply to escrow
  • Provides the foundation for adding distribution buckets

Buckets

Modular components that define how tokens and funds flow:

TypePurposeExamples
InflowCollect SOL from usersLaunch Pool, Presale
OutflowReceive funds for team/treasuryUnlocked Bucket

Time Conditions

Every bucket has time windows that control when actions are allowed:

  • Deposit window - When users can deposit SOL
  • Claim window - When users can claim tokens

Protocol Fees

ActionFee
Deposit2% of deposit amount
Withdraw2% of withdrawal amount
ClaimTransaction fee only

No upfront costs. You only pay fees on funds raised.

Program Information

NetworkProgram ID
MainnetGENSkbxvLc7iBQvEAJv3Y5wVMHGD3RjfCNwWgU8Tqgkc
DevnetGENSkbxvLc7iBQvEAJv3Y5wVMHGD3RjfCNwWgU8Tqgkc

Security

After your launch completes, revoke token authorities to signal that no additional tokens can be minted:

  • Mint authority - Revoke to prevent new token minting
  • Freeze authority - Revoke to prevent token freezing

See Getting Started for details on authority management.

FAQ

What is Genesis?

Genesis is a Metaplex smart contract for Token Generation Events (TGE) on Solana. It provides on-chain infrastructure for presales, launch pools, and auctions with coordinated token creation and distribution.

What launch mechanisms does Genesis support?

Genesis supports three mechanisms: Launch Pool (proportional distribution with price discovery), Presale (fixed price), and Uniform Price Auction (bid-based with clearing price).

How much does it cost to use Genesis?

Genesis charges a 2% protocol fee on deposits. There are no upfront costs—you only pay Solana transaction fees plus the protocol fee on funds raised.

Can I revoke token authorities after launch?

Yes. Genesis provides revokeMintAuthorityV2 and revokeFreezeAuthorityV2 instructions to permanently revoke authorities.

What's the difference between Launch Pool and Presale?

Presale has a fixed price set upfront. Launch Pool discovers price organically—more deposits means higher implied price per token, with proportional distribution to all participants.

Can I combine multiple launch mechanisms?

Yes. Genesis uses a bucket system where you can add multiple inflow buckets and configure outflow buckets for treasury or vesting.

Glossary

TermDefinition
Genesis AccountCentral coordinator that creates the token and manages all buckets
BucketModular component that defines token/SOL flow
Inflow BucketBucket that collects SOL from users
Outflow BucketBucket that receives funds via end behaviors
Launch PoolDeposit-based distribution where price is discovered at close
PresaleFixed-price sale at a predetermined rate
Quote TokenThe token users deposit (usually wSOL)
Base TokenThe token being launched and distributed

Next Steps

  1. Getting Started - Understand the Genesis flow
  2. JavaScript SDK - Installation and setup
  3. Launch Pool - Build a proportional distribution launch
  4. Presale - Build a fixed-price sale