Cover photo

Degen Tips Ultimate FAQ V7.1 (4 May 2024)

A Deep Dive with Receipts

Did you know:

  • You can tip more than your stated allowance? 😲

  • Users who have done more than 500 original casts in total receive a very significant multiplier compared to those who have cast less than 50 times?

  • 22 days after your first original cast you get a 2x boost to your allowances, and 306 days after you get a 3x boost?

This FAQ covers all the above in extreme never-discussed-before detail, including simulations on Desmos. But this FAQ is not just for the extreme: it also covers all the basics of receiving, donating, disqualification and allowances.

I am not a Degen team member. Nothing I write is financial advice or a recommendation to take any particular action. This is a collection of my personal notes, documenting facts and observations.

What's New

If you just want to know what's changed, read the update post instead.

Quick Facts Sheets

For your convenience, both sheets have the same content but one is light and the other dark.

Light Theme

Dark Theme

Tip Basics

Q: What are $DEGEN Tips?

DEGEN Tips are a way for members of the Farcaster community to indicate who they believe should receive DEGEN Tokens during DEGEN Airdrops.

Tips are not the same thing as DEGEN Tokens.

If you've received DEGEN Tokens on-chain, you'll have them in your wallet immediately.

If you've received DEGEN Tips, you actually only have airdrop points that you'll still need to exchange for DEGEN Tokens at the end of the airdrop season.

See the later section on Receiving Tips for more details.

Q: Who gets to tip?

Farcaster users with a tip allowance get to tip. See the later section on tip allowances for more details.

Q: What happens when they tip over their limit ("over-tip")?

Tips will be honored up to roughly their allowance limit - see later in the FAQ for the exact details.

Q: Why do people ask me to "like, recast, quote" as part of a $DEGEN tip "giveway"?

The formula for calculating tip allowances rewards reactions. Currently there are only two reaction types: like and recast. Quote are considered original casts, not recasts

In any case, your reaction to their original casts earns the tip allowance they are rewarding you with. Except they keep most of the allowance to themselves. This is a form of implicit collusion/engagement farming.

In my opinion, don't encourage people like this: whenever you follow their instructions, you incentivize them (and others) to keep doing this more, until Farcaster is overrun by this unproductive behavior.

There's no guarantee they even have tips to give you (fake tips), or that they won't invalidate their tips!

Q: People can fake tip?

Fake tipping is the basically the same thing as over-tipping. @degentipbot might pick it up, but also maybe not. Don't blindly trust tips people claim to give you, unless they are reputable users.

Q: And tips can be invalidated, reversed or cancelled?

Yes, based on the other answers in this FAQ, tips won't count if the donor:

  1. exceeds their tip allowance by more than 50% (used to be 3% then 5%)

  2. deletes the tipping cast

  3. deletes their non-tipping cast, and inadvertently lowers their tip allowance i.e. they run out of tips

  4. removes their verified wallets

  5. or recipient are disqualified

  6. no longer has 10K DEGEN in their wallet

  7. runs out of storage (highly unlikely to affect tipping casts before the season ends, though)

Don't ever use tips as a means of value transfer with somebody you don't trust!

Q: Aren't tips snapshotted and locked down each day?

The queries provided by the Degen Tips team certainly have a snapshot_date field but this appears to be used for daily allowance reporting only.

Remember, there are daily snapshots for purposes of calculating daily allowances, but these are not the final snapshot - adjustments to the formula and algorithm can be made up until the last minute if necessary. See receipts.

Note that even if there were daily snapshots frozen in time, if a donor were to invalidate their tip prior to the snapshot calculation (e.g. by deleting it), they would still succeed -- daily frozen snapshots don't really solve anything, and would prevent the organizers from making last minute corrections.


Receiving Tips

Q: How can I qualify to begin receiving tips?

You must:

  1. not be disqualified (see Airdrop 2 Leaderboard: line 114)

  2. have a display name on your profile (see Airdrop 2 Leaderboard: line 113)

  3. have at least 1 verified address on your profile (see Airdrop 2 Leaderboard: line 112)

Q: I got tipped; when do I get DEGEN?

