Why airdrops moved to Telegram: the hard part of a campaign is proving someone did something. Telegram already knows who a user is, whether they joined your channel, and whether they invited anyone. That is most of the verification problem solved before you write any code.
What an airdrop bot actually does
| Job | What it involves | Why the bot is better at it than a form |
|---|---|---|
| Identity | One person, one entry | Telegram supplies a verified account, not a typed email |
| Task verification | Join a channel, invite friends, complete an action | Channel membership is checkable through the API |
| Referral attribution | Who invited whom | Deep links attribute instantly, with no tracking cookies |
| Anti-farming | Filtering fake entries | Account age and behaviour are visible signals |
| Payout | Sending the reward | Same interface people already have open |
The tasks worth verifying
Choose tasks you can actually check. A campaign whose rules cannot be enforced is a campaign that pays everybody, which is a giveaway rather than an airdrop.
| 1 | Channel or group membership Directly checkable through the Bot API, and re-checkable at payout time so people cannot join, qualify and leave. |
| 2 | Referrals Deep-link attribution is instant and reliable. This is the task that actually grows the campaign. |
| 3 | In-app activity Daily check-ins, tapping, quiz answers — anything happening inside your own product is fully verifiable. |
| 4 | Wallet submission Validate the address format and reject duplicates. One wallet, one entry. |
| 5 | External social tasks Weakest link: a screenshot proves nothing. Either integrate a real API or accept these are unverifiable and weight them low. |
Anti-farming is the whole game
That bottom bar is the point. Without filtering, the majority of an airdrop budget reaches people who were never going to become users. Every control you add moves budget from the top bars to the bottom one.
Controls that actually work
| Control | Stops | Cost to you |
|---|---|---|
| Account age minimum | Freshly created throwaways | Excludes some genuine new users |
| Device and IP clustering | One person, many accounts | Occasional false positives on shared connections |
| Joining velocity limits | Scripted bursts | Almost none |
| Re-check membership at payout | Join, qualify, leave | Almost none — this one is free |
| Held-for-review queue | Irreversible payment of fraud | You have to review |
| Per-user lifetime cap | Worst-case exposure | Bounds your best users too |
Push or claim — decide this first
Every airdrop is one of two shapes, and the choice determines your cost, your risk and your code.
| Push (you send) | Claim (they collect) | |
|---|---|---|
| Who pays gas | You, for every recipient | The recipient |
| Cost at 10,000 wallets | Ten thousand transfers | One contract deployment |
| Unclaimed tokens | Impossible — everyone gets them | Typically 40–70% go unclaimed |
| Failure mode | A batch dies halfway and state is unclear | People miss the window and complain |
| Feels like | A gift | A task |
| Right when | Small lists, or the gesture matters | Large lists, or gas cost is prohibitive |
Most large airdrops use claim with a merkle proof: publish a root on-chain, give each eligible wallet a proof, and let them collect. It moves the cost to the recipient and scales to any list size. Push is warmer and simpler, and it is the right answer for a few hundred people.
Where distributions actually break
The first row is the one that ruins projects. A distribution script must be able to answer “has this wallet already been paid?” before every single transfer, and answer it from persisted state rather than from memory. Any script that loops through a list and sends will eventually be re-run after a failure and pay a chunk of the list twice.
What ShipWeb3 sells here
The play-to-earn Mini App is the fullest version of this: tasks, daily check-in, multi-level referrals with fraud scoring, leaderboards, and BEP-20 USDT withdrawals from a wallet you own with the key encrypted at rest. Rewards, caps and referral tiers are editable from the admin panel, which matters because you will retune them during a live campaign.
If you only need distribution, the USDT paying bot is the payout pipeline on its own. If you only need growth, the referral bot is the multi-level tree with the fraud scoring and review queue. The catalogue has the rest.