Now liveStonkBlend is on StonkFun. Rounds run about every ten minutes, and nothing is claimed.

StonkBlendDocs

What StonkBlend is

StonkBlend is a Solana launchpad where every coin is a real StonkFun launch paired to STONK, and the coin's trading fees are turned into a basket of tokenized stocks the launcher chose and paid out to holders automatically, in proportion to what they hold.

Every trade on chain pays a fee to somebody. On almost every venue that somebody is the team, and holders get a token and a roadmap. We route it the other way. The fees arrive as STONK, the pad spends them on stocks, and the stocks go straight into holders' wallets, about every ten minutes.

The launcher. The launcher picks up to five xStocks. From then on, every trade of the coin earns STONK, the pad buys those stocks with it in equal parts by value, and holders receive the stocks in their wallets. Nobody claims anything.

The pair. Every coin here trades against STONK, not SOL. Fees therefore arrive in STONK already, which is what the pad swaps into the basket.

All of it is on chain

Every swap and every payout is a transaction. Each coin page lists its rounds and links to the transaction behind each one, so you can check any figure here yourself.

The wallets

Every fee this pad handles passes through one of these, and all of them are public. Nothing below is a claim you have to take on trust: open any of them and the transactions are the record.

WalletAddressWhat it does
Payout wallet9vQa…kL2dOne per coin. It is the coin's creator on chain, so StonkFun forwards the creator fee here. The keeper swaps its STONK into the basket and pays holders from it.
Ops wallet3nB9…xR1tReceives the 10 % ops slice off the top of every round, and pays network rent for payouts.
KeeperHq5w…c8LpSigns the swaps and the payouts. Holds the payout keypairs in v1.

The addresses the program itself runs on are at the bottom of this page.

How a coin works

Launch. A coin is a standard StonkFun launch, paired to STONK on Raydium's LaunchLab. The coin's creator, on chain, is its payout wallet, not the launcher's own wallet.

Earn. Every trade on the curve pays a 1 % platform fee to StonkFun. StonkFun forwards the creator's half, 0.5 % of the trade, to the coin's payout wallet automatically. There is nothing to claim. After graduation the Raydium pool charges a 1 % creator fee that StonkFun collects, and the coin's share arrives the same way.

Buy. Each round, the keeper takes a 10 % ops slice off the top of what arrived, then swaps the rest of the payout wallet's STONK into the basket through Jupiter, equal parts by value.

Pay. Holders are paid by their share of the coin at the snapshot. Accruals worth less than 0.005 SOL roll forward to the next round instead of being sent. Everything else is paid straight into the holder's own wallet.

What STONK is for

STONK is the quote token every coin here is paired to. It is what a trade pays its fee in, and what the pad holds between rounds. StonkBlend does not issue a token of its own.

Because every coin trades against STONK, every trade on the pad is also a STONK trade. That is the whole reason the pad pairs to it: the volume flows through one token, and the fees arrive in one asset the keeper knows how to swap.

What a launch is

A launch is one transaction. It creates the coin on StonkFun paired to STONK, sets the payout wallet as creator, and bundles your first buy if you asked for one. If your wallet is short of STONK when it lands, nothing launches: the buy and the launch fail together.

Once the coin is on chain the site records it, usually within a minute. Until then the coin page says a launch is still being recorded.

Before you sign

The coin launches on StonkFun, paired to STONK, with its payout wallet as creator. Every trade pays 1 %; StonkFun forwards the creator's half to the payout wallet. Every ten minutes the pad buys the basket and pays holders.

Where the fees go

Two splits, and both are fixed.

Of every tradeShareGoes to
StonkFun0.5 %The platform's half of the 1 % fee
Payout wallet0.5 %The creator's half, forwarded automatically in STONK
Of every roundShareGoes to
Holders90 %Swapped into the basket and sent out pro rata
Ops10 %The ops slice, taken off the top before the swap

After graduation the split does not change. The Raydium pool's creator fee is collected by StonkFun and forwarded the same way.

What holders earn

Holders earn the basket, not the coin. If a coin pays NVDAX, SPYX and TSLAX, a holder's wallet fills with NVDAX, SPYX and TSLAX. The amount depends on two things: how much the coin traded since the last round, and how large the holder's share of supply was at the snapshot.

Shares are by balance at the snapshot slot, which is recorded on every round. A holder who sells right after the snapshot is still paid for that round; a holder who buys right after it waits for the next one.

Choosing the basket

A basket is one to five xStocks, bought in equal parts by value. The launcher picks it at launch and it does not change afterwards.

Only stocks with a live Jupiter route are offered in the picker. A stock whose route dries up later is skipped, not replaced; see when a leg is skipped.

What a round does