At the end of each Airdrop "season" you will see a "Claim" button on the Degen Tips website if you have a wallet connected. Click the Claim button to get your DEGEN.

Q: How long is a season? How many airdrops etc.?

Currently in Airdrop 2, a season is 1 month, and season 4 is live until the end of May 2024.

I have an analysis of all the airdrops on Dune.

See the Tokenomics page for details.

Q: What's the difference between tips and airdrop points?

Tips are what Farcaster users give you. Airdrop points are what the system calculates you are owed in DEGEN tokens.

Q: What is the ratio of tips to airdrop points?

Scenario

Points per tip

Invalidated tips, over tips, disqualified tips etc.

0

Tips received in these channels: FarcastHER, FarCon, Frames, Base, Dev, Design, Frontend, Founders, Perl, Product, Zora

1.5

All others

1

For example, a 100 $DEGEN tip received in /dev will translate into 150 points/DEGEN tokens at claim time (see Airdrop 2 Leaderboard: line 21..31).

Q: Where can I see my points?

You can use the Valid Tips query linked at the bottom of the FAQ, or check on the Degen Tips website by connecting your wallet, or use a frame like this one: https://warpcast.com/nikolaiii/0x8a6bc4c0

Q: People are tipping me but I'm not seeing any points!

Wait a few days. If you understand SQL, you can use the Dune queries I've linked to work backwards and see where the issue is. If you don't understand SQL, send me a Direct Cast and if I'm not busy I'll see if I can help.


Donating Tips

Q: How do I tip?

Non-technical answer: reply to another cast with a message that contains a number followed by a space, then followed by the word $DEGEN or $degen or $deGEN etc.

Technical answer: reply to another cast with a message that contains the following case-insensitive regular expression (Airdrop 2 Leaderboard: line 18): ([0-9]+) \$DEGEN

For example, if you reply to somebody with 100 $degen or nice! 100 $DEGEN, and you have sufficient tip allowance remaining, you will tip 100 $DEGEN to the person you're replying to. If you write 100$degen, you will tip nothing as you are missing a space.

Q: What happens if I over-tip?

Tips will be paid out in the following manner, until your allowance is exceeded (see Airdrop 2 Leaderboard: line 54):

  1. earliest tips first (this used to be different, but was changed somewhere around 2024-04-09)

  2. once your allowance is exceeded, the recipient doesn't get anything, but nothing else bad happens unless you regularly and excessively over-tip (see the Disqualification section below; also @degentipbot might publicly shame you)

😀 Surprise fact: you don't count as "over-tipped" until you tip more than 150% of your allowance. So if you had a 1000 tip allowance, you could actually tip up to 1500! (see Airdrop 2 Leaderboard: line 74)

Beware of intentional over-tipping: the rules could change at any point, and you wouldn't have any ground to stand on. My intention here is to document the facts, not to encourage recklessness.

Q: What happens if the tipping cast is deleted?

The tip will not count (see Airdrop 2 Leaderboard: line 41)

Q: I heard there's a data delay and my allowance is really low!

The allowance you see on frames / on Dune is just an indication of your allowance using data available at the time. See the "How it works" fact sheet at the start of the FAQ for a graphical explanation, but basically, these reports are updated every 12 hours to give you a sense of your allowance.

Sometimes the data is delayed, and that can be inconvenient on the day, but ultimately the only thing that matters is the end-of-season (month) snapshot process where the allowances for each preceding day of the season is finalized. The disqualified user list will also receive a big update at this point in time.

Q: Does storage matter?

Yes, storage is critical:

  • Your retroactive boost depends on your first original cast in storage. Maximum multiplier of 3x is only possible if you have storage going back at least 307 days.

  • The median reactions used in the tip allowance formula is maximized only when you have 500 or more original casts in storage.

  • Check your storage regularly to ensure you haven't run out. Casts are the most important as per above, but reactions will affect other people's allowances if you run out and the expired reactions fall in the current month.


Disqualification

Q: Can I really be disqualified?

Yes (see Airdrop 2 Leaderboard: line 114 and Airdrop 2 Tip Allocations: line 225).

Q: Is there a public list of disqualified users?

