Skip to content
HeldFor
Docs

How HeldFor works

Short version: launch a coin (or take one you already hold), put a bag of it in HeldFor's custody for an X account, and we release it only to that account.

How it works

  1. Launch.You pick a name, ticker, image and an X handle. We look the handle up on X and store the account's numeric user id, not the handle, so a later handle change can't redirect the bag. Suspended, non-existent and opted-out accounts are rejected.
  2. Lock. One transaction creates the coin on pump.fun, makes your dev buy (default 2% of supply, 0.1%–20%), and moves every bought token into HeldFor's custody wallet, booked as a bag for that X user id. If any step fails, nothing happens. Coins launched elsewhere can get bags too: see Lock an existing coin.
  3. Trade. The coin trades on pump.fun like any other. HeldFor is not a launchpad or an exchange.
  4. Receipts. @HeldForX posts public receipts when a bag is locked, when it passes $1k, $10k, $50k, $100k, $500k, $1M, and on claims, burns and graduation.
  5. Claim. The account owner logs in with X on /claim. For each bag they choose: vest it to a wallet, or burn it.

A coin can hold many bags: for several X accounts, and from several people for the same account. Each bag is its own entry in our ledger, claimed, vested or burned on its own. An account's total is the sum of all its bags. A coin only counts as held for @someone once the transfer into custody is confirmed on chain and checked by our server.

Lock an existing coin

Already launched on pump.fun, or just holding a pump.fun coin? On /lock, paste the coin's address, choose how many of your tokens to lock (at least 0.1% and at most 20%of the supply per lock) and who gets the bag. One wallet signature moves exactly that amount into HeldFor's custody wallet as a new bag. Anyone holding the coin can do this, not only its creator, and as many times as they like.

Launched on pump.fun?
  1. 1Launch as usual on pump.fun.
  2. 2Optional:on pump.fun's fee-sharing screen, add the HeldFor treasury as a shareholder. Your coin then shows a "Supports HeldFor" badge.924631nD…PNz3Tkth
  3. 3Lock your tokens on HeldFor for any X account. Anyone holding the coin can do this, not only its creator.

Coins whose mint or freeze authority is still set, or with token extensions that could move or freeze locked tokens, are refused. Bags under 0.1% of supply are hidden on public pages by default and never ranked, so nobody can flood an account with dust.

Fees

  • Deployer keeps 80% of the coin's pump.fun creator fees. The protocol receives 20% through pump.fun's native fee sharing, configured at launch. HeldFor never touches the split after that.
  • pump.fun's own feesapply to every trade and to coin creation, exactly as on any pump.fun coin. pump.fun sets and changes them; the creator fee is part of them. Check pump.fun's docs for current rates.
  • No extra HeldFor fee on launch, claim or withdraw. HeldFor pays the network fees of every withdrawal and burn, so the X account owner needs no SOL to claim.
  • Locking an existing coin costs a flat fee in SOL (default 0.01SOL; the actual amount is a server setting, can be 0, and is shown on /lock before you sign) paid to the protocol treasury in the same transaction, plus rent for the custody token account the first time a coin is locked. The protocol never takes any of the coin's tokens. Coins launched elsewhere can optionally share creator fees with HeldFor by adding the treasury on pump.fun's fee-sharing screen; they get a "Supports HeldFor" badge.
  • You pay the Solana network fees, rent, and the SOL for your dev buy when you launch.
  • HeldFor holds bags only in custody for their X accounts; it never takes tokens for itself. A future option to route part of protocol fees to buy back and burn a protocol token exists only as a disabled hook.

Vesting

When the owner claims with "vest", the bag streams linearly to the wallet they chose over 30 days. At any time, the vested part is amount × elapsed / 30 days. Our server sends each withdrawal from the custody wallet, and only ever to the stored destination wallet. The vesting length is a server setting; a change only applies to claims started after it.

Burn

Instead of vesting, the owner can burn the whole bag in one step: HeldFor burns it from the custody wallet. Burned tokens are destroyed on chain; they reduce supply and nobody receives them. Burning is final.

Opt-out

If you don't want bags locked for you, log in with X on /optout. We record the opt-out for your X user id and refuse every future launch or lock targeting you. You can also burn every existing unclaimed bag in the same step, whoever locked it. The bot never posts about opted-out accounts. See the opt-out policy.

Trust model: custody

Bags are held in HeldFor's custody wallet and released only to the verified X owner. There is no smart contract enforcing this: you trust HeldFor to do it. What that means:

  • One custody key controls every bag. If it were stolen or misused, every unclaimed and still-vesting bag could be lost.
  • Our server releases a bag only after an X login proves the account, only to the wallet that account picked, linearly over 30 days.
  • Large claims wait for a manual review before vesting starts. Every transfer out of custody is journaled before it is sent.
  • Anyone can check the custody wallet on chain. Each bag's deposit carries a memo heldfor:<bag id>, and every indexer pass checks that the wallet holds at least what all open bags add up to.
  • If our service is down, nobody can claim or withdraw until it is back; the tokens stay in the custody wallet meanwhile.

X mentions policy

  • The receipt bot posts only for real locks, milestones, claims, burns and graduation. No spam, no replies to people, no DMs.
  • It @mentions an account only if that account explicitly allowed it after logging in. Otherwise it writes the handle without the @, so nobody gets an automated unsolicited mention.
  • At most 2 posts per account per day, a global hourly cap, and never about opted-out accounts.
  • Every post links to the account's public HeldFor page.

Risks

  • Memecoins are extremely volatile. A bag worth $100k today can be worth $0 tomorrow. Bag values shown are estimates at the current price.
  • Anyone can launch a coin for anyone. A bag for an account doesn't mean that person endorses the coin.
  • Bags are in HeldFor's custody: a leaked custody key, or HeldFor itself, could lose them (see above).
  • HeldFor depends on pump.fun, Solana and the X API. Changes or outages there affect HeldFor.

Full text: risk disclosure.

Contract addresses

Cluster: mainnet.

Protocol treasury924631…z3Tkth
pump.fun program6EF8rr…BEwF6P
pump.fun fees programpfeeUx…6VojVZ