How it works
Some crypto protocols use their revenue to buy their own token back. Buyback Radar ranks them by one question: how cheaply does the token buy itself back? Every day we compare what each protocol returns to its holders with what the market pays for the token, and check whether that money is real.
One sum
Everything on the site starts here.
Market cap
What the market pays for every token in circulation.
Buybacks per year
What the protocol spent buying its token back in the last 30 days, times 365 ÷ 30.
Multiple
Years of buybacks it takes to buy back the whole market cap. Lower is cheaper.
- under 3×
- 3–10×
- 10–25×
- 25–50×
- over 50×
Hyperliquid against Uniswap
The largest exchange for perpetual futures against the largest exchange for spot swaps; both buy back and burn their token. Each is measured against its own peers. Today’s figures, straight from the ranking.
$16.94B÷$837.4M=20.2×
market cap ÷ buybacks per year = multiple
20.2×20.2× vs 20.7× for its peers: in line with the median.
$3.71B÷$99.3M=37.3×
market cap ÷ buybacks per year = multiple
37.3×Sell signal held since Nov 6, before tracking started. REV7 fell to 0.5× of the previous week; REV ratio 0.5×, HR ratio 0.5×. Still open: weekly revenue drop still holds. See Signals.
Hyperliquid buys back 8.4× more per year than Uniswap, but the market values it 4.6× higher. Per dollar bought back, Hyperliquid is 1.8× cheaper.
The score
The multiple tells you what is cheap. The score, from 0 to 100, also asks whether it is getting better. The ranking sorts on it.
Valuation35%
How cheap the token is per dollar bought back, on a fixed scale and against its peers.
Momentum25%
Whether revenue is growing, this week and over the month.
Divergence20%
Whether revenue grew faster than the price: the market has not caught up yet.
Quality20%
How steady the revenue is: earning on most days, no single day dominating, close to its peak.
The column widths are the weights. Points come off for dilution, thin liquidity, a short history, large unlocks and revenue that cannot be checked on-chain. When this week’s payout to holders is below 50% of its best week in the last 90 days, momentum and divergence are capped at 50.
Tokens with less than $100k to holders in 30 days, or payouts on fewer than 8 of the 30 days (for a token that pays in cycles of a week or longer: more than one of the payouts its cycle predicts missed) rank in their own list, Low payout. The name is about the payout, not the size of the token: some have a large market cap. A token with no holders revenue in 30 days gets no rank at all, whether it paid holders $0 or DefiLlama reports no holders revenue for it.
What happens to the money
Not every dollar that reaches holders pushes the price. Each kind counts for a share of its value in the multiple.
- Buyback100%Revenue buys the token on the market, sometimes burning it afterwards. Real buying pressure, so it counts in full.
- Burn75%Tokens are burned straight from fees. Supply falls, but nobody buys on the market.
- Payout50%Revenue is paid to stakers, often in another asset. Good for stakers, no buying pressure on the token.
- Paid to vote lockers25–50%Paid to vote lockers: swap fees 50%, bribes 25%. Swap fees the protocol passes to voters count like a payout; bribes are paid by outside parties for votes, not by the protocol. While the split is unknown, everything counts at 25%.
So $10 million a year in payouts counts as $5 million in the sum. Mixed models count 75%; when the protocol does not say where the money goes, 50%.
When does a token turn red?
When its revenue or its payout to holders falls away: the reason to hold the token is going. That is a sell signal. Two milder warnings sit next to it.
Red: a sell signal
Only for tokens in the main ranking, and never on incomplete data, a changed set of protocols or a stale price. One of these is enough; the signal stays open while its own rule holds or the payout stays under 50% of its 90-day best, and the same token and type wait 7 days before the next one.
Orange: a warning on the verdict
The verdict reads the warnings before the price, so a token with one of these is never called Cheap. Cheap means a multiple at or below 0.8× the median of its main-ranking peers and at most 25×, with no warning and no active sell signal; above 1.25× the median it is Expensive.
Grey: Payout off peak, not a sell signal
A list, not a signal: it asks how far the payout is from its best week, nothing more.
Every rule, with today’s thresholds10 rules
Red: a sell signal
- Sell signal: weekly revenue dropRevenue this week is at most two thirds of the week before, after at least $25k of revenue in that week on at least 4 of its 7 days.
- Sell signal: payout far below its peakWhat holders got this week is under 50% of their best week in 90 days, and that best week came after a buy signal (Revenue jump or New in top 20).
- Sell signal: gradual declineRevenue over 30 days is at most 60% of the 30 days before, after at least $25k with revenue on at least 15 of those days. Not while this week is at least as high as the week before.
- Distribution stoppedThis week’s payout to holders is under 10% of its usual weekly payout over the 4 weeks before, while revenue held up (at least 75% of the week before). For a token that pays every N days (N of 7 or more): no payout for 1.5× N days, or under 10% of the cycle before.
- Distribution cutThis week’s payout to holders is under 50% (and at least 10%) of its usual weekly payout over the 4 weeks before, while revenue held up (at least 75% of the week before). For a token that pays every N days: its last whole cycles paid under 50% of the cycles before.
Orange: a warning on the verdict
- Revenue fadingRevenue −18% or worse over 30 days (over 7 days when the 30-day growth is not known yet).
- Payout off peakRevenue did not fall 18% or more over 30 days, but this week’s payout to holders is under 50% of its best week in 90 days, and that best week paid at least $25k (main ranking) or $3k (Low payout). Not a sell signal.
- Treasury-fundedMore was bought back than the protocol earned: part comes from the treasury, not from revenue.
- Buyback stopped or pausedOur research found that the buyback or the payout to holders was stopped or paused.
Grey: Payout off peak, not a sell signal
- Payout off peakThe lens of the same name lists every token whose payout this week is under 50% of its best week in 90 days, and that best week paid at least $25k (main ranking) or $3k (Low payout), also when revenue fell (those carry Revenue fading). Protocols that pay out every few weeks land here too, so it is a reason to look, not to sell.
Active sell signals show on the token page and in the ranking row, and are listed with their outcome on Signals.
Warning flags
A cheap multiple can hide a problem. These flags appear next to the token whenever one applies.
- Treasury-fundedMore was bought back than earned. Only the part paid from revenue counts.
- Payout >50% below peakThis week’s payout to holders is less than half its best week of the last 90 days. A low multiple on a falling payout is a warning, not a bargain.
- Not verifiable on-chainRevenue is reported off-chain only, so nobody can check it on a block explorer.
- Insufficient historyToo few days of data to measure growth yet; those parts score a neutral 50.
- Small peer groupFewer than 4 comparable tokens, so the median comes from a wider group.
- Price feed delayedOur last price fetch is more than 3 hours old. A problem with our data, not with the protocol; no new signals go out until it recovers.
- One-day spikeMore than half of the 30-day payout came on a single day. One big day is not a steady buyback.
- Disputed on-chainOur on-chain check found almost nothing bought back against the holders revenue DefiLlama reports. The token gets no multiple until that is resolved.
- Price staleCoinGecko has not updated this token’s price for more than 48 hours. It leaves the ranking (listed under Incomplete) until the price updates again.
Where the data comes from
Public sources only. We never pull live from them while you browse: the site reads our own database, refreshed on the schedule below.
- DefiLlama
- Holders revenue, revenue and fees per protocol per day, and how each protocol says it uses the money.
- Protocol list every 6 hours, daily figures as they close.
- DexScreener
- On-chain pool liquidity per contract address.
- Through the daily queue; tokens without a pool use 24-hour volume.
- DefiLlama unlocks
- Vesting schedules: which tokens unlock when, for team, investors, treasuries, airdrops and staking or farming emissions. Many schedules are only filled in after the fact; where the known schedule stops while tokens are still locked or still being emitted, the token shows “—”, not $0.
- Every day.
When revenue data is more than 30 hours old or prices more than 3 hours, a red banner says so at the top of every page and no new signals go out.
Glossary
Every term the site uses, in plain words. The same text sits behind each small “?” on the site.
- Multiple
- Market cap ÷ yearly buybacks. Lower is cheaper.
- How many years of buybacks it would take to buy back the whole market cap, at the pace of the last 30 days. A multiple of 2× means the protocol buys back its own market cap in two years.
- Revenue multiple
- Market cap ÷ yearly revenue, whether or not it is bought back.
- The price/sales ratio of the protocol as a whole. Cheap on revenue but expensive on buybacks means the protocol earns well but returns little to holders yet.
- Holders revenue
- The part of revenue that goes to token holders: buybacks, burns or payouts.
- DefiLlama’s measure of what a protocol returns to its token holders. We cap it at total revenue, so buybacks paid from the treasury do not count as income.
- To holders
- What holders got in a year ÷ market cap, with the verb of the type: buys back, burns, pays out or returns.
- The share of the market cap that went to holders per year at the pace of the last 30 days, capped at revenue. The number is the plain yield; the multiple counts payouts and burns for less (the type factor), so the tooltip shows the value the multiple uses. When our research found the buyback stopped, or the on-chain check measured about $0, that comes first.
- Peer median
- The middle multiple of comparable protocols.
- Tokens are compared within their DefiLlama category (perp DEXes with perp DEXes, launchpads with launchpads). Below the median is cheaper than its peers.
- Peer value
- Peer median ÷ own multiple. Above 1 is cheaper than peers.
- How many times cheaper (above 1) or more expensive (below 1) the token is than the median of its peer group, per dollar bought back.
- Divergence
- Revenue growth minus price growth over 30 days.
- Positive when revenue rises faster than the price: the market has not caught up yet. This is the pattern before a re-rating.
- Distance to peak
- This week’s payout to holders ÷ the best week of the last 90 days.
- Measures holders revenue, not total revenue. Below 50% means the payout has fallen far from its top; a low multiple is then a warning rather than a bargain. For a token that pays every two weeks or monthly, the window covers a whole cycle.
- Score
- 0–100: valuation 35%, momentum 25%, divergence 20%, quality 20%, minus penalties.
- Combines how cheap the token is, whether revenue grows, whether the price lags that growth, and how steady the revenue is. Penalties for dilution, thin liquidity, short history and off-chain revenue.
- Distribution
- What happens to the money: buyback, burn, payout to stakers or bribes.
- Read from DefiLlama’s methodology text. Only buybacks and burns create buying pressure on the market; payouts and vote bribes count for less in the multiple.
- Treasury-funded
- More was bought back than earned.
- Part of the buybacks is paid from reserves, not from ongoing revenue. That can stop at any time, so only the revenue-backed part counts.
- Run-rate
- Multiple at the pace of the last 7 days.
- Market cap ÷ (last week’s payout to holders × 52, × the same type factor as the multiple). Reacts within a week to a jump or a drop in the payout, where the 30-day multiple lags.
- Dilution
- FDV ÷ market cap.
- How many tokens are still to come. Above 2× means future unlocks could outweigh the buybacks.
- Liquidity
- How much can be traded without moving the price much.
- DEX liquidity is the on-chain pool liquidity from DexScreener, over the pools large enough to be representative. Order-book markets (such as HyperCore spot) have volume but no pool liquidity. Tokens that trade mainly on exchanges have no pool figure; their 24-hour volume is shown as its own number, never as liquidity.
- Low payout
- Tokens with less than $100k to holders in 30 days, or payouts on fewer than 8 of the 30 days (for a token that pays in cycles of a week or longer: more than one of the payouts its cycle predicts missed), whatever their market cap.
- The tier is about how much and how often holders are paid, not about the size of the token: some large tokens pay out little, and a token that pays a large sum on a few days sits here too. Ranked separately so their payouts are not compared with the main ranking; a token moves up once it pays at least $100k to holders in 30 days, with payouts on at least 8 of the 30 days (for a token that pays in cycles: at most one predicted payout missed). Buy signals only run for the main ranking; a sell signal stays open for 30 days after a token drops here. Tokens with no holders revenue in 30 days get no rank at all.
- Payout off peak
- This week’s payout to holders is below 50% of its best week in 90 days. Not a sell signal.
- A list to watch, not advice. It counts from a best week of at least $25k in the main ranking ($3k in Low payout), so falls from a few dollars stay out. A sell signal is stricter (see Signals); rows that have one carry a red chip and come first.
- No holders revenue (30d)
- Tokens with no holders revenue to value in the last 30 days: a $0 payout, or no holders revenue data.
- They get no rank: there is nothing to value them on. Most returned nothing to holders (effective holders revenue $0). For some, DefiLlama reports no holders revenue at all in the window; that is missing data, not a $0 payout, and the token page says which. A token that pays monthly can land here when a payout falls just outside the window; it returns with its next payout.
- Cheap
- Multiple at most 0.8× the median of its main-ranking peers and at most 25×, with no warning.
- One rule for the Cheap lens, the standouts and the paper portfolio. A warning means: payout off its peak or revenue fading, one day carrying the month, a stale price, a disputed on-chain check, treasury funding, too little history, or an active sell signal.
Formulas for the curious
The exact definitions, windows, anchors and penalties. HR is holders revenue, REV is revenue, D is yesterday (UTC). All values come from the same settings file the daily computation uses.
Universe and eligibility
The universe is DefiLlama's Holders Revenue list, summed per token. Chains (burned gas fees of L1s and L2s) are hidden by default and never count in any median; the "Show chains" toggle makes them visible. A token enters the main ranking when it has a CoinGecko id, at least 30 calendar days of revenue data, a price greater than 0 that CoinGecko updated in the last 48 hours, trading volume in the last 24 hours, a market cap of at least $1M, and no open blocking data issue. All other tokens are listed in the Incomplete tab with the reason. This is an eligibility rule, not a quality judgement.
Eligible tokens are ranked in two tiers, each with its own ranks: the main ranking for tokens with at least $100k to holders in 30 days, with payouts on at least 8 of the 30 days (for a token that pays in cycles: at most one predicted payout missed), and Low payout for tokens with less than $100k to holders in 30 days, or payouts on fewer than 8 of the 30 days (for a token that pays in cycles of a week or longer: more than one of the payouts its cycle predicts missed). A token whose effective holders revenue over 30 days is $0, or for which DefiLlama reports no holders revenue in that window, gets no rank and is listed under No holders revenue (30d).
Metrics
HR = holders revenue, REV = revenue, both per token (sum over children) and only over closed UTC days. D is yesterday (UTC). Market cap is the primary measure; FDV is shown alongside. Any growth with a previous period of 0 or missing history is null (neutral part score 50, flag "insufficient history"), never infinite.
| Metric | Formula | Why |
|---|---|---|
| HR30, REV30, FEES30 | sum over the window [D−29, D] of closed days; HR7/REV7 over [D−6, D]; HR7_prev over [D−13, D−7]; HR30_prev over [D−59, D−30] | the basis of everything; a missing day does not count (not as 0) |
| Sustainable HR30 | min(HR30, REV30); if REV30 is missing then min(HR30, FEES30); if both are missing, HR30 with a flag | DefiLlama also books buybacks paid from the treasury; those are not yield |
| Buyback share | HR30 ÷ REV30; n/a when REV30 is 0 or unknown; > 100% = flag treasury-funded | how much of the revenue goes to holders |
| Distribution type and type factor | from the methodology text per child: buyback 1.0 · buyback-burn 1.0 · burn 0.75 · mixed 0.75 · distribution 0.5 · unclear 0.5 · ve-distribution: bribe share × 0.25 + (1 − bribe share) × 0.5, 0.25 while the split is unknown | only buybacks create buy pressure in the market; swap fees paid to vote lockers count like a payout, bribes are third-party money |
| Effective HR | sustainable HR30 × type factor | the denominator of the valuation |
| Buyback yield | effective HR × 365/30 ÷ market cap (FDV variant alongside) | what share of the valuation is bought back per year |
| Multiple | market cap ÷ (effective HR × 365/30); ∞ when effective HR is 0 | how many years of buybacks the whole valuation costs |
| Run-rate multiple | market cap ÷ (HR7 × 52 × type factor), the same factor as the multiple | reacts within a week to a spike |
| Revenue multiple | market cap ÷ (REV30 × 365/30) | price-to-revenue of the protocol as a whole |
| Fee multiple | market cap ÷ (FEES30 × 365/30) | gross revenue as a second reference |
| Revenue peer value | median revenue multiple of the revenue peer group ÷ revenue multiple of the token | > 1 = cheaper on revenue than its peers |
| Dilution ratio | FDV ÷ market cap; null when FDV is unknown | a low float makes market cap misleading |
| Revenue growth g7, g30 | clamp(ln(REV7 ÷ REV7_prev), −1.5, +1.5); same over 30 days; only with ≥ 6 of 7 resp. 27 of 30 days present; h7/h30 for HR as confirmation | timing on revenue, because HR lags |
| Day jump | REV of day D ÷ mean of the present REV rows in [D−7, D−1] (at least 4 rows) | the earliest signal |
| Price change p7, p30 | clamp(ln(price_now ÷ price_7d_ago), −1.5, +1.5); same over 30 days | needed for the divergence |
| Divergence | d = max(0, g30 − p30), only when g30 > 0 | revenue rises and the price lags |
| Consistency | % days with HR > 0 over min(30, history); largest day ÷ HR30; coefficient of variation | separates structural revenue from a one-off spike |
| Distance to peak | HR7 ÷ highest HR7 of the last 90 days | a payout to holders far below its top is not a buying opportunity |
| Unlock coverage | HR30 ÷ unlocks in the next 30 days (from the vesting schedule; only when it is known) | buybacks crowded out by unlocks do not count |
| Liquidity | liquidity_usd ÷ market cap (source dex) or 24h volume ÷ market cap (source cex_volume) | can you exit without large slippage |
| Peer group and median | DefiLlama category with ≥ 4 tokens, otherwise the merged group, otherwise the whole universe (flag small peer group); median of the multiple across the group | the second mark on the meter |
Score
Every eligible token gets a daily score from 0 to 100 on fixed scales with anchors, not on percentiles. That way a score says something absolute and daily snapshots stay comparable. All anchors, weights and penalties live in settings.
- Valuation (35%): average of two halves. HR half linear in log(multiple): 100 at ≤ 3×, 0 at ≥ 100× and 0 when the multiple is ∞. Revenue half linear in log(revenue peer value): 0 at ≤ 0.33×, 50 at 1×, 100 at ≥ 3×.
- Momentum (25%): m = 0.5·g7 + 0.3·ln(day jump, clamped to ±1.5) + 0.2·g30; 0 at m ≤ -0.7, 50 at 0, 100 at ≥ 1.1.
- Divergence (20%): 0 at d ≤ 0, 100 at d ≥ 1.5, linear.
- Quality (20%): average of % days with HR > 0 (0 at ≤ 30%, 100 at ≥ 90%), 1 − largest day ÷ HR30 (0 at ≥ 60%, 100 at ≤ 15%) and distance to peak (0 at ≤ 0.25, 100 at ≥ 0.9).
- Cap: when distance to peak is below 0.5, Momentum and Divergence are capped at 50.
Penalties
Subtracted from the weighted sum. Penalties that depend on research data apply only when the field is filled in; null is never a penalty.
| Rule | Points |
|---|---|
| Unlocks in the next 30 days larger than HR30 | −15 |
| Dilution ratio > 4; otherwise > 2 (highest tier applies) | −10; otherwise 5 |
| Liquidity below $250,000 (dex) or 24h volume below $1 million (cex) | −10 |
| History 30 to 60 days | −5 |
| "Off Chain" as the only chain, not verified | −10 |
| "Off Chain" next to other chains, not verified | −10 |
| Buyback at the team's discretion (only when filled in) | −5 |
| Bought back on-chain less than 70% of HR (phase 3) | −10 |
| HR estimated from revenue × buyback percentage (phase 3) | −10 |
The meter
The multiple sits on a logarithmic scale from 0.5× to 100× with marks at 1, 2, 5, 10, 25, 50× and a second mark for the peer-group median. Above 100× or without effective HR (∞) the value sits outside the scale on the right. The colour bands mark ranges only. Cheap or expensive is the verdict's call, against the median of its main-ranking peers: cheap at or below 0.8× the median and at most 25×, expensive above 1.25×.
- under 3×
- 3–10×
- 10–25×
- 25–50×
- over 50×
Peer groups
The peer group is the token's DefiLlama category when it has at least 4 tokens with a multiple; otherwise the merged group below; otherwise the whole universe with the flag "small peer group".
| Merged group | Categories |
|---|---|
| Trading | Dexs + DEX Aggregator + Derivatives + Launchpad + Trading App |
| Lending | Lending + CDP |
| Staking | Liquid Staking + Liquid Restaking + Restaking + Staking Pool |
| Bridge | Bridge + Cross Chain Bridge + Canonical Bridge |
Revenue type
Information, not a filter: hype for the categories Launchpad, Meme, Gamified Mining, Luck Games, Telegram Bot, Trading App; chain for Chain; structural for the rest; unknown without a category. The Why line starts with category and revenue type whenever the type is not structural.
Holders revenue at ve-DEXes
At a ve-DEX the money paid to vote lockers is a mix: swap fees the protocol passes to voters, and bribes that outside parties pay for votes. Paid to vote lockers: swap fees 50%, bribes 25%. The type factor is bribe share × 0.25 + (1 − bribe share) × 0.5, with the bribe share read per token; while the split is unknown the whole amount counts at 0.25. Such a token gets the type ve-distribution and is left out of the Buybacks only lens.
Data sources and refresh
- DefiLlama: holders revenue, revenue and fees per protocol and per day, market cap per parent, prices via coins.llama.fi. Universe every 6 hours, daily series through the queue, prices every hour.
- CoinGecko: supply, FDV, price changes, volume and logos; every hour, as long as the source is reachable.
- DexScreener: on-chain liquidity per contract address through the queue; tokens without addresses use the 24h volume.
The ranking reads from the database only, never live from external APIs. When the last successful revenue run is older than 30 hours or the last price run older than 3 hours, a red banner appears, the last known values stay in place and no signals are issued.
Not financial advice. Buyback Radar is a screener and research tool. The figures come unchanged from the sources above, may contain errors or delays, and say nothing about future prices.