Pre-launch · built and tested

Fair launch auction

Sell part of a new coin’s fixed supply for SOL at one price for everyone, then pool the raise on PumpSwap, or refund every deposit if it falls short.

  • VEYDUCT fee1% of a successful raise
  • Priceone for all
  • Falls shortfull refund
  • LPlocked for good

Practice run · simulated · nothing is sent

Practice run

The practice run loads with the page. It needs JavaScript; nothing is signed or sent.

With your wallet

Plan, create and settle an auction

Set the terms and watch the plan preview update. Creating the auction, and every step after it, is checked against mainnet in a dry run before your wallet is asked to approve.

Checking the published deployment…

Token supplyStep 1 of 4
whole tokens

For example 1000000000, without commas. Nobody can create more tokens after creation, so this supply is fixed forever.

Who gets the supplyStep 2 of 4

Shares total 100%

For example 50 / 40 / 10. Percentages of total supply, at most two decimals. The creator share stays escrowed until the pool opens, so bidders know it can’t be sold early.

The raiseStep 3 of 4
SOL

For example 10. Below this at close, every deposit is refunded in full, so set the least the launch needs.

Opens the PumpSwap pool with the pool tokens. The rest, less the VEYDUCT fee (1% of the raise), goes to the creator after migration. At most 99% while the fee is 1%.

WindowStep 4 of 4
local time

Leave blank to start five minutes after creation.

hours

For example 24. At most 720 hours (30 days). Deposits stay locked until the window closes.

No wallet connected.
Review only · approval opens when this tool goes live Wallet approval opens when this tool goes live.

Everything the auction program does, and does not do

Checked against the program’s source and this page’s own code.

Price
One price for everyone: raise ÷ tokens sold
Falls short
Every deposit refunded in full, no fee
VEYDUCT fee
1% of a successful raise (max 2%). Nothing else
Liquidity
PumpSwap pool; the Liquidity-provider tokens: the receipt for the pool’s SOL and coins. Whoever holds them can withdraw the liquidity. Here the program keeps them for good. stays locked for good
Timing
Window up to 30 days, then 7 days to open the pool
Example

Accounts the program creates

Every account has an address derived from fixed seeds (a Program-derived address: an account address computed from fixed words and the program’s id. It has no private key; only the program can sign for it.), so the page finds an auction from its coin alone and nobody can swap in a look-alike.

Auction

The terms (window, shares, minimum, caps, pool share, fee rate) and the running totals: deposited, bidders, settled, claimed, refunded, raise, pool SOL and fee paid.

Seeds
"auction", coin mint
Size
248 bytes
Created by
Create

SOL escrow

A system account only the program can sign for. Deposits sit here; SOL leaves only to a bidder, the pool, the creator’s fixed share or the VEYDUCT fee.

Seeds
"treasury", auction
Rent floor
0.00065024 SOL, paid by the creator
Created by
Create

Coin escrow

The auction’s token account. The whole supply moves here at creation, so nobody holds a token before the pool opens.

Address
Associated token account of the auction
Size
165 bytes
Created by
Create

Your deposit

One per wallet per auction: how much SOL you put in. Closed when you claim or refund, and its rent comes back to you.

Seeds
"position", auction, your wallet
Size
88 bytes
Created by
Your first deposit

Pool creator

A program address that opens the PumpSwap pool (index 0) and keeps its LP tokens for good. It signs nothing else and keeps no SOL.

Seeds
"pool-creator", auction
Holds
All LP tokens, forever
Used by
Open the pool

Fee setting

The VEYDUCT fee rate for new auctions. Each auction copies the rate when it is created; later changes never touch it.

Seeds
"veyduct-fee-config"
Size
32 bytes
Changed by
VEYDUCT’s fee wallet only, max 2%

