Reading an airdrop announcement critically
I keep announcements in a folder. Twenty three of them so far, saved as plain text on the morning each one went up.
The reason is dull. Docs pages get edited. Blog posts get quietly revised. A saved copy of what a team said on the day it said it is the only version that stays still, and by the time allocations land it is the only version anyone can argue from.
Reading them back in a batch changes what you notice. The same handful of constructions turn up in nearly all of them, and the gaps sit in the same places too.
An announcement is written by people who benefit from you reading it a particular way, then cleared by somebody paid to make sure none of it can be held against them in four months. Both of those people are doing their job properly. Nothing in this piece requires bad faith from anybody.
The trouble is that farmers read the result as a specification.
What a token count leaves out
An announcement leads with a quantity of tokens, because a large number is a good thing to lead with. Ninety million sounds like something.
It is not a figure you can interpret. Supply is a parameter somebody chose. A team that minted a hundred million and a team that minted a hundred billion have told you nothing different about how much of the project is going to users.
The number that carries information is the fraction of total supply. Everything else is a choice of unit.
So the first job is to find the denominator, and the second is to notice how much work that took. A percentage printed in the announcement means the team was comfortable with you holding it. A percentage you had to derive from a table three clicks away means they were comfortable with you not bothering.
Reading a full supply table, the allocation splits and how much of an allocation is actually liquid at launch, is a separate exercise and I have written that one up on its own. Here I want one fraction and whether the post handed it over.
Past tense or future tense
The next thing decides what kind of document you are holding.
A snapshot in the past makes the announcement news. Your addresses did what they did. Nothing you do after reading it changes the input.
A snapshot in the future, or one with no date attached at all, makes it an instruction. The post exists in that form because there is still behaviour left to influence.
Announcements muddle the two without meaning to, and the present tense does most of the damage by itself. A sentence like eligibility is based on onchain activity reads as a live rule you can still go and satisfy. It can just as easily be describing a measurement that closed six weeks ago.
Look for a date and a tense before you look at anything else. If the post carries neither, you have learned something about how much the team wants to commit to a timeline.
A criterion you cannot check has not committed anyone
There is a quick test. Take the announcement’s wording, pick one of your addresses, and try to decide whether it qualifies.
Sometimes that works. An address that bridged before a stated block. A balance above a threshold on a named date. Wording like that produces a yes or a no, and the answer does not depend on anybody’s judgement later on.
Sometimes it does not work at all. Active users. Genuine participation. Meaningful engagement.
Those phrases will have exact meanings by the time allocations get computed. The meanings have simply not been written down yet, and they get written down after your behaviour has already happened.
Working out what a program is really rewarding, across the docs and the points dashboard and any prior season from the same team, is its own piece and I have covered it elsewhere. The narrower question here is whether the sentence in the announcement can be falsified. If it cannot, the post has not constrained the team in any way, and hours spent optimising against those words go against a definition that does not exist yet.
The second date
Most people take one date out of an announcement. There are usually two.
The claim window is the one that gets skipped, because it reads as a problem for later, and it is the one with a hard consequence attached to missing it.
If a closing date is stated, write it down next to the snapshot date. If nothing is stated, you do not know whether unclaimed tokens return to a treasury, sit in the contract indefinitely, or get shared out among the addresses that did claim.
Expiring claims are ordinary design. There is nothing sinister in the choice. What is worth noticing is that a team which has made that decision and not printed it has still made it.
The wordings that carry the load
Read enough of these back to back and the same constructions keep surfacing.
Eligible and allocated. Eligible means you cleared a filter, and it says nothing about size. You can be eligible for a quantity that does not cover the gas to claim it.
Allocated means a number is attached to an address, which is checkable and therefore a commitment. A post that says eligible the whole way through and never once says allocated has told you it is not ready to attach numbers to addresses. Often that is entirely fair. It is still what it said.
The passive voice around decisions. Allocations will be determined. Wallets will be reviewed. Addresses may be excluded.
Determined by whom, reviewed by whom. A sentence with no subject has had somebody taken out of it, and the person taken out is the one holding the discretion.
Every team needs the sybil decision to stay open, because it is a judgement call they can only make once the data is in. That does not stop the sentence being a reservation of the right to exclude you on grounds nobody has published.
May. May be eligible, may receive, the distribution may include. Three letters covering everything from near certainty down to nothing.
I gave up trying to read individual instances and started counting them instead. One is a soft edge. Nine is a document made mostly of soft edges.
The ordinal. Season one. The first phase. A first implies a second while promising nothing, which makes it the cheapest sentence in the post and one of the most effective. Plenty of teams do run a second season and would write season one honestly meaning it, so the word carries no evidence either way. It is just not a promise, and it gets read as one constantly.
Up to. A stated maximum with no stated distribution behind it. The figure in that sentence is the one almost nobody receives.
The line that was known and left out
The gap I weight most heavily is an announcement that never mentions vesting.
That one sits differently from the others, because a vesting schedule is a known number on the day of writing. Either the contract already exists or the decision has already been made in the room, since nobody designs a distribution without knowing whether it arrives in one piece.
So the information was available and it did not go in.
The reason is not mysterious. An announcement’s job is to produce a particular feeling on publication day. A sentence saying a quarter unlocks at claim and the rest releases across twelve months lowers that feeling, correctly, which is exactly what such a sentence does.
What a schedule then does to a token over the following months is a separate subject and I have written it up at length. This is only about the omission.
The fair version, because it deserves one: sometimes the schedule genuinely is not finalised on the day and it appears in the docs two days later. So the absence proves nothing about the team’s intentions. It remains information about what the document is for.
Read once for the text, once for the redaction
Two passes.
The first is for content. The fraction, the two dates, the criteria you can check.
The second is for what a careful person removed before publication. That pass is slower and it is the one worth the time.
Then a default I will defend. Anything the announcement leaves unstated, treat as unfavourable to you.
This is a claim about drafting incentives, not about honesty. When the answer to a question is one you would like and the team can commit to it, saying so costs nothing and makes the post better. Silence is only cheap when the answer would disappoint, or when the option needs to stay open. Silence therefore has a direction, and it points away from the reader.
I am wrong about this some of the time, and the asymmetry suits me. An unstated thing that turns out fine costs nothing. An unstated thing I assumed was fine costs months.
What it cost me to learn this
Season one. That one was mine.
I read the ordinal as a plan, kept nine wallets warm for five months, and there was no second season. No announcement ever said there would not be one either, which is its own kind of answer. The program just stopped being mentioned.
Under two hundred dollars of gas across the whole thing, so the money was never really the issue. Five months of attention was.
The limit belongs here too. I cannot read intent out of wording. A careful lawyer at a serious project and a rushed team in a hurry produce identical sentences. All of this tells you what a document commits to, and none of it tells you what the people behind it are going to do, and anyone selling you the second thing on the strength of the first is guessing.
One obvious clause: the announcement you are reading has to be the genuine one on the project’s own domain, which is a separate subject and mostly comes down to never opening a link somebody sent you.
The saved announcements, the checklist I read them against and the rest of how I run this side of things are on the home page.
Get new guides and videos first — join the Telegram channel.