Yes, see Disqualified Farcaster Users.

Q: Aside from the list above, are any other Farcaster accounts disqualified?

Yes: @degenbot, @degentip, @degentokenbase, and @paybot.

Q: Is disqualification retroactive?

Yes. If you are disqualified today, you lose all the points you were awarded (see Airdrop 2 Leaderboard: line 114) and your tip allowances won't be honoured (see Airdrop 2 Tip Allocations: line 225).

Q: What will get me disqualified?

Source: Disqualified Farcaster Users comments

  1. Manual/Auto moderation (e.g. engagement farming, trying to extract tip allowances back to yourself/friends, etc.)

  2. Bots doing dumb bot things

  3. Regular overspending

  4. Triggering the spam rules: to protect the system, I will not elaborate on the rules, but basically just be a normal human who posts original casts and doesn't just quote/follow non-stop like a bot

Q: Can I be disqualified for tipping back the exact same amount?

Probably not (see $wake). But read the other answers.

Q: Can I be shadow banned?

No, see Dan Romero's comment:


Allowances

Q: What's the exact criteria to receive an allowance?

Reference: Airdrop 2 Tip Allocations

  1. you must have 3 non-deleted, original casts i.e. not replies (line 40-41)

  2. you must have a verified Base wallet address on Farcaster (line 188)

  3. you must hold at least 10K DEGEN across all your verified Base L2 addresses (line 226) - not your Degen L3 Chain wallet!

  4. you must have a profile display name (line 189)

  5. you must have an avatar picture (line 190)

  6. you must not be disqualified (line 233)

Q: Are you sure I don't need to hold everything in one wallet

It's my understanding that Query 3488807 calculates wallet balances and query 3471566 aggregates balances per FID. These are the queries used for Airdrop 2 Tip Allocations. That being said, this seems quite implementation specific and at risk of changing. It's probably wiser to keep everything in one address.

Q: When do allowances get updated?

07:35 UTC, every day. Tips cast between 00:00 UTC and 07:35 UTC are deducted from the previous day's tip allowance (see Airdrop 2 Leaderboard: line 12)

Time Zone

Time Zone Name

Local Time

UTC

Coordinated Universal Time

7:35 AM

EDT (UTC-4)

Eastern Daylight Time

3:35 AM

CDT (UTC-5)

Central Daylight Time

2:35 AM

MDT (UTC-6)

Mountain Daylight Time

1:35 AM

PDT (UTC-7)

Pacific Daylight Time

12:35 AM

BST (UTC+1)

British Summer Time

8:35 AM

CEST (UTC+2)

Central European Summer Time

9:35 AM

EEST (UTC+3)

Eastern European Summer Time

10:35 AM

IST (UTC+5:30)

Indian Standard Time

1:05 PM

CST (UTC+8)

China Standard Time

3:35 PM

JST (UTC+9)

Japan Standard Time

4:35 PM

AEST (UTC+10)

Australian Eastern Standard Time

5:35 PM

Q: Can I move my 10k DEGEN after I get a tip allowance?

If your DEGEN balance on Base L2 chain ends the day below 10k, you will not be able to use your tip allowance on that day (see Airdrop 2 Tip Allocations: line 225 which references Degen Token Balances Above 10k: line 12)

Q: Can I move my 10k DEGEN from Base L2 to Degen L3 chain?

No, only Base L2 chain holdings count for purposes of tip allowance calculations, i.e. DEGEN token contract 0x4ed4..efed. If you move your DEGEEN from Base L2 and your balance drops below 10k you lose your tip allowance until you restore your balance above 10k on Base L2 (see Degen Token Balance: lines 6-7, 15-16, referenced by Degen Token Balances Above 10k)

Q: I didn't get a tip allowance, can you tell me why?

Maybe, send me a Direct Cast and if I'm not busy I might look into it for you.

Q: When should I quote?