Who can do what

  • ActionWho signsRules the program enforces
  • CreateAny wallet; it becomes the creatorA classic SPL coin with no mint or freeze authority whose whole supply (sale + pool + creator) moves into escrow; a window of at most 30 days that ends in the future; at least 1,000,000,000 raw units for sale; a minimum raise of at least 0.001 SOL; pool share plus fee at most 100%; an immutable program.
  • DepositAnyoneOnly inside the window, at least 0.001 SOL, and never above the per-wallet cap. There is no withdrawal while the window is open.
  • Open the poolAnyoneAfter close, within 7 days, and only if the minimum was met. It moves exactly the pool’s SOL share and pool tokens, checks the pool took exactly those amounts and pays the fee to the fixed fee wallet.
  • ClaimThe bidderAfter the pool opens: tokens at the clearing price plus any refund above the cap, to the bidder’s own token account.
  • RefundThe bidderBelow the minimum, or no pool 7 days after close: the whole deposit back.
  • Creator settlementThe creator, onceAfter the pool opens: the raise minus the pool share and the fee, plus the creator tokens. After a failed auction: the whole escrowed supply back.
  • CloseThe creatorAfter the creator and every bidder have settled. Rounding dust tokens are burned; every remaining lamport, rents included, goes to the creator.
  • Take bidders’ SOL elsewhereNobodyNo instruction pays escrowed SOL to anyone except the bidder, the pool, the creator’s fixed share or the VEYDUCT fee. The LP cannot be withdrawn.

Anyone can create an auction for a coin they mint here. Check the coin address, the creator share and the pool share before you deposit.

Clearing math, with a worked example

SOL amounts on chain are The smallest unit of SOL: 1 SOL is 1,000,000,000 lamports. (1 SOL is 1,000,000,000) and token amounts are raw units (1 token with 6 decimals is 1,000,000).

There are no bid prices. Everyone deposits SOL, and after close everyone pays the same The one price every bidder pays, set at close: the raise divided by the tokens for sale. Depositing early or late does not change it.: the raise divided by the tokens for sale. Every division rounds down.

  1. The raiseraise = min(total deposited, raise cap)With no cap, the price simply rises with demand.
  2. Your tokenstokens = your deposit × tokens for sale ÷ total depositedEvery bidder gets the same share of the sale as their share of all deposits.
  3. Your refund above the caprefund = your deposit × (total deposited − raise) ÷ total depositedZero unless deposits went past the cap.
  4. Where the raise goespool = raise × pool share · fee = raise × 1% · creator = raise − pool − feeThe fee comes out of the creator’s side, so the pool always gets its full share.

Example

  1. 1,000,000,000 tokens: 50% sold, 40% into the pool, 10% to the creator.Minimum 10 SOL, cap 30 SOL, 80% of the raise into the pool.
  2. You deposit 5 SOL, B 12 SOL, C 20 SOL.total 37 SOL → raise 30 SOL → price 30 ÷ 500,000,000 = 0.00000006 SOL per token
  3. You claim.5 × 500,000,000 ÷ 37 = 67,567,567.567567 tokens and 5 × 7 ÷ 37 = 0.945945945 SOL back: you paid 4.054054055 SOL.
  4. The pool opens.Pool 24 SOL + 400,000,000 tokens (it opens at the same 0.00000006 SOL per token), VEYDUCT fee 0.3 SOL, creator 5.7 SOL + 100,000,000 tokens.
  5. Rounding.Claims add up to 1 raw unit less than the sale (burned at close) and refunds to 2 lamports less than the 7 SOL above the cap (returned to the creator at close).

Run the same steps in the Practice tab: it uses the page’s own planner and the SDK’s clearing functions, so you will see these numbers.

Costs

VEYDUCT fee: 1% of the cleared raise · max 2% · set by VEYDUCT. It is charged only when the pool opens, out of the creator’s side of the raise; the pool’s SOL and bidder refunds are unchanged, and failed auctions pay no fee.