The keeper runs a round for each coin about every ten minutes, and only when STONK has arrived since the last one.

01

Snapshot

Read every holder's balance at one slot and record the slot on the round.

02

Slice

Move 10 % of what arrived to the ops wallet.

03

Swap

Swap the rest into the basket through Jupiter, equal parts by value, one swap per leg.

04

Pay

Send each leg to every holder above the threshold, pro rata. Roll the rest forward.

Every step is a transaction on the coin page's rounds table, with a link to it.

When a leg is skipped

If a stock is delisted from Jupiter or its route dries up, that leg is skipped and its STONK rolls to the next round. The coin page says so on the round, and a paused stock stalls only its own payouts. The other legs pay as usual.

Custody, plainly

Each coin's payout wallet is a keypair only the keeper holds. The keeper could misdirect funds. Every swap and every payout is an on-chain transaction listed on the coin page, and the wallet's balance is public. A program that can only buy the basket and pay holders is the next version.

Launching from your own app

A launch here is three requests and one signature. This site's launcher makes exactly the same calls in the same order, so anything it can do, so can you. There is no key, no registration and no allow list.

What the API will not do is sign for you. It builds the transaction, partially signs the part only it holds, and hands it back. The coin's own key and the launcher's are yours to add, so a response leaving this server can do nothing on its own.

01

Quote

POST /api/launch/quote with the basket and the dev buy. Returns the STONK the launch will need and the rate at launch.

02

Prepare

POST /api/launch/prepare with name, symbol, uri, basket and creator. Returns a partially signed transaction and the coin's mint.

03

Confirm

Sign with the mint keypair and the creator wallet, send it, then POST /api/launch/confirm with the signature so the site records the coin.

// 2. prepare
const res = await fetch("https://stonkblend.fun/api/launch/prepare", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    mint: mintKeypair.publicKey.toBase58(),
    name: "My Coin",
    symbol: "MINE",
    uri: metadataUri,
    creator: wallet.publicKey.toBase58(),
    basket: ["NVDAX", "SPYX", "TSLAX"],
    devBuyPct: 0,
  }),
});
const { transaction } = await res.json();

// 3. sign and send
const tx = VersionedTransaction.deserialize(Buffer.from(transaction, "base64"));
tx.sign([mintKeypair]);
const signed = await wallet.signTransaction(tx);
const sig = await connection.sendRawTransaction(signed.serialize());

Not wired yet

The endpoints above describe the shape of the API. This site is a front end only for now; the calls return nothing until the pad's backend is connected.

The fields

FieldTypeNotes
mintstringBase58 public key of a fresh keypair you hold. It becomes the coin's mint.
namestringUp to 32 characters.
symbolstringUp to 13 characters, letters and numbers.
uristringMetadata JSON, pinned anywhere public.
creatorstringYour wallet. It signs, and it is recorded as the launcher. The payout wallet is the on-chain creator.
basketstring[]One to five xStock tickers from the picker.
devBuyPctnumber0 to 10. Share of supply to buy in the launch transaction, paid in STONK.

When it fails

StatusBodyMeaning
400invalid_basketA ticker is unknown or has no Jupiter route right now.
400symbol_too_longSymbol over 13 characters.
409mint_in_useThat mint already exists on chain.
429slow_downMore than ten prepares a minute from one address.
503stonkfun_unreachableStonkFun did not answer. Retry in a minute.

The numbers

Value
PairSTONK, on Raydium LaunchLab
Trading fee1 % on the curve, 1 % on the pool after graduation
Fee split0.5 % StonkFun · 0.5 % payout wallet
Round split90 % holders · 10 % ops
Round cadenceAbout every 10 minutes, when STONK has arrived
Basket1 to 5 xStocks, equal parts by value
Payout threshold0.005 SOL of accrued value; smaller amounts roll forward
Account rent~0.002 SOL per holder, per stock. We pay it, not you.
Dev buy0 to 10 % of supply, paid in STONK

What can go wrong

StonkFun stops forwarding creator fees, or changes the split, and rounds stop. The keeper raises an alert for the operator when a coin with trades has had no fee arrival for an hour.

A stock is delisted from Jupiter or its route dries up. That leg is skipped and its STONK rolls to the next round.

Holder count explodes. Payouts are threshold-gated, so cost scales with holders who actually earn enough, not with wallets that hold dust.

A holder sells right after the snapshot. Shares are by balance at the snapshot slot, which is the only defensible rule, and the slot is recorded on every round.

The keeper key is custodial in v1, which is why it is stated here in plain words.

The accounts

Every address this runs on. Placeholders until the pad is wired.

STONK mint6GmA…UNgx
LaunchLab programLanM…Wj4a
Ops wallet3nB9…xR1t
Jupiter routerJUP6…KtQ4