Quoting counts as an original cast. If you see something interesting, replying to it will do nothing for your allowance. If you quote cast it, your followers reactions to it will contribute to your tip allowance.


  1. Dune Airdrop 2 Leaderboard: official dashboard, updates every 12 hours in theory, but in practice there have been 2.5 day delays before

  2. Dune Airdrop 2 Tip Allocations: official dashboard, also 12 hourly updates as above

  3. Dune Airdrop 2 Tip Allocation Breakdown: type in your FID, and get a breakdown of all the above content in a simple table

  1. Dune Valid Tips: search for your username to see which tips you received will actually be honored during the airdrop

  2. Nikolai's Stats Frame and ds8's Stats Frame and cast actions are convenient for checking your allowance / points

  3. Dune Airdrop Analysis: all the airdrop statistics

  4. Dune Tips Data Status: tells you whether the Degen data on Dune is fresh or not

  5. Farmarket: buy & sell Farcaster accounts, you can use this path to get a 307+ day old account for the 3x boost


Tip Allowances Formulae

Q: How is the tip allowance amount calculated?
See Airdrop 2 Tip Allocations: multiple lines. 'u' below represents 'user'.

$$inscope\_casts_u = not\_deleted \bigcap not\_a\_reply \bigcap posted\_on(event\_day)$$

$$inscope\_casts\_all\_time_u = not\_deleted \bigcap not\_a\_reply$$

$$cast\_count\_all\_time_u = count(inscope\_casts\_all\_time)$$

$$reaction\_count\_7\_days_u = distinct(users\_reacting\_to\_inscope\_casts\_over\_7\_days_u)$$

$$median\_reactions(P)_u = APPROX\_PERCENTILE(inscope\_casts,reaction\_count\_7\_days, P)$$

$$median\_reactions_u = \begin{cases} \text{median\_reactions(60)} & \text{if } \text{cast\_count\_all\_time} \geq 1000, \\ \text{median\_reactions(50)} & \text{if } 500 \leq \text{cast\_count\_all\_time} < 1000, \\ \text{median\_reactions(40)} & \text{if } 100 \leq \text{cast\_count\_all\_time} < 500, \\ \text{median\_reactions(30)} & \text{if } 50 \leq \text{cast\_count\_all\_time} < 100, \\ \text{median\_reactions(20)} & \text{otherwise.} \\ \end{cases}$$

$$retroactive\_boost_u = \lfloor \log_{10}(days\_between(first\_cast\_timestamp_u, event\_day) + 10) \rfloor $$

$$uncapped\_allowance_u=\lfloor e^{\log_{3}(median\_reactions \times 100)} \times retroactive\_boost_u \rfloor $$

$$tip\_allowance_u = \left\lfloor \frac{uncapped\_allowance_u}{\sum_{i=0}^{users} uncapped\_allowance_i} \times 5000000 \right\rfloor$$

Note also that the APPROX_PERCENTILE function is being supplied too few data points for there to be a difference between the 50th and 60th percentiles, therefore a cast_count_all_time of >= 500 is sufficient to maximize your allowance. Credit to llamatron for noticing this!

