Fair Launch Window on Solana: Stop Block-0 Snipers
Delay trading on your Solana token pool by 30 seconds to 60 minutes. Block-0 snipers can't buy until the window closes — free, on-chain, stacks with anti-sniper fee decay.
The Problem With "Live the Moment You Click Launch"
Most Solana launchpads create the pool and open trading in the same instruction. The block your transaction lands in is the same block snipers are racing for. By the time your tweet reaches your community, a handful of bots already own a meaningful share of supply — and they're waiting for someone to push the price up so they can dump.
Anti-sniper fee decay helps. A 15% fee on a block-0 buy is painful. But it's still a fee: bots that believe in the price action will pay it. The only thing that truly stops block-0 sniping is making block-0 trading impossible.
That's what the Fair Launch Window does.
What Is a Fair Launch Window?
A Fair Launch Window is a delay between pool creation and trading activation. The pool exists on-chain from the moment you sign the transaction — wallets, aggregators, and explorers can index it — but every swap instruction reverts until your activation timestamp is reached.
Concretely:
- t = 0: You sign one transaction. The pool is created, your liquidity is permanently locked, and an activation timestamp is written into the pool account.
- t = 0 to t = activation: The pool is publicly visible. Price, liquidity, and your locked position are all on-chain. Any swap attempt fails on-chain.
- t = activation: Trading opens. Anti-sniper fee decay (if enabled) starts its clock.
There is no centralized "go" button. The contract decides when trading opens, based on a timestamp that anyone can read.
Why a Delay Beats Speed
Block-0 snipers win because they're faster than humans. The cheapest way to beat speed is to remove the race entirely. A 60-second delay turns a millisecond contest into a minute-long, public coordination problem.
The shape of the launch changes with the window:
| Delay | What it actually buys you |
|---|---|
| 30 seconds | DEX aggregators index the pool. Manual snipers see it. Block-0 bots are blocked. |
| 1 minute | Telegram and Discord get the link out. Your community can prepare. |
| 5 minutes | Twitter sees it. Real buyers have a chance to be first. |
| 30 minutes | Announced launches. Followers in different time zones can wake up. |
| 60 minutes (cap) | Heavily promoted launches with a known go-time. |
Any longer than 60 minutes is counterproductive — we'll get to that.
Why 30 Seconds to 60 Minutes (and Not Outside Those Bounds)
These limits are deliberate.
Below 30 seconds. Indexers, aggregators, and most wallets haven't fetched the pool account yet. Your launch isn't socially visible during the delay, so the delay buys zero coordination time. You're just adding 10 seconds of awkward UI to a launch that bots will still race normally.
Above 60 minutes. MEV searchers have enough time to set up dedicated infrastructure: priority-fee bidding, validator-side relationships, and pre-warmed wallets pointed at your activation timestamp. A 2-hour delay doesn't favor your community — it favors anyone with a Solana validator on speed dial. Long delays make the playing field more uneven, not less.
The sweet spot for most launches is 1 to 10 minutes. Long enough that the race becomes a public, observable thing (instead of a millisecond bot war), short enough that you don't lose launch momentum.
The Three Presets
SolFoundry ships three defaults plus a custom slider. Each is calibrated to a launch style.
1 Minute — Standard Guerrilla
For when your community is already watching. You drop the link in your Telegram, your followers refresh their wallets, the pool ticks live. No long announcement, no countdown timer in the marketing — just an unraceable opening.
Use when: small, attentive community; you don't want to telegraph the exact moment to outsiders.
5 Minutes — Recommended
The default for most launches. Long enough that anyone who sees your tweet can prepare. Short enough that you don't lose attention. Combined with anti-sniper fee decay on the Standard preset (15% → 0.25% over 30 minutes), the first hour of your launch becomes economically hostile to bots and friendly to anyone with patience.
Use when: public launch, social promotion, mixed audience.
30 Minutes — Announced Launch
For high-profile launches. You announce the activation time, your audience plans around it, your launch becomes a scheduled event instead of a stampede. Pair it with Aggressive anti-sniper (50% → 0.25% over 60 minutes) and you've effectively pre-empted the entire bot economy for the first half-hour.
Use when: known go-time, multiple time zones, anticipated sniper activity.
Custom — 30 Seconds to 60 Minutes
The slider. Want a 17-minute window because that's when your AMA ends? Set it. Want exactly 90 seconds? Set it. The range is hard-capped — values outside 30s–60min are rejected on-chain.
How It Pairs With Anti-Sniper Protection
The Fair Launch Window and anti-sniper fee decay solve different halves of the same problem.
- Fair Launch Window blocks the first wave outright. No buys are possible during the delay.
- Anti-sniper fee decay punishes the second wave economically. The bots that race the activation timestamp pay 15% (or up to 50%) on their first buys.
You want both. Without the window, decay still lets bots buy at block 0 — they just pay a high fee, which they may accept if they're confident in the price. Without decay, the window's last second becomes a new block-0 race.
The combination is the closest thing to "fair" a permissionless launch can get:
- The first 30s–60min: nobody buys.
- The next 15–60 minutes: high fees, decaying. Bots lose money. Real buyers pay slightly elevated fees and barely notice.
- After the decay window: standard 0.25% trading.
All of it is on-chain. All of it is configured atomically in the same transaction that creates and locks your pool. There are no separate fees for either feature.
How to Enable It
On SolFoundry's Liquidity Lock page:
- Paste your token mint or pick from "Your Tokens"
- Set how much SOL and how many tokens to deposit
- Toggle Fair Launch Window
- Pick a preset (1m / 5m / 30m) or use the custom field
- Optionally toggle Anti-Sniper Protection and pick Light / Standard / Aggressive
- Sign one transaction — pool is created, liquidity is locked, window is set
The activation timestamp is computed at the moment you sign (now + your selected delay). Once signed, it's immutable. Nobody — not you, not us — can extend or shorten the window after the fact.
How Buyers See the Window
The countdown is visible in three places:
- The success screen after launch, with the absolute UTC time and a live timer
- The Profile page on every launch card with a pending window
- The pool account itself — anyone reading the chain can see the activation timestamp, no SolFoundry trust required
The countdown isn't a feature of our app. It's data on Solana. The app just renders it.
Real Math: Why Block-0 Sniping Stops
Take a launch with the Standard anti-sniper preset (15% → 0.25% over 30 min) and a 5-minute Fair Launch Window:
Without the window:
- A bot lands in the pool-creation block, pays 15% fee on a 10 SOL buy → spends 1.5 SOL in fees, gets 8.5 SOL of tokens.
- Real buyers arrive 30 seconds later, push the price up 30%.
- Bot dumps at ~10% fee (partially decayed) on 11.05 SOL → pays 1.1 SOL in fees, walks with ~9.95 SOL.
- Bot net: ~ -1.55 SOL on this trade. Painful but recoverable on a strong launch.
With a 5-minute window + Standard decay:
- Bot transaction at t = 0 reverts. Cost: ~0.000005 SOL in failed-tx fees.
- Bot retries every block for 5 minutes. All revert.
- At t = 5 min, the window opens. Anti-sniper is at full 15% fee. The bot is now competing with every other bot, every aggregator, and every human who's been watching the timer.
- The bot's edge — being first — has evaporated. The race is now public, with thousands of would-be participants.
The window doesn't just lower the bot's profit; it removes the asymmetric advantage that makes sniping work at all.
Does the Delay Hurt Real Buyers?
For most launches, no. Real buyers wait minutes (or hours) anyway — they're scrolling Twitter, joining the Telegram, reading the docs. A 5-minute window is shorter than the time it takes to copy a contract address into a wallet.
For launches with a hyper-engaged community sitting on the link, the window adds friction equal to your delay. That's the tradeoff: you're trading some impatience from your most loyal buyers for protection from bots. Most creators take that trade.
If you're worried about it, use 1 minute. It's enough to break the block-0 race and short enough that nobody complains.
What the Fair Launch Window Is Not
- Not a presale. No allocation, no whitelist. Anyone can buy when the window closes.
- Not a vesting schedule. Liquidity is permanently locked at creation; the window only delays trading.
- Not a soft launch. The pool is fully published from t = 0. There's no second transaction to "really" launch later.
- Not a kill switch. You can't cancel the window or close the pool. The activation timestamp is immutable.
It's a single, narrow tool: delay trading by 30s–60min so block-0 snipers can't buy.
FAQ
Can I change the activation time after I launch? No. The timestamp is set when you sign the create-pool transaction and cannot be modified afterwards — by us, by you, or by anyone. This is by design: a configurable timer would just create a new attack surface.
Does the Fair Launch Window cost anything? No. It's free, included in the standard pool creation flow on SolFoundry. The only cost is Solana network rent for creating the pool.
Can I use the window without Anti-Sniper Protection? Yes. They're independent toggles. The window blocks all trades during the delay; once the window closes, you'd open at the standard 0.25% fee. We recommend using both, but you can choose.
Does liquidity stay locked during the window? Yes. The pool is created and the LP position is permanently locked in the same atomic transaction. The lock is real from t = 0, regardless of when trading opens.
What happens if my activation timestamp is in the past? The transaction reverts. The on-chain validator enforces the same 30s–60min bounds the UI shows you. There's no way to launch with a "zero" or negative window — you'd just get a normal pool.
Can buyers see the window before they buy? Yes. The activation timestamp is part of the pool account, readable by anyone. SolFoundry renders a countdown on launch cards and the success screen, but the data is on-chain — wallets and aggregators can render their own countdowns from the same source.
Is this a Solana-only feature?
SolFoundry's implementation is Solana-only — we use Meteora DAMM v2's activationPoint. Other chains have similar concepts (Ethereum's tradingEnabled flags on tokens), but the on-chain mechanics differ.
Ready to launch with a Fair Launch Window? Head to SolFoundry's Liquidity Lock and toggle it when you create your pool — free, atomic, and irreversible.