How Proof of Callout works
Every rule on this board, and the reasoning behind it. The numbers here are read directly from the code that enforces them, so this page cannot drift out of date.
What this is
A public record of who called which coin, and when. A callout is timestamped against the market cap at the moment it was made, and that entry figure is never rewritten — so a call can be checked later against what actually happened, rather than against how it is remembered.
- The entry market cap is the claim
- It is stamped once, from the call, and stays fixed. Everything else on the board — peak multiple, status, score — is derived from it.
- Nothing here is backfilled
- A peak is only claimed if this board observed it. The upstream data has no historical high to read, so inventing one would mean publishing a number nobody watched.
- Unknown is not zero
- When a market cap cannot be read, the board prints an em dash rather than 0. A flat "0.0%" would assert the coin did not move, which is a different and false claim.
Where calls come from
Calls are made on pump.fun and mirrored here. This board does not compose them, which is what stops anyone from back-dating a call after seeing how a coin performed.
- Importing brings in every call on a coin
- Not one hand-picked call. Letting someone choose which of five callers appears would be the same cherry-picking the cooldown exists to prevent.
- pump.fun enforces a 2-hour cooldown per caller
- Measured against the live data rather than taken from secondary sources, which say six. It limits how fast one person can spray calls and hope one lands.
- The entry figure comes from pump.fun, with their timestamp
- Not the price at import time. That is the difference between mirroring a call and quietly re-dating it.
How peaks are measured
The board re-reads each coin's market cap as pages load and stores the reading against the call. A peak rises only when an observation genuinely exceeds it, so every peak multiple traces back to the observations that produced it.
- A call younger than 1 hour has no multiple yet
- It is withheld rather than shown as 1.0x, and excluded from scoring. Counting a minutes-old call as a miss would punish someone for having just posted.
- Unchanged readings are kept about once every 10 minutes
- Enough that a flat stretch reads as watched-and-unchanged, without storing thousands of identical rows that carry no information.
- The gap before the first reading is labelled, not drawn
- Charts shade the span between the pump.fun call and this board's first observation and mark it "not sampled". A blank third of a chart otherwise reads as a chart that failed to load.
- A settled result is frozen
- Once a duel or payout is decided, the multiples behind it are stored as they stood, so later price action cannot rewrite a finished outcome.
Call statuses
A status describes where a call stands right now. The peak it reached is always printed separately and is never erased by the status.
- Legendary CallPeaked at 50x or more from entry.
- Winning CallPeaked at 5x or more and is not deep underwater.
- Live CallBeing watched, with no big move yet either way.
- Round TripGenuinely hit 5x or more, then gave it back — now more than 20% below entry. It gets its own status because calling it merely faded would understate a real result.
- Faded CallMore than 20% below entry, without having hit 5x first.
The drawdown test runs first. Otherwise a call that peaked 18x and then round-tripped would sit deep underwater wearing a green “Winning Call”, in the present tense.
The Proof Score
Four components, each scored 0–100 from your own record and nothing else, then weighted and scaled to a maximum of 1000. A caller with no scored calls scores 0 — deliberately, because an unproven caller has proven nothing.
- Hit rate35%
Share of your scored calls that at least doubled from your own entry.
- Peak size30%
Average peak, on a log curve — 2x counts, and one 100x cannot pin this at full marks.
- Entry timing20%
Median entry market cap. Finding something at $10K scores full marks; $10M scores zero.
- Track record15%
Saturates at 25 scored calls, so posting volume alone cannot carry a score.
rank tiers
- Unproven0 – 199
- Scout200 – 399
- Caller400 – 599
- Proven600 – 749
- Elite750 – 899
- Legendary900 – 1000
Badges
Earned from the record, never granted. Each one needs a real sample behind it, or it would be noise dressed as an achievement.
- 01First CallerEarliest recorded callout on a token that later ran
- 5X5X CallerA call that reached 5x from entry market cap
- 10X10X CallerA call that reached 10x from entry market cap
- 50X50X CallerA call that reached 50x from entry market cap
- 100X100X CallerA call that reached 100x from entry market cap
- HAHigh AccuracyMore than 60% of calls doubled, over 10+ scored calls
- EHEarly HunterMedian entry market cap under $50K, over 5+ scored calls
Duels
Put one of your calls against someone else's. Whoever's call has the higher peak multiple when the clock runs out wins. Nobody stakes anything and no SOL changes hands — what moves is reputation.
- Windows of 1 hour, 6 hours, 24 hours
- The challenger picks. The clock starts when an opponent accepts, not when the matchup is opened, so a lobby waiting for a taker never expires unfairly.
- A win is worth +12, a loss -6
- Capped at 60 points in either direction, so duelling adjusts a record rather than replacing it.
- Open and live duels are worth exactly zero
- Entering a matchup must not move your score, or the board would reward showing up instead of winning.
- An exact tie is a draw
- Multiples are rounded before comparison, so two calls both displayed as 3.4x cannot be separated by float noise the screen never showed you.
Bounties and payouts
A sponsor escrows real SOL on a coin; callers who already called it compete; the sponsor pays the winner. Every step is a real mainnet transaction, and every payout publishes its signature.
- Funding is verified on-chain, not taken on trust
- The amount is read from the transaction itself, and the deposit must come from the wallet you signed in with — so nobody can claim a stranger's deposit by pasting its signature.
- A bounty shows as funded only when the full amount has arrived
- Until then it reads as awaiting funds, because a prize nobody has paid for is not a prize.
- Only calls on the named coin, made before the deadline, qualify
- Since calls are mirrored from pump.fun, nobody can back-date one to sneak into a bounty.
- A payout cannot happen twice
- The payout row is claimed in the database before any SOL moves, so a double-click, a retry, or a crash mid-transfer cannot pay a second time.
- Every settled payout links to its transaction
- On the bounty card, in the confirmation, and in the recent payouts feed. A payment you cannot verify on-chain is just a claim.
Every page
What each part of the board is for.
- Feed/Every call as it is mirrored in, newest first.
- Leaderboard/leaderboardCallers ranked by Proof Score, filterable by period.
- Tokens/tokensCoins that have been called, and who called them.
- Callers/callersEvery caller on the board with their record.
- Duels/duelsOpen, live and settled head-to-head matchups.
- Get Paid to Callout/earnSponsor-funded bounties and the payouts feed.
- Convergence/convergenceFires when several high-scoring callers hit the same coin.
What this does not do
Worth being direct about, since a record of good calls is easy to mistake for advice.
- This is not financial advice
- A high Proof Score describes what someone called in the past. It predicts nothing, and most coins on this board go to zero.
- The board does not execute trades
- Nothing here buys or sells anything. Bounty escrow and payouts are the only transactions it makes.
- A peak is not a price you could have got
- It is the highest market cap observed after the call. Nobody sells the exact top, and thin coins move on very little volume.
- Market data can be wrong or missing
- Readings come from public sources that occasionally disagree or go quiet. When a figure cannot be read, the board says so instead of guessing.
Questions, or something on this page that looks wrong? @proofofcallout on X.