Q: In English, how is the tip allowance amount calculated?

  • Your tip allowance is based on how many distinct people react to your original casts over the preceding 7 days

  • The more casts you have, the less consistent the reactions are allowed to be

  • The fewer casts you have, the more consistent the reactions are expected to be

  • An original cast is a top-level cast, in other words, any cast that isn't a reply

  • A reaction is a 👍 like or a 🔁 recast (quotes don't count as recasts)

  • The full number of reacting users is not used; instead, a percentile is used, the exact percentile depends on your all-time cast count

  • The tip allowance calculation is performed every day

  • Tip allowances are scaled so the total tip allowance across all users is 5 million DEGEN per day

  • There is also a retroactive boost multiplier


Put simply, what do I do for more tips?

  1. Make your first cast at least 22 days days ago, preferably 307 days ago. You can buy an old account Farmarket.

  2. Post original casts that get as many likes and recasts as possible from distinct users each day (credit to @eddie)

  3. To get as many likes & recasts you will need followers, and to get those you will need to genuinely engage with as many people as possible by replying to them! I strongly advise reading @bitfloorsghost on "Making a Name for Yourself on Farcaster"

  4. To maximize how many of your unique user's reactions are recognized by the algorithm, you must make at least 500 original casts (including quotes) total across all your time on Farcaster!

    (The developers meant for 1000 to be the threshold, but due to a quirk in their code, 500 is sufficient! Credit to llamatron!)

    if you can't make 500 OG casts, try for at least 100

    if you can't make 100 OG casts, try for at least 50


Formula Deep Dive: Median Reactions

The reactions component is based on the median percentile of number of distinct users reacting to your original casts over the preceding 7 days. The exact percentile used depends on the number of casts you made over all your time on Farcaster.

Only reactions to original casts that were cast in the preceding 7 days will count. Reactions to older casts will not be considered.

What does this mean, and why is it used? Consider the following data:

You want to measure engagement to figure out how significant this user is in the community, but do you use the data from day 1, day 2, etc.? Or do you take an average? What Degen tips does is plot the data as a distribution, and then uses a percentile of that distribution based on how active your account is. Percentile just tells you which percentage of values will fall under a certain amount. If we plot the data above and calculate the percentiles, we end up with the following:

As you can see, the lower the percentile, the fewer reactions will be recognized. And since the percentile used is linked to the number of original casts you've made, what this means is "all of a users' reactions aren't taken as representative; the number of reactions factored into your allowance will increase as you cast more".

For a concrete real world example, see a breakdown of the values. For example, let's consider user (fid) 7251 on 2024-04-04:

Original casts over all time

Percentile that will be used

Median reactions at that percentile

>= 1000

60%

3934

>= 500 but < 1000

50%

3934

>= 100 but < 500

40%

2871

>= 50 but < 100

30%

2643

< 50

20%

2539

As you can see, the more casts, the higher median reaction value. If fid 7251 had 50 original casts over all time, their calculation would use a median reaction value of 2643. Whereas if they had 1000 casts over all time, their calculation would start with 3934 - a 48% higher starting point, which scales semi-exponentially.

Put simply: if you make more casts, on any day (see the table above for the exact levels), more of the distinct users reacting to your casts will count towards your allowance!

Formula Deep Dive: Median Reactions Time of Day

Due to the new rules using the cast timestamps instead of reaction timestamps, a quirk has arisen that makes the time of day of your casts somewhat relevant. Credit to llamatron.eth for figuring this out: read the whole thread, if you like.

Consider the following data, where 2 days ago you casted something close to the end of the UTC day. You got 12 likes on the first day of the posting (2 days ago in the graph), and 45 likes on the second day of the posting (1 day ago in the graph):

Let's say you're in the 40th percentile. Then you would have a median reactions value of 42.8 used in your allowance calculation.

Now, what happens if you move those 12 likes from day 2 to day 1, i.e. you waited to cast until the start of a new UTC day? Assuming you still get the same number of reactions, i.e. 45+12 = 57 in total:

Your 40th percentile median reactions is now 51.6! Why does this happen, even though the total number of reactions stays the same? My understanding (stats experts please correct me if I'm wrong) is that because there are so few buckets, the number of samples is too low to produce an accurate distribution. If the calculation used smaller buckets (e.g. 1 hour or 10 minute intervals), the distribution would have more samples, and the impact would not be as great.

I've shared a copy of the Jupyter notebook used in the diagrams above.

Formula Deep Dive: Retroactive Boost Multiplier

The retroactive boost is a multiplier for your allowance, based on the number of days since your first original cast. You can see a graph of the formula on Desmos. The import part:

  • Between 0 and 21 days since your first cast you get a 1x boost i.e. no boost

  • Between 22 and 306 days since your first cast you get a 2x boost

  • On the 307th day and later since your first cast you get a 3x boost


Put simply: you'll get an 2x boost on day 22, and then a 3x boost on day 307.

Formula Deep Dive: Final Calculation

Finally, component 1 and 2 are multiplied together. You can play with a Desmos simulation here. Try moving the d slider around to see how days since your first cast impact your tip allowance. The dotted red line shows you what the allowance looked like in season 3. The solid green line is the current curve for season 4.

Loading...
highlight
Collect this post to permanently own it.
Ryan's Notes logo
Subscribe to Ryan's Notes and never miss a post.
  • Loading comments...