Platform › Rewards › Drops

Rewards

Drops

Token pots a sponsor pays to the people ranked on the boards: who may fund one, the snapshot, the claim and the fee.

Version
1.0
Updated
2026-10-14
Source
Sponsored drop contract sources · Predict, common and drops contracts — design reference · THD — Full Plan v3.45

Status#

A sponsor pays a pot of a token to the people ranked on the platform’s boards. SponsoredDropFactory.fund checks the request, pays the fee and deploys one SponsoredDrop clone holding the measured pot. A drop is non-refundable once funded; the sponsor is recorded, never paid.

Who may fund a drop#

Funding checks, production terms
CheckRule
Market dataA token’s market cap and USD price, signed by the drop eligibility attestor and checked by DropEligibilityAttestor; decimals re-read on chain
Market-cap floor$500,000 for a token outside CurrencyRegistry. ETH and listed currencies are priced from the platform’s own posted prices instead
RecipientsAt least 1,000 slots across the drop’s boards
Per recipientThe sponsor’s minimum must be worth at least $5; a maximum is set too
Snapshot dayFrom 30 days before funding to 90 days after (DROP_SNAPSHOT_LAG_DAYS, DROP_SNAPSHOT_LEAD_DAYS)
VestingSponsor’s choice, 0 to 90 days (DROP_MAX_VESTING)

quote() on the factory runs exactly the checks and arithmetic fund will, so the fee shown before funding is the contract’s own figure.

Boards and recipients#

Boards a drop may pay on (up to 6, each at most once)
BoardWindows
Spending · Earnings · Creators · Traders · KOLs and referrersDay, month or all-time
BandsMonth only

Board shares must sum to exactly 10,000 bps, and each board must be able to pay every slot the minimum without paying anyone above the maximum. Every board measures on-platform activity only.

The 10% marketing fee#

code
// SponsoredDropQuoter.quote — feeBps 1000 (10%) on production
dropValueUsd = pot × usdPerToken / 10^decimals
tier         = highest tier whose lower bound ≤ the market cap
tokenLeg     = pot × feeBps × (10_000 − currencyShareBps) / 10^8        // in the dropped token
currencyLeg  = dropValueUsd × feeBps × currencyShareBps / 10^8          // in ETH or a listed currency
Fee tiers on production — share of the fee paid in the fee currency
Market cap fromFee currencyDropped token
$500,000100%0%
$2,500,00080%20%
$10,000,00060%40%
$50,000,00040%60%
$100,000,00020%80%

Both legs go directly to the marketing treasury, re-checked against TreasuryRegistry on every payment. The fee is sold visibility and the sponsor sizes the drop, so it never passes ProtocolFeeSplitter and never meters. maxCurrencyLeg caps what the sponsor pays in the fee currency.

Snapshot, root, veto, claim#

A drop's clock
StepWhoWhen
Snapshot window ends—00:00 UTC after the snapshot day
publishRootThe snapshot keeper (the factory’s snapshotKeeper())Within 30 days of the window end (DROP_PUBLISH_DEADLINE). The root’s declared total may not exceed the pot
vetoRootThe factory ownerWithin 24 hours of publication (DROP_VETO_WINDOW). The keeper republishes, and the publish deadline extends to at least 24 hours after the veto
Claims start—Publication + 24 hours, with no further action
claim(account, amount, proof)Anyone; pays only accountLinear vesting from claim start. The first claim must come within 30 days (DROP_FIRST_CLAIM_WINDOW)
Final deadline—Vest start + vesting + 30 days

What happens to what nobody claims#

sweep() is permissionless and sends only what is no longer owed: value the root never allocated, the allocations of accounts that missed the first-claim window, everything left after the final deadline, or the whole pot if no root was published in time.

The unclaimed route, fixed at funding
Dropped tokenGoes to
THDThe Fortune Wheel’s THD pool. See The Woods
A registered jackpot currency without transfer feesThe Fortune Wheel’s jackpot pot for that currency
Anything elseThe marketing treasury