Whitepaper
What UniPad charges, how a launch works, what is locked and who can touch it, read from the code and the contracts. Every fee is also shown in the app before you sign.
1Overview
UniPad is software that builds transactions for you to check and sign in your own wallet: token launches, trades, bridges, burns and locks. It never holds your keys or your funds. Every transaction runs on the chain and on the outside protocols it uses.
Fees come in two kinds. The app fee (0.3%) is charged by this app on trades it builds; the platform owner sets it and can change it, up to 10%. An on-chain fee is charged by a token's or a pad's own contract, on any app. The app fee is charged on every swap and bundle, on top of any on-chain fee; each is its own line in the quote.
2Fees
- Launch fees. EVM pads charge the creation fee fixed in each pad (free by default; the live values are below). STARKPad direct pool launches: 1% of supply goes to the platform at launch, added by this app and checked before listing (the pool contracts don't enforce it). STARKPad curve launches: coming with the next pad version. Other chains read theirs from the pad before you sign. 1% of supply to the platform at launch on EVM and other chains: coming with the next pad version.
- Creator tax. Charged on buys and sells, to the creator: meme tokens up to 2%, utility tokens up to 6%. On EVM the creator can send part of it to holders (paid in the pairing asset or a chosen token) or to a marketing wallet. On a Uniswap v3 pool the tax only catches trades routed through this app; v2 pairs and hook pools catch every route.
- Anti-snipe premium. EVM: an extra launch tax of up to 30% that steps down 5% at a time to the normal tax within at most 7 days; 100% of the extra goes to the platform. STARKPad curve: up to 30% on early buys, falling to 0 within at most 60 minutes, to the platform. STARKPad direct launches: 5 min: max 2% per wallet, 1% per buy (standard) or 15 min: max 1% per wallet, 0.5% per buy (strict).
- Pool fee splits. EVM locked pools: 50% of trading fees to the creator, the rest to the platform; a v2 pair keeps its fees inside the pair. Creator rewards go to the creator, minus a platform share the owner sets and can change, up to 50% (coming with the next pad version). The any-token swap router charges 0.5% today; with the next router version the owner can change it, up to 1%. STARKPad graduated curves: 80% to the creator. STARKPad direct pools: the platform takes 20% of the pool fee after tax (lockers v4 and v5), and holders can get 0, 25, 50, 75, 100% of the creator's part.
- KYC. $299 per token application, paid by the creator. It pays for a review and never buys a badge; refunds are handled by hand.
| Fee | Rate | Paid by / goes to | Set in |
|---|---|---|---|
| App fee on swaps, bundles and bulk trades | 0.3% | You, on every swap, bundle and bulk trade this app builds, to the platform. Charged on top of any on-chain token fee, as its own quote line. Only a trade on a launch's own bonding curve is exempt. Set by the platform owner and can change, up to 10%. This is the rate in force now. | APP_FEE_BPS (env), default APP_FEE_DEFAULT_BPS · lib/appFee.ts |
| App fee ceiling | 10% | The most the platform owner can set. Coming with the next pad version: the app fee is paid inside the trade itself, one transaction, under the same cap in the contract. | MAX_APP_FEE_BPS · src/PadFeeRouter.sol |
| Bundle fee (EVM launch bundles) | 0.3% | The bundle's payer, on top of what the wallets spend. | BUNDLE_FEE_BPS · lib/chains.ts |
| Bundle fee ceiling (LaunchBundler) | 5% | The most the bundler contract can ever take. | MAX_FEE_BPS · live-constants/LaunchBundler.live.sol |
| Any-token swap router (Arc, Base, BNB Chain, Monad) | 0.5% | You, taken from the input by the router contract. The app adds nothing on top. The swap page reads the router's fee before you sign. Coming with the next router version: set by the platform owner and can change, up to 1%. | SWAP_FEE_BPS · lib/chains.ts |
| Trade referral reward | 0.1% | Paid to your referrer out of the platform's fee. You pay nothing extra. | REFERRAL_BPS · server/referrals.ts |
| KYC application | $299 | The token's creator, in USDC or the chain's coin (within 3% of the price). Buys a review, never a badge. | KYC_FEE_USD_DEFAULT · lib/kycApply.ts |
Each pad's trade fee and creation fee are read from its contract, in the table below this one.
| Fee | Rate | Paid by / goes to | Set in |
|---|---|---|---|
| Creation fee (deploy default) | Free | Fixed in each pad at deploy; the live value is below. | CREATION_FEE · script/DeployMainnet.s.sol |
| Creator tax, meme token | 0 to 2% | Buyers and sellers, to the creator (and holders or a marketing wallet, as the creator splits it). | MEME_TAX_CAP · live-constants/Launchpad.live.sol |
| Creator tax, utility token | 0 to 6% | Same as above. | UTILITY_TAX_CAP · live-constants/Launchpad.live.sol |
| Anti-snipe launch tax | up to 30% | Early buyers. Steps down 5% at a time to the normal tax, within at most 7 days. | MAX_LAUNCH_TAX · live-constants/Launchpad.live.sol |
| Anti-snipe premium share | 100% | Of the part above the normal tax, to the platform. | ANTI_SNIPE_PLATFORM_BPS · src/LaunchToken.sol |
| Platform share of creator rewards | Up to 50% | Creator rewards go to the creator, minus this share. Set by the platform owner and can change. Coming with the next pad version. | MAX_PLATFORM_SHARE_BPS · src/TimelockLocker.sol |
| Locked LP trading fees, creator share | 50% | To the creator; the rest to the platform. Fixed in the locker. | CREATOR_LP_FEE_BPS · script/DeployMainnet.s.sol |
| Graduation fee | None | Everything the curve raised goes into the pool. | _graduate · live-constants/Launchpad.live.sol |
A curve from your opening value to the multiple you pick, then a bin pool whose fee rises with volatility.
| Fee | Rate | Paid by / goes to | Set in |
|---|---|---|---|
| Launch fee on buys | 3% falling to 0.25% | Buyers, over the first 10 minutes. The pool never charges less than 0.25%. | cliffFeeNumerator · client/dlmmLaunch.ts |
| Trading fees, creator share | 50% | To the creator; the rest to the platform. | creatorTradingFeeBps · client/dlmmLaunch.ts |
| Migration fee | None | Moving the curve into the bin pool. | migrationFeePercent · client/dlmmLaunch.ts |
Set per launch, inside the contract's range. The owner can lower it for a launch, never raise it.
| Fee | Rate | Paid by / goes to | Set in |
|---|---|---|---|
| Arc launcher | 0 to 6% | Every trade, on any app. Default 1%; fixed per launch, can only be lowered. | MAX_PLATFORM_FEE_BPS · arc/ArcV4Launcher.sol |
| EVM pads, next version (coming soon) | 0 to 6% | Every trade, on any app. Fixed per launch, can only be lowered. | MAX_PLATFORM_FEE_BPS · src/LaunchToken.sol |
| Sui (testnet) | up to 6% | Every trade through the pad. Creator part up to 5% on top. Can only be lowered. | MAX_PLATFORM_FEE_BPS · sources/launchpad.move |
| Aptos (testnet) | up to 5% | Platform and creator together, every trade through the pad. | MAX_FEE_BPS · sources/launchpad.move |
| NEAR (testnet) | 0 to 6% | Every trade. Creator fee up to 1% on top. Can only be lowered. | MAX_PLATFORM_FEE_BPS · near/arcpadNear.ts |
| Stellar (testnet) | 0 to 6% | Every trade, on any app. Creator fee up to 1% while on the curve. Can only be lowered. | MAX_PLATFORM_FEE_BPS · src/lib.rs |
| Tron (coming soon) | 0 to 6% | Every trade, on any app. Can only be lowered. | MAX_PLATFORM_FEE_BPS · tron/pad.ts |
| Starknet, fee-locker launches | 1% to 6% | Every trade, on any app, inside the pool fee. Default 1%; contract ceiling 6%. Can only be lowered. | feeLockerMinBps / feeLockerMaxBps · starknet/v2.json |
Circle's own fast-transfer and forwarding fees, and other bridges' fees, are passed through as quoted by them.
| Fee | Rate | Paid by / goes to | Set in |
|---|---|---|---|
| USDC bridge to and from Arc (Circle CCTP) | 1% | You, on the source chain, before the transfer. The operator sets it; this app never quotes above 5% (default 2%). | DEFAULT_BRIDGE_FEE_BPS · lib/cctp.ts |
| Bridge referral reward | 0.2% | Paid to your referrer out of the bridge fee above. You pay nothing extra. | BRIDGE_REFERRAL_BPS · lib/cctp.ts |
| Any-asset bridge and bulk send | 0% | No platform fee. The route's own bridge and gas fees are shown before you sign. | INTEGRATOR (no fee parameter) · bridge/route.ts |
| STARKPad bridge, in or out of Starknet | 1% | You: on the source chain, or on Starknet in the deposit transaction. | STARKPAD_FEE_BPS · starknet/fees.ts |
| Fee | Rate | Paid by / goes to | Set in |
|---|---|---|---|
| App fee on swaps, bundles and the opening buy | 0.3% | You, on top of any on-chain fee. Not on curve trades or your own curve dev buy. | swapFeeBps · starknet/fees.ts |
| Direct pool launch | 1% of supply | Goes to the platform at launch: a transfer this app adds to the launch, checked before listing, not a contract rule. Curve launches: coming with the next pad version. | STARKPAD_FEE_BPS · starknet/fees.ts |
| Bonding curve, platform fee | 1% | Every buy and sell on the curve. Contract ceiling 2%. | protocolFeeBps · starknet/curvePad.json |
| Bonding curve, creator fee | 0.3% | Every buy and sell on the curve, to the creator. Contract ceiling 1%. | creatorFeeBps · starknet/curvePad.json |
| Curve anti-snipe premium | up to 30% | Early buyers, to the platform. Falls to 0 over at most 1 hour. | MAX_LAUNCH_FEE_BPS · starknet/curvePad.ts |
| Curve graduation fee | None | Every STRK raised goes into the pool (rounding dust aside). | graduationRaise · starknet/curvePad.ts |
| Graduated pool fees, creator share | 80% | To the creator; the rest to the platform. | lpCreatorShareBps · starknet/curvePad.json |
| Direct pool fee tier | 1% or 0.3% | Every trade in the pool, to the pool's fee split below. | LAUNCH_TIERS · starknet/constants.ts |
| Direct pool fees, platform share (lockers v4 and v5) | 20% | Of the pool fee left after tax. The owner can change it, up to 30%, for every launch in that locker. | platformBps · starknet/v2.json |
| Creator tax, meme token | 0 to 2% | Inside the pool fee, to the creator. Up to 50% of its token side can be burned. | MEME_TAX_CAP_BPS · starknet/constants.ts |
| Creator tax, utility token | 0 to 6% | Same as above. | UTILITY_TAX_CAP_BPS · starknet/constants.ts |
| Bridge | 1% | You, on the source chain or in the deposit transaction. | STARKPAD_FEE_BPS · starknet/fees.ts |
Sui and Aptos
TestnetEach market's fee is read from the pad and shown before you sign. A single trade through the pad pays no app fee.
| Fee | Rate | Paid by / goes to | Set in |
|---|---|---|---|
| Sui platform fee | up to 6% | Every trade through the pad, to the platform. Can only be lowered. | MAX_PLATFORM_FEE_BPS · sources/launchpad.move |
| Sui creator fee | up to 5% | Every trade through the pad, to the creator. | MAX_CREATOR_FEE_BPS · sources/launchpad.move |
| Sui creation fee ceiling | 10 SUI | Read from the pad before you sign. | MAX_CREATE_FEE · sources/launchpad.move |
| Sui bundles and bulk buys | 0.3% | The app fee, on top, in the same transaction. | APP_SWAP_FEE_BPS · lib/appFee.ts |
| Aptos fee (platform and creator) | up to 5% | Every trade through the pad. Aptos bundles carry no app fee yet. | MAX_FEE_BPS · sources/launchpad.move |
NEAR
Testnet| Fee | Rate | Paid by / goes to | Set in |
|---|---|---|---|
| Platform fee | 0 to 6% | Every trade. Can only be lowered. | MAX_PLATFORM_FEE_BPS · near/arcpadNear.ts |
| Creator fee | 0 to 1% | Every trade, to the creator. | MAX_CREATOR_FEE_BPS · near/arcpadNear.ts |
| Graduation fee ceiling | 3% of the raise | To the platform, if the pad sets one. | MAX_GRADUATION_FEE_BPS · src/lib.rs |
| Anti-snipe premium | up to 30% | Early buyers, for at most 1 hour. | MAX_ANTI_SNIPE_BPS · near/arcpadNear.ts |
| App fee (bulk buys, trades after graduation) | 0.3% | You. Curve trades and the opening buy pay none. | APP_SWAP_FEE_BPS · lib/appFee.ts |
Stellar
Testnet| Fee | Rate | Paid by / goes to | Set in |
|---|---|---|---|
| Platform fee | 0 to 6% | Every trade on the curve, then on every pool trade on any app. Can only be lowered. | MAX_PLATFORM_FEE_BPS · src/lib.rs |
| Creator fee | 0 to 1% | Curve trades, to the creator. | MAX_CREATOR_FEE_BPS · src/lib.rs |
| Creation fee ceiling | 100 XLM | Read from the pad before you sign. | MAX_CREATE_FEE · src/lib.rs |
| Graduation fee ceiling | 2,000 XLM | Read from the pad before you sign. | MAX_GRADUATION_FEE · src/lib.rs |
| App fee (pool trades, bundles) | 0.3% | You. Curve trades and the creator's own buy pay none. | APP_SWAP_FEE_BPS · lib/appFee.ts |
Tron and Solana
Coming soon| Fee | Rate | Paid by / goes to | Set in |
|---|---|---|---|
| Tron platform fee | 0 to 6% | Every trade, on any app. Can only be lowered. | MAX_PLATFORM_FEE_BPS · tron/pad.ts |
| Tron creator tax | meme 2%, utility 6% | Buyers and sellers, to the creator. | MEME_TAX_CAP / UTILITY_TAX_CAP · tron/curve.ts |
| Tron anti-snipe launch tax | up to 30% | Early buyers. | MAX_LAUNCH_TAX · tron/curve.ts |
| Solana trade fee ceiling | 5% | Every trade through the pad. | MAX_FEE_BPS · src/constants.rs |
EVM pads, read live from each contract
| Network | Curve trade fee | Pool trade fee | Creation fee |
|---|---|---|---|
| Reading the contracts… | |||
Source: each pad's tradeFeeBps(), its LaunchRouter's platformFeeBps() and creationFee(). Unread means the network did not answer; it is not a zero.
DAO launchpad (Arc testnet): its 1% trade fee is split creator 30%, holders 20%, referrer 10%, airdrop 5%, stakers 20%, treasury 15%. See Governance.
3How launches work
Bonding curve
EVM: the token's 1 billion supply is minted once; 800M is sold along the curve and 200M is kept for the pool. Each pad sets its curve trade fee (live values above).
STARKPad: 793.1M of 1B tokens are sold on the curve and 206.9M go to the pool. The curve starts from a virtual 49,000 STRK by default, never below 12,250 STRK. Fees: 1% to the platform and 0.3% to the creator on every buy and sell.
Sui, Aptos, NEAR and Stellar use the same 793.1M / 206.9M shape, with each market's fee read from the pad.
Graduation
EVM: when the curve reaches its target or sells out, everything it raised goes into the pool; there is no graduation fee. On BNB Chain, Base, Monad, ZKsync Era a curve graduates onto a v2 pair, and from then on the tax applies to every route. If someone parked their own liquidity in that pair first, the extra quote left over goes to the platform; the raise itself never does.
STARKPad: the buy that takes the last token completes the curve and, in the same transaction, moves 206.9M tokens and every STRK raised into a full-range Ekubo pool held by the pad forever. No graduation fee.
Direct pool launches
EVM: the pool opens with your token only and trades from the first block. You choose the opening value between 100 and 10,000,000 units of the pairing asset (about $1 each). On Arc, new launches open a Uniswap v4 pool through the Arc launcher; its LP is locked for 90 days like every EVM launch.
STARKPad: one transaction creates the token and an Ekubo pool with its liquidity locked forever. The opening value is at least $1,000, at least 80% of the supply goes into the pool, and your opening buy is at most 5% of the supply.
Pairing assets
Pair your token with a stablecoin, a major, a stock or a meme token. Next to each asset the app shows its depth within 2% of the price: Deep from $1,000,000, Thin under $50,000. A thin pairing asset costs your buyers more to enter and leave.
Stock tokens are picked by contract address, never by ticker: a ticker proves nothing. Robinhood Chain's tokenized equities are the issuer's own contracts. On Arc, tokens named after companies have nothing on chain behind the name, and one key can pause them.
- Arc: USDC, cirBTC, EURC, CRCL, NVDA, AAPL, WETH, AMC, ANTHROPIC, GME, SPCX, OPENAI, SPY, TSLA
- Robinhood Chain: WETH, USDG, USDe, VIRTUAL, TTWO, MSFT, NVDA, GOOGL, USAR, USO, NFLX, SPY, QQQ, GME, MSTR, AAPL and 80 more
- BNB Chain: WBNB, USDT, USD1, USDC, BUSD, DAI, BTCB, Cake, ETH, XRP, LINK, ADA, XVS, DOT, LTC, MATIC
- Base: WETH, USDC, EURC, USDT, DAI, cbBTC, wstETH, cbETH, weETH, rETH, AERO
- Monad: WMON, AUSD, USDC, USDT0, WBTC, WETH, cbBTC, LBTC, APR, Cake, aprMON
- ZKsync Era: WETH, ZK, WBTC, wstETH, weETH, DAI
- Starknet: STRK, USDC, ETH, USDT, WBTC, strkBTC, tBTC, SolvBTC, wstETH, xSTRK, EKUBO, ZEC, DAI, USDC.e
Bundles and bulk buys
EVM: one payer buys for many wallets at launch, up to 20 wallets on today's pads (200 on the next ones). The app fee (0.3%) is added on top of what the wallets spend.
STARKPad: up to 200 wallets, 200 per transaction on the curve and 24 per transaction on Ekubo. Your dev buy and the bundle together are at most 25% of the supply, shown on the token page. A bundle can never complete the curve.
Supply kept aside (Arc)
An Arc launch can set supply aside for up to 20 wallets: 20% of the supply by default, never more than 30%, unlocked, on a cliff or vesting for up to 10 years. Creating allocations needs a passcode from the platform. Every allocation is public on chain and shown on the token page and holder list.
4Liquidity locking
EVM
- Every EVM launch locks its LP for 90 days. There is no other option.
- After that the platform holds the LP and can withdraw it. The token page says so on its lock row.
- Launches made before this keep the lock they were made with, shown on their token page as read from the chain: older locks release to the creator, and burned LP stays at a dead address.
- The trading fees a locked pool earns can be collected at any time without touching the liquidity.
Starknet
Every STARKPad launch's liquidity is permanent: the pool position is held by a contract with no withdraw function (the curve pad, the lockers, or the fee locker inside Ekubo), or sent to a dead address. Only the fees can be collected. Personal locks made in Tools unlock on their date.
Sui, Aptos, NEAR, Stellar
The graduated pool's liquidity has no withdrawal path: it stays in the pool forever.
Takeover powers against rugs
The platform can move a launch's fee rights: the creator's share of pool fees and the tax receiver can be reassigned, for example to the token's holders after a creator abandons it. On EVM this applies to launches on ZKsync Era. On STARKPad it applies to curve launches and to launches on locker v5 and the fee locker. Each launch form says so before you sign.
On STARKPad lockers v4 and v5 the platform can also change its share of the pool fee, up to 30%, for every launch in that locker.
5Networks
Live
- ArcLiveCircle L1 · USDC gas · REAL FUNDS
6Contract addresses
›Arcchain 5042
›Robinhood Chainchain 4663
›BNB Chainchain 56
›Basechain 8453
›Monadchain 143
›ZKsync Erachain 324
›Sui Testnet
›Aptos Testnet
›NEAR and Stellar
›Starknet (STARKPad)
7Risks and disclaimers
- Prices move between the quote and the fill. Thin pools mean high price impact. A transaction can fail and still cost gas.
- Bridges, swaps and pools depend on outside protocols, which can be slow, paused or fail. Smart contracts can have bugs; parts of ours are not externally audited yet.
- Burns and permanent locks cannot be undone, by you or by the platform.
- A badge (KYC, Official) is an opinion about a team, not a promise about a token. A clean scan is not a safe token.
- Testnet tokens have no value. Anything marked Coming soon is not live.
- You are responsible for what you sign and for following the laws where you live.
Full terms: Terms and disclosures.