VEYDUCT feeFixed into each auction when it is created. Paid from escrow to VEYDUCT’s fee wallet in the transaction that opens the pool.
1% of the raise
Creating the auctionCoin mint (82 bytes), your token account and the coin escrow (165 bytes each), the auction (248 bytes) and the SOL escrow’s rent floor, at mainnet rent of 5,080 lamports per byte plus 128 bytes per account; two signatures.
0.006614 SOL
Your first depositYour deposit record (88 bytes). Returned when you claim or refund.
0.00109728 SOL
Opening the poolRent for the PumpSwap pool’s five accounts, kept by the pool. Whoever opens it also needs 0.05 SOL free for a moment; the unused part comes back in the same transaction.
0.00766572 SOL
ClaimingOnly if your wallet has no token account for the coin yet.
0.00148844 SOL
Network feePer transaction, per signature.
0.000005 SOL

Closing the finished auction returns the auction, coin escrow and SOL escrow rent to the creator. Your token account stays yours.

Timing

  • Scheduled, then open. Deposits are accepted from the start time until the end time; the window is at most 30 days. On this page the start defaults to five minutes after creation.
  • Closed above the minimum. Anyone can open the pool, starting at the end time, for 7 days.
  • Refunding. Below the minimum at the end time, or no pool 7 days after it: every deposit can be refunded in full, for as long as it takes.
  • No early exit. Deposits cannot be withdrawn while the window is open, and the creator cannot end it early.

Edge cases and what can go wrong

Oversubscribed

Deposits above the cap are refunded pro rata in the same claim; everyone still pays one price.

Nobody opens the pool

After 7 days the auction refunds instead, and the creator takes the escrowed supply back.

Accounts prepared by someone else

Opening the pool tolerates pre-created or pre-funded accounts and uses only exact amounts, so it cannot be blocked that way.

Wallet cap

A deposit that would take your total past the per-wallet cap is refused before anything is signed.

Rounding dust

Tokens left over from rounding claims down are burned at close; leftover lamports go to the creator.

Stale review

Each wallet action is dry-run against mainnet and the resulting auction state is checked against what you reviewed before your wallet opens.

FAQ

Do early bidders get a better price?

No. There is one clearing price for everyone, set at close by the raise and the tokens for sale. Timing inside the window does not matter.

Can the creator take the SOL and run?

No. The creator’s SOL is a fixed share paid only after the pool opens, and the pool share goes straight into PumpSwap with its LP held by the program for good.

Can I get my SOL back before the auction ends?

No. Deposits are locked during the window. After close you either claim tokens (with any refund above the cap) or, if it failed, refund everything.

What if the minimum is not reached?

Every bidder refunds the whole deposit, the creator takes the whole supply back, and no VEYDUCT fee is charged.

Which coins can be auctioned?

A new classic SPL coin with a fixed supply that this page mints for you, with the mint authority removed and no freeze authority. Existing Pump coins cannot be auctioned here, and because the coin is not a Pump coin it earns no Pump creator fee.

Can VEYDUCT change the fee on my auction?

No. The rate is copied into the auction when you create it. The fee wallet can change the rate only for auctions created later, and never above 2%.

Can the program be changed after launch?

The program refuses new auctions and deposits until its upgrade authority is revoked, and the page checks the exact program bytes before every wallet action.

Tested in this release

Test results are published with each release

Every release build runs the auction program’s exact pinned bytes and this page’s own transactions in an isolated Solana runtime (LiteSVM), with the mainnet PumpSwap and token programs captured read-only. This copy of the site has no build results attached; Release status lists the latest release.

  • Whole-supply escrow, window and wallet-cap checks, a capped and oversubscribed raise with exact floor-rounded claims and refunds.
  • The pool opens on the captured PumpSwap program with the fixed SOL share and the LP held by the program; exactly 1% of the raise reaches the fee wallet.
  • Below-minimum and 7-day refunds pay no fee; creator settlement, dust burn and close return every lamport.