{"id":17489,"date":"2026-09-19T14:08:10","date_gmt":"2026-09-19T08:38:10","guid":{"rendered":"https:\/\/www.blockchainappfactory.com\/blog\/?p=17489"},"modified":"2026-09-19T14:08:10","modified_gmt":"2026-09-19T08:38:10","slug":"sybil-resistance-for-airdrops-filters-scoring","status":"publish","type":"post","link":"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/","title":{"rendered":"Sybil Resistance for Airdrops: Filters, Scoring and What Projects Get Wrong"},"content":{"rendered":"<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">A token team holds an eligibility list of 250,000 addresses and eight days before allocations lock. Part of it belongs to people who used the product. Part belongs to operators running scripted wallets at volume. Nobody can say where the line sits.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Cut too hard and real users lose allocations, complain in public, and skip the next campaign. Cut too lightly and a farming operation takes a large share of supply and sells into the first week of trading. Both mistakes stay invisible until tokens move.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">The scale is not hypothetical. In the Sybil analysis Linea published with Nansen, disclosed in January 2025, 1,297,203 addresses were reviewed and 516,960 were classified as Sybil, close to 40 percent of the list. That figure came from thresholds the team chose. It is not a count of proven abuse.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Sybil resistance is an allocation decision under uncertainty, made on partial evidence against a deadline.<\/p>\n<p><!-- KEY TAKEAWAYS BOX --><\/p>\n<div style=\"background: #0b1f3a;border-left: 6px solid #2dd4bf;padding: 26px 30px;margin: 30px 0\">\n<h4 style=\"color: #2dd4bf;font-size: 18px;margin: 0 0 14px;letter-spacing: 0.5px\">Key takeaways<\/h4>\n<ul style=\"margin: 0;padding-left: 20px;color: #ffffff;line-height: 1.75;font-size: 16px\">\n<li style=\"margin-bottom: 12px\">Sybil resistance is an allocation decision under uncertainty. On-chain signals show correlation between addresses and never prove who controls them.<\/li>\n<li style=\"margin-bottom: 12px\">Filters, behavioral scoring, clustering, and human review answer different questions. Collapsing them into one pipeline produces confident decisions built on weak evidence.<\/li>\n<li style=\"margin-bottom: 0\">Judge a program by allocation quality and by how it handles mistakes. The removal count says little.<\/li>\n<\/ul>\n<\/div>\n<h2 style=\"color: #0b1f3a;font-size: 28px;line-height: 1.3;margin: 38px 0 14px;border-left: 5px solid #2dd4bf;padding-left: 14px\">Name the behavior the campaign is paying for<\/h2>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Most eligibility disputes start before any filter runs, with a team that never wrote down what the airdrop was buying.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Write the objective first, in plain terms. A campaign rewarding sustained liquidity needs different evidence from one rewarding governance or code contribution. The objective decides which signals carry weight. Scoring that runs ahead of it ranks whatever was easiest to query.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Four groups need an explicit answer before the snapshot:<\/p>\n<ul style=\"margin: 0 0 20px;padding-left: 22px;color: #0b1f3a;line-height: 1.75;font-size: 17px\">\n<li style=\"margin-bottom: 10px\">Existing users: reward depth and duration over raw counts.<\/li>\n<li style=\"margin-bottom: 10px\">Newcomers: expect thin histories, and decide in advance whether that reduces a score.<\/li>\n<li style=\"margin-bottom: 10px\">Contributors: much of the work sits off chain, in repositories, forums, translations, and moderation logs.<\/li>\n<li style=\"margin-bottom: 10px\">People using several wallets: separating funds by purpose breaks no rule by itself.<\/li>\n<\/ul>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Activity volume is the easiest thing to measure and to manufacture. Transaction counts and bridge hops come cheaply from a script. Useful participation is harder to fake: capital held through a drawdown, repeat usage across long gaps, votes with written rationale, code merged into a public repository.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">One person controlling several wallets is not automatically abusive. Abuse depends on the published rule and the behavior being assessed. If the rules promise one allocation per person and someone claims twelve, that breaks the rule. If the rules reward volume and someone supplies volume across twelve wallets, the campaign designed that outcome.<\/p>\n<h2 style=\"color: #0b1f3a;font-size: 28px;line-height: 1.3;margin: 38px 0 14px;border-left: 5px solid #2dd4bf;padding-left: 14px\">What a filter actually proves<\/h2>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">A filter is a rule with a cutoff. It answers a narrow question with yes or no. Filters are cheap and easy to explain, which is why most programs start there.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">The common signals are familiar:<\/p>\n<ul style=\"margin: 0 0 20px;padding-left: 22px;color: #0b1f3a;line-height: 1.75;font-size: 17px\">\n<li style=\"margin-bottom: 10px\">Timing: addresses funded or first active within minutes of each other.<\/li>\n<li style=\"margin-bottom: 10px\">Shared funding: many addresses drawing first gas from one source.<\/li>\n<li style=\"margin-bottom: 10px\">Repeated patterns: near identical sequences, amounts, intervals, or gas settings.<\/li>\n<li style=\"margin-bottom: 10px\">Account history: age, dormancy, activity clustered around qualification windows.<\/li>\n<li style=\"margin-bottom: 10px\">Common counterparties: addresses touching the same contracts in the same order.<\/li>\n<\/ul>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Every one of those signals has a benign explanation that occurs constantly. Exchange withdrawals place thousands of unrelated users on one funding source within an hour. Users of a single wallet app or RPC provider produce similar transaction shapes. Popular tutorials and quest boards generate identical action sequences across strangers. A community running a workshop produces clustered activity that looks coordinated because it is.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">A filter establishes that a pattern exists. It does not establish who controls the addresses, or that anyone broke a published rule. Treat filter output as a reason to look closer.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">A cutoff that worked on one chain, in one quarter, against one cohort is not a best practice for anyone else.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-17494 size-full\" src=\"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2026\/09\/One-wallet-funding-pattern-with-two-possible-explanations-Image.jpg\" alt=\"Diagram showing one wallet funding pattern with two possible explanations, a legitimate exchange withdrawal group and a coordinated farming cluster\" width=\"960\" height=\"540\" \/><\/p>\n<h2 style=\"color: #0b1f3a;font-size: 28px;line-height: 1.3;margin: 38px 0 14px;border-left: 5px solid #2dd4bf;padding-left: 14px\">How behavioral scoring should work<\/h2>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Scoring replaces a single cutoff with a weighted combination of signals. Done well, it ranks addresses by how far the evidence departs from expected behavior. Done badly, it wraps guesswork in arithmetic and makes it look official.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Five properties decide whether a score is worth anything:<\/p>\n<ul style=\"margin: 0 0 20px;padding-left: 22px;color: #0b1f3a;line-height: 1.75;font-size: 17px\">\n<li style=\"margin-bottom: 10px\">Signal quality: a signal earns its weight only if it separates the groups you care about on real data.<\/li>\n<li style=\"margin-bottom: 10px\">Independence: funding source, first transaction time, and gas origin often describe one event. Counting all three triples the weight of one fact.<\/li>\n<li style=\"margin-bottom: 10px\">Missing data: a new address has no history. Absence of evidence lowers confidence. It should not raise the risk score.<\/li>\n<li style=\"margin-bottom: 10px\">Threshold calibration: the cutoff sets both error rates, and moving it trades one against the other.<\/li>\n<li style=\"margin-bottom: 10px\">Confidence: carry an uncertainty band with every score, and route low confidence cases to reviewers.<\/li>\n<\/ul>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">One illustrative example follows. Every weight and cutoff below is illustrative and should not be copied into a live program.<\/p>\n<ul style=\"margin: 0 0 20px;padding-left: 22px;color: #0b1f3a;line-height: 1.75;font-size: 17px\">\n<li style=\"margin-bottom: 10px\">Shared first funding source with 20 or more list addresses: plus 30<\/li>\n<li style=\"margin-bottom: 10px\">Transaction sequence matching a known cluster template: plus 25<\/li>\n<li style=\"margin-bottom: 10px\">Capital held through a 30 percent drawdown: minus 20<\/li>\n<li style=\"margin-bottom: 10px\">Governance vote with written rationale: minus 25<\/li>\n<\/ul>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">An address at 70 points is not 70 percent likely to be abusive. A score carries probability meaning only after calibration against verified outcomes, which are scarce here. Read it as a queue position. High scores get reviewed first.<\/p>\n<p><!-- PULL QUOTE --><\/p>\n<table style=\"width: 100%;border-collapse: collapse;margin: 30px 0\">\n<tbody>\n<tr>\n<td style=\"background: #0b1f3a;border-left: 6px solid #f59e0b;padding: 26px 30px;color: #ffffff;font-size: 21px;line-height: 1.55;font-style: italic\">A score tells you where to look. It never tells you who is on the other side of the keyboard.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 style=\"color: #0b1f3a;font-size: 28px;line-height: 1.3;margin: 38px 0 14px;border-left: 5px solid #2dd4bf;padding-left: 14px\">Where wallet clustering breaks down<\/h2>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Clustering groups addresses that look related. It is the best available tool for finding industrial scale farming, because scripted operations leave structure individuals do not.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">One distinction carries most of the weight. An observed link is not inferred common control. A transfer between two addresses is observed. The claim that one person controls both is an inference, only as strong as the alternatives you ruled out.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Infrastructure manufactures links constantly. Exchange withdrawal addresses connect strangers. Bridges and aggregators sit between thousands of wallets. Shared relayers and paymasters appear in the graph of everyone who touched them. Clustering that treats these as ordinary edges merges strangers into one alleged actor.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Three practices reduce that failure:<\/p>\n<ul style=\"margin: 0 0 20px;padding-left: 22px;color: #0b1f3a;line-height: 1.75;font-size: 17px\">\n<li style=\"margin-bottom: 10px\">Keep an exclusion list of known service and contract addresses, refreshed before every run.<\/li>\n<li style=\"margin-bottom: 10px\">Weight direct peer to peer transfers above shared use of a public contract.<\/li>\n<li style=\"margin-bottom: 10px\">Require several independent link types before treating a cluster as one actor.<\/li>\n<\/ul>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">The Arbitrum Foundation&#8217;s published Sybil detection repository follows this shape. It strips known entity addresses, including bridges, exchanges, routers, and contracts, before building its transaction graphs, then applies community detection to break oversized clusters apart.<\/p>\n<p><!-- COMPARISON TABLE --><\/p>\n<table style=\"width: 100%;border-collapse: collapse;margin: 30px 0;font-size: 16px\">\n<tbody>\n<tr>\n<th style=\"background: #0b1f3a;color: #ffffff;padding: 14px 16px;text-align: left;border: 1px solid #0b1f3a;width: 20%\">Layer<\/th>\n<th style=\"background: #0b1f3a;color: #ffffff;padding: 14px 16px;text-align: left;border: 1px solid #0b1f3a;width: 26%\">What it can establish<\/th>\n<th style=\"background: #0b1f3a;color: #ffffff;padding: 14px 16px;text-align: left;border: 1px solid #0b1f3a;width: 30%\">Main limitation<\/th>\n<th style=\"background: #0b1f3a;color: #ffffff;padding: 14px 16px;text-align: left;border: 1px solid #0b1f3a;width: 24%\">Evidence strength<\/th>\n<\/tr>\n<tr>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Eligibility filters<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Whether an address meets a published rule<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Nothing about control or intent, and easy to design around once published<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;background: #fdf3e0\">Weak on abuse<\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Behavioral risk scoring<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">A ranking of how far behavior departs from expected patterns<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Correlated signals inflate scores, which carry no probability meaning without labels<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;background: #fdf3e0\">Partial, ranking only<\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Wallet clustering<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Observed links, and the shape of large coordinated operations<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Shared infrastructure creates false links, and common control stays an inference<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;background: #e6faf7\">Strong on scale, weak on identity<\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Identity or personhood signals<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">That a distinct person or credential stands behind a claim<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Excludes privacy conscious users, and creates data handling duties<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;background: #e6faf7\">Strong on uniqueness<\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Human review and appeals<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Context no automated signal captures, and a record of reversals<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top\">Slow and inconsistent between reviewers, hard to run at list scale<\/td>\n<td style=\"padding: 14px 16px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;background: #e6faf7\">Strongest per case<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><!-- CTA BOX 1 --><\/p>\n<table style=\"width: 100%;border-collapse: collapse;margin: 34px 0\">\n<tbody>\n<tr>\n<td style=\"background: #0b1f3a;border-top: 5px solid #2dd4bf;padding: 30px;text-align: center\">\n<h4 style=\"color: #ffffff;font-size: 22px;margin: 0 0 10px;line-height: 1.4\">Planning a token launch and unsure your eligibility rules will hold up?<\/h4>\n<p style=\"color: #cbd5e1;font-size: 16px;line-height: 1.6;margin: 0 0 20px\">Blockchain App Factory works with launch teams on airdrop campaign strategy, quest campaigns, and pre-TGE marketing.<\/p>\n<p><a style=\"background: #2dd4bf;color: #0b1f3a;padding: 14px 30px;text-decoration: none;font-weight: bold;font-size: 16px;border-radius: 4px\" href=\"https:\/\/www.blockchainappfactory.com\/contact\">Talk to our token launch team<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 style=\"color: #0b1f3a;font-size: 28px;line-height: 1.3;margin: 38px 0 14px;border-left: 5px solid #2dd4bf;padding-left: 14px\">When the filter gets it wrong<\/h2>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Every threshold produces two error types. Excluding a legitimate user is a false positive. Paying a farmed address is a false negative. Neither reaches zero, so decide early which one your campaign can live with.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Precision and recall describe the trade. Precision is the share of flagged addresses that really were abusive. Recall is the share of abusive addresses you caught. Both need ground truth, meaning verified labels for a sample. Without labels, a reported accuracy figure is an assertion.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Teams can still learn plenty without perfect labels:<\/p>\n<ul style=\"margin: 0 0 20px;padding-left: 22px;color: #0b1f3a;line-height: 1.75;font-size: 17px\">\n<li style=\"margin-bottom: 10px\">Review samples from both groups. Pull a random sample of flagged addresses and an equal sample of unflagged ones, then judge them blind against the rules.<\/li>\n<li style=\"margin-bottom: 10px\">Record a reason for every exclusion, one line per address or cluster, naming the signals that drove it.<\/li>\n<li style=\"margin-bottom: 10px\">Keep appeals proportionate. A wallet signature and an explanation of the funding path resolves most cases. Identity documents belong at the end of that path.<\/li>\n<li style=\"margin-bottom: 10px\">Track reversals. The share of decisions overturned after review is the most honest quality signal available before launch.<\/li>\n<li style=\"margin-bottom: 10px\">Measure friction on legitimate users: decision time, and appeals abandoned part way.<\/li>\n<\/ul>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">CARV, in October 2024, answered complaints about wrongly flagged accounts with two routes: a third party analytics review it estimated at four to eight weeks, or identity verification at two to four weeks. That is what late appeals cost. CARV published no reversal counts, so the outcome remains unknown.<\/p>\n<p><!-- EXPLAINER IMAGE 2 --><\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-17498\" src=\"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2026\/09\/Airdrop-Eligibility-Process-2.jpg\" alt=\"Flow diagram of an airdrop eligibility process moving from filters to risk scoring, clustering, human review, appeals, and the final allocation decision\" width=\"960\" height=\"540\" \/><\/p>\n<h2 style=\"color: #0b1f3a;font-size: 28px;line-height: 1.3;margin: 38px 0 14px;border-left: 5px solid #2dd4bf;padding-left: 14px\">What documented campaigns actually teach<\/h2>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Three disclosures are worth reading closely. Their rules and measurement methods differ, so these numbers are not comparable.<\/p>\n<p><!-- THREE COLUMN STAT BAND --><\/p>\n<table style=\"width: 100%;border-collapse: collapse;margin: 30px 0;background: #0b1f3a\">\n<tbody>\n<tr>\n<td style=\"padding: 26px 22px;color: #ffffff;vertical-align: top;width: 33.33%\">\n<p style=\"color: #2dd4bf;font-size: 30px;line-height: 1.2;margin: 0 0 8px;font-weight: bold\">516,960<\/p>\n<p style=\"color: #ffffff;font-size: 15px;line-height: 1.6;margin: 0 0 10px\">addresses classified as Sybil out of 1,297,203 reviewed, about 39.9 percent, after initial screening had flagged 654,443<\/p>\n<p style=\"color: #f59e0b;font-size: 13px;line-height: 1.5;margin: 0\">Source: Nansen and Linea Sybil report, disclosed January 2025. Flagged is not the same as confirmed abuse, and the methodology is proprietary.<\/p>\n<\/td>\n<td style=\"padding: 26px 22px;color: #ffffff;vertical-align: top;width: 33.33%;border-left: 2px solid #2dd4bf\">\n<p style=\"color: #2dd4bf;font-size: 30px;line-height: 1.2;margin: 0 0 8px;font-weight: bold\">803,093<\/p>\n<p style=\"color: #ffffff;font-size: 15px;line-height: 1.6;margin: 0 0 10px\">addresses on the published Sybil list, narrowed from an initial pool the project described as over 2 million<\/p>\n<p style=\"color: #f59e0b;font-size: 13px;line-height: 1.5;margin: 0\">Source: LayerZero, May 2024, combining self-reporting with analysis by LayerZero, Chaos Labs, and Nansen. Project reported and not independently audited.<\/p>\n<\/td>\n<td style=\"padding: 26px 22px;color: #ffffff;vertical-align: top;width: 33.34%;border-left: 2px solid #2dd4bf\">\n<p style=\"color: #2dd4bf;font-size: 30px;line-height: 1.2;margin: 0 0 8px;font-weight: bold\">7.4%<\/p>\n<p style=\"color: #ffffff;font-size: 15px;line-height: 1.6;margin: 0 0 10px\">real world accuracy for a detection model trained on synthetic graphs, against 98.25 percent on its own test set<\/p>\n<p style=\"color: #f59e0b;font-size: 13px;line-height: 1.5;margin: 0\">Source: Kaczynski and Wiacek, International Journal of Electronics and Telecommunications, 2026. One rollup, externally owned accounts only, manual labels.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4 style=\"color: #0b1f3a;font-size: 19px;margin: 26px 0 10px\">Linea and Nansen, disclosed January 2025<\/h4>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Nansen reviewed 1,297,203 addresses holding Linea XP. Initial screening flagged 654,443, roughly 50 percent. Thresholds were then adjusted toward larger automated operations. The final count was 516,960 classified as Sybil, with 780,243 still eligible. Nansen stated it favored precision over recall and checked clusters by manual sampling. What it shows: the exclusion count is a policy choice. What stays unknown: the thresholds are proprietary, and no reversal figures were published.<\/p>\n<h4 style=\"color: #0b1f3a;font-size: 19px;margin: 26px 0 10px\">LayerZero, May 2024<\/h4>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">LayerZero ran a self-report window from 3 to 17 May 2024. Self-reporting addresses kept 15 percent of their intended allocation, and the other 85 percent went back to qualified users. A bounty period followed. Between self-reporting and analysis by LayerZero, Chaos Labs, and Nansen, 803,093 addresses were identified. What it shows: incentives surface behavior detection alone misses. What stays unknown: how many would survive independent scrutiny, since the list is project reported.<\/p>\n<h4 style=\"color: #0b1f3a;font-size: 19px;margin: 26px 0 10px\">Optimism Airdrop 1, May 2022<\/h4>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">After distribution, the Optimism Foundation removed a further 17,000 addresses and recovered over 14 million OP, redistributed proportionally to the remaining eligible addresses. It declined to publish the additional filters used, and cited the integrity of future airdrops. What it shows: teams sometimes resolve the transparency trade against disclosure on purpose. What stays unknown: affected users had no basis to evaluate it.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">One more figure belongs here. Monad&#8217;s published results state that 4.73 billion MON were made available across 289,000 eligible accounts, and that 76,021 unique wallets claimed 3.33 billion tokens, about 70.4 percent, between 14 October and 3 November 2025. Allocation is not distribution, and a number quoted before a claim window closes describes intent.<\/p>\n<h2 style=\"color: #0b1f3a;font-size: 28px;line-height: 1.3;margin: 38px 0 14px;border-left: 5px solid #2dd4bf;padding-left: 14px\">Mistakes that keep repeating<\/h2>\n<ul style=\"margin: 0 0 20px;padding-left: 22px;color: #0b1f3a;line-height: 1.75;font-size: 17px\">\n<li style=\"margin-bottom: 12px\">Treating activity volume as proof of contribution. Volume rewards whoever automates fastest.<\/li>\n<li style=\"margin-bottom: 12px\">Treating correlated signals as independent evidence. Three views of one funding event are one fact.<\/li>\n<li style=\"margin-bottom: 12px\">Changing rules late without explaining the effect. A short note on who is affected prevents most of the backlash.<\/li>\n<li style=\"margin-bottom: 12px\">Ignoring legitimate shared behavior. Regional communities and popular tutorials produce exactly the clustered activity the campaign asked for.<\/li>\n<li style=\"margin-bottom: 12px\">Making opaque decisions with no meaningful review. If nobody can appeal, errors never surface.<\/li>\n<li style=\"margin-bottom: 12px\">Measuring exclusions instead of allocation quality. A large exclusion count describes a threshold. It says nothing about who was paid.<\/li>\n<\/ul>\n<h2 style=\"color: #0b1f3a;font-size: 28px;line-height: 1.3;margin: 38px 0 14px;border-left: 5px solid #2dd4bf;padding-left: 14px\">A rollout plan that survives contact with real users<\/h2>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Most damage comes from running detection and enforcement in one step, on one day. Separating them costs a few weeks and prevents the failures that become public disputes.<\/p>\n<p><!-- LEFT BADGE TIMELINE --><\/p>\n<table style=\"width: 100%;border-collapse: collapse;margin: 30px 0;font-size: 16px\">\n<tbody>\n<tr>\n<td style=\"background: #0b1f3a;color: #2dd4bf;font-size: 22px;font-weight: bold;text-align: center;vertical-align: middle;width: 58px;padding: 18px 0;border-bottom: 3px solid #ffffff\">1<\/td>\n<td style=\"padding: 18px 20px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;line-height: 1.65\">Define objectives and rules. State what the campaign rewards and how multiple wallets are treated. Say which behaviors break the rules.<\/td>\n<\/tr>\n<tr>\n<td style=\"background: #0b1f3a;color: #2dd4bf;font-size: 22px;font-weight: bold;text-align: center;vertical-align: middle;width: 58px;padding: 18px 0;border-bottom: 3px solid #ffffff\">2<\/td>\n<td style=\"padding: 18px 20px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;line-height: 1.65\">Evaluate signals on historical or pilot data. Check which ones separate groups, which duplicate each other, how often each is missing, and how stable each one is over time.<\/td>\n<\/tr>\n<tr>\n<td style=\"background: #0b1f3a;color: #2dd4bf;font-size: 22px;font-weight: bold;text-align: center;vertical-align: middle;width: 58px;padding: 18px 0;border-bottom: 3px solid #ffffff\">3<\/td>\n<td style=\"padding: 18px 20px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;line-height: 1.65\">Run scoring in shadow mode. Score the list without enforcing anything, and see who lands where before allocations depend on it.<\/td>\n<\/tr>\n<tr>\n<td style=\"background: #0b1f3a;color: #2dd4bf;font-size: 22px;font-weight: bold;text-align: center;vertical-align: middle;width: 58px;padding: 18px 0;border-bottom: 3px solid #ffffff\">4<\/td>\n<td style=\"padding: 18px 20px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;line-height: 1.65\">Review samples and calibrate. Read flagged and unflagged samples blind, adjust thresholds against what reviewers find, and record why.<\/td>\n<\/tr>\n<tr>\n<td style=\"background: #0b1f3a;color: #2dd4bf;font-size: 22px;font-weight: bold;text-align: center;vertical-align: middle;width: 58px;padding: 18px 0;border-bottom: 3px solid #ffffff\">5<\/td>\n<td style=\"padding: 18px 20px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;line-height: 1.65\">Publish explanations and open appeals before tokens move. Give affected users a reason category, a route to respond, a turnaround time, and a named owner.<\/td>\n<\/tr>\n<tr>\n<td style=\"background: #0b1f3a;color: #2dd4bf;font-size: 22px;font-weight: bold;text-align: center;vertical-align: middle;width: 58px;padding: 18px 0\">6<\/td>\n<td style=\"padding: 18px 20px;border: 1px solid #d7dde5;color: #0b1f3a;vertical-align: top;line-height: 1.65\">Review outcomes after distribution. Report reversal rates, appeal volumes, median decision time, and how the allocation landed. Carry that into the next campaign.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Transparency has a limit. Publishing exact thresholds hands a specification to the operators you want to exclude. Publishing nothing, as Optimism chose in 2022, leaves legitimate users unable to contest a decision. A workable middle ground: publish the objective, the signal categories, the reason categories behind exclusions, and the appeals route, while holding back weights and cutoffs.<\/p>\n<h2 style=\"color: #0b1f3a;font-size: 28px;line-height: 1.3;margin: 38px 0 14px;border-left: 5px solid #2dd4bf;padding-left: 14px\">Where to start this week<\/h2>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Take your eligibility draft and answer three questions on one page. What behavior is this campaign paying for? Which error hurts more, excluding a real user or paying a farmed address? What does an excluded person see, and how do they respond? No scoring model supplies those answers later.<\/p>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Campaign design sits upstream of all this. Blockchain App Factory works with token teams on <a href=\"https:\/\/www.blockchainappfactory.com\/airdrop-marketing\"><strong>airdrop campaign strategy and quest campaigns<\/strong><\/a>, token launch marketing in the 60 to 90 day window ahead of a sale, community management across Telegram and Discord, and exchange listing coordination. That work shapes the rules users read and the experience of anyone who appeals. It sits alongside your own detection and review process and does not replace it, since that part stays a data and engineering responsibility inside the project or with an analytics partner.<\/p>\n<p><!-- CTA BOX 2 --><\/p>\n<table style=\"width: 100%;border-collapse: collapse;margin: 34px 0\">\n<tbody>\n<tr>\n<td style=\"background: #0b1f3a;border-top: 5px solid #2dd4bf;padding: 30px;text-align: center\">\n<h4 style=\"color: #ffffff;font-size: 22px;margin: 0 0 20px;line-height: 1.4\">Want help planning an airdrop campaign your community can actually follow?<\/h4>\n<p><a style=\"background: #2dd4bf;color: #0b1f3a;padding: 14px 30px;text-decoration: none;font-weight: bold;font-size: 16px;border-radius: 4px\" href=\"https:\/\/www.blockchainappfactory.com\/contact\">Plan your airdrop campaign with us<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 style=\"color: #0b1f3a;font-size: 28px;line-height: 1.3;margin: 38px 0 14px;border-left: 5px solid #2dd4bf;padding-left: 14px\">Frequently asked questions<\/h2>\n<h4 style=\"color: #0b1f3a;font-size: 19px;margin: 24px 0 8px\">Is using several wallets against the rules?<\/h4>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Only if the campaign said so. Many people separate wallets by purpose or by risk. Rules become enforceable when written before the snapshot, so state whether allocation is per address or per person.<\/p>\n<h4 style=\"color: #0b1f3a;font-size: 19px;margin: 24px 0 8px\">Should we publish our Sybil criteria before the snapshot?<\/h4>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Publish the objective, the signal categories, the exclusion reason categories, and the appeals route. Hold back exact weights and cutoffs. Full disclosure becomes a specification for the operators you want to exclude. Full secrecy leaves honest users unable to contest anything.<\/p>\n<h4 style=\"color: #0b1f3a;font-size: 19px;margin: 24px 0 8px\">Do we need identity verification to run a defensible airdrop?<\/h4>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">No. Identity checks answer uniqueness, not usefulness, and they exclude privacy conscious users while creating data obligations. Most programs get further by defining rewarded behavior tightly and reviewing edge cases by hand.<\/p>\n<h4 style=\"color: #0b1f3a;font-size: 19px;margin: 24px 0 8px\">What should happen to tokens recovered from excluded addresses?<\/h4>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Announce the destination before exclusions run. Optimism redistributed recovered OP proportionally to remaining eligible addresses in 2022. Other options include the treasury or a later round. The mistake is deciding once the numbers are known.<\/p>\n<h4 style=\"color: #0b1f3a;font-size: 19px;margin: 24px 0 8px\">How long should an appeals window stay open?<\/h4>\n<p style=\"line-height: 1.7;margin: 0 0 18px;color: #0b1f3a;font-size: 17px\">Long enough for every timezone to notice and respond, and closed before tokens become transferable. Post a turnaround time, staff it in advance, and publish reversal counts afterwards.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A token team holds an eligibility list of 250,000 addresses and eight days before allocations lock. Part of it belongs to people who used the product. Part belongs to operators running scripted wallets at volume. Nobody can say where the line sits. Cut too hard and real users lose allocations, complain in public, and skip&hellip;&nbsp;<a href=\"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/\" class=\"\" rel=\"bookmark\">Read More &raquo;<span class=\"screen-reader-text\">Sybil Resistance for Airdrops: Filters, Scoring and What Projects Get Wrong<\/span><\/a><\/p>\n","protected":false},"author":100,"featured_media":17490,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"off","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[1424],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Sybil Resistance for Airdrops: Filters and Scoring<\/title>\n<meta name=\"description\" content=\"How airdrop teams design Sybil filters, risk scoring, wallet clustering and appeals, with evidence from documented token campaigns.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sybil Resistance for Airdrops: Filters and Scoring\" \/>\n<meta property=\"og:description\" content=\"How airdrop teams design Sybil filters, risk scoring, wallet clustering and appeals, with evidence from documented token campaigns.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/\" \/>\n<meta property=\"og:site_name\" content=\"Blockchain App Factory\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/BlockchainAppFactory\/\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-19T08:38:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2026\/09\/Sybil-Resistance-for-Airdrops.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Vimal J\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@Blockchain_BAF\" \/>\n<meta name=\"twitter:site\" content=\"@Blockchain_BAF\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Vimal J\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"13 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/\"},\"author\":{\"name\":\"Vimal J\",\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/#\/schema\/person\/2cdffa3a5051c2bff789a25e5cc1885b\"},\"headline\":\"Sybil Resistance for Airdrops: Filters, Scoring and What Projects Get Wrong\",\"datePublished\":\"2026-09-19T08:38:10+00:00\",\"dateModified\":\"2026-09-19T08:38:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/\"},\"wordCount\":2600,\"publisher\":{\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/#organization\"},\"articleSection\":[\"Crypto Marketing\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/\",\"url\":\"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/\",\"name\":\"Sybil Resistance for Airdrops: Filters and Scoring\",\"isPartOf\":{\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/#website\"},\"datePublished\":\"2026-09-19T08:38:10+00:00\",\"dateModified\":\"2026-09-19T08:38:10+00:00\",\"description\":\"How airdrop teams design Sybil filters, risk scoring, wallet clustering and appeals, with evidence from documented token campaigns.\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/\"]}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/#website\",\"url\":\"https:\/\/www.blockchainappfactory.com\/blog\/\",\"name\":\"Blockchain App Factory\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.blockchainappfactory.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/#organization\",\"name\":\"Blockchain App Factory\",\"url\":\"https:\/\/www.blockchainappfactory.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2018\/10\/logo-green-1.png\",\"contentUrl\":\"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2018\/10\/logo-green-1.png\",\"width\":177,\"height\":35,\"caption\":\"Blockchain App Factory\"},\"image\":{\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/BlockchainAppFactory\/\",\"https:\/\/twitter.com\/Blockchain_BAF\",\"https:\/\/www.instagram.com\/blockchainappfactory\/\",\"https:\/\/www.linkedin.com\/company\/blockchainappfactory\/\",\"https:\/\/www.youtube.com\/channel\/UCZS6OftazbyXcvS8mPa-61w\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/#\/schema\/person\/2cdffa3a5051c2bff789a25e5cc1885b\",\"name\":\"Vimal J\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.blockchainappfactory.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2026\/05\/img-author1.png\",\"contentUrl\":\"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2026\/05\/img-author1.png\",\"caption\":\"Vimal J\"},\"description\":\"Vimal J is the Head of Sales at Blockchain App Factory, with 10+ years of experience in sales, client strategy, and Web3 business growth. He helps startups, enterprises, and project founders choose the right blockchain solutions for their goals, bringing a practical market perspective to topics like token development, crypto launches, and Web3 adoption.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/vimal-j-0a1472142\/\"],\"url\":\"https:\/\/www.blockchainappfactory.com\/blog\/author\/marketting\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Sybil Resistance for Airdrops: Filters and Scoring","description":"How airdrop teams design Sybil filters, risk scoring, wallet clustering and appeals, with evidence from documented token campaigns.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/","og_locale":"en_US","og_type":"article","og_title":"Sybil Resistance for Airdrops: Filters and Scoring","og_description":"How airdrop teams design Sybil filters, risk scoring, wallet clustering and appeals, with evidence from documented token campaigns.","og_url":"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/","og_site_name":"Blockchain App Factory","article_publisher":"https:\/\/www.facebook.com\/BlockchainAppFactory\/","article_published_time":"2026-09-19T08:38:10+00:00","og_image":[{"width":960,"height":600,"url":"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2026\/09\/Sybil-Resistance-for-Airdrops.jpg","type":"image\/jpeg"}],"author":"Vimal J","twitter_card":"summary_large_image","twitter_creator":"@Blockchain_BAF","twitter_site":"@Blockchain_BAF","twitter_misc":{"Written by":"Vimal J","Est. reading time":"13 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/#article","isPartOf":{"@id":"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/"},"author":{"name":"Vimal J","@id":"https:\/\/www.blockchainappfactory.com\/blog\/#\/schema\/person\/2cdffa3a5051c2bff789a25e5cc1885b"},"headline":"Sybil Resistance for Airdrops: Filters, Scoring and What Projects Get Wrong","datePublished":"2026-09-19T08:38:10+00:00","dateModified":"2026-09-19T08:38:10+00:00","mainEntityOfPage":{"@id":"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/"},"wordCount":2600,"publisher":{"@id":"https:\/\/www.blockchainappfactory.com\/blog\/#organization"},"articleSection":["Crypto Marketing"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/","url":"https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/","name":"Sybil Resistance for Airdrops: Filters and Scoring","isPartOf":{"@id":"https:\/\/www.blockchainappfactory.com\/blog\/#website"},"datePublished":"2026-09-19T08:38:10+00:00","dateModified":"2026-09-19T08:38:10+00:00","description":"How airdrop teams design Sybil filters, risk scoring, wallet clustering and appeals, with evidence from documented token campaigns.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.blockchainappfactory.com\/blog\/sybil-resistance-for-airdrops-filters-scoring\/"]}]},{"@type":"WebSite","@id":"https:\/\/www.blockchainappfactory.com\/blog\/#website","url":"https:\/\/www.blockchainappfactory.com\/blog\/","name":"Blockchain App Factory","description":"","publisher":{"@id":"https:\/\/www.blockchainappfactory.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.blockchainappfactory.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.blockchainappfactory.com\/blog\/#organization","name":"Blockchain App Factory","url":"https:\/\/www.blockchainappfactory.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.blockchainappfactory.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2018\/10\/logo-green-1.png","contentUrl":"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2018\/10\/logo-green-1.png","width":177,"height":35,"caption":"Blockchain App Factory"},"image":{"@id":"https:\/\/www.blockchainappfactory.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/BlockchainAppFactory\/","https:\/\/twitter.com\/Blockchain_BAF","https:\/\/www.instagram.com\/blockchainappfactory\/","https:\/\/www.linkedin.com\/company\/blockchainappfactory\/","https:\/\/www.youtube.com\/channel\/UCZS6OftazbyXcvS8mPa-61w"]},{"@type":"Person","@id":"https:\/\/www.blockchainappfactory.com\/blog\/#\/schema\/person\/2cdffa3a5051c2bff789a25e5cc1885b","name":"Vimal J","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.blockchainappfactory.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2026\/05\/img-author1.png","contentUrl":"https:\/\/www.blockchainappfactory.com\/blog\/wp-content\/uploads\/2026\/05\/img-author1.png","caption":"Vimal J"},"description":"Vimal J is the Head of Sales at Blockchain App Factory, with 10+ years of experience in sales, client strategy, and Web3 business growth. He helps startups, enterprises, and project founders choose the right blockchain solutions for their goals, bringing a practical market perspective to topics like token development, crypto launches, and Web3 adoption.","sameAs":["https:\/\/www.linkedin.com\/in\/vimal-j-0a1472142\/"],"url":"https:\/\/www.blockchainappfactory.com\/blog\/author\/marketting\/"}]}},"_links":{"self":[{"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/posts\/17489"}],"collection":[{"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/users\/100"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/comments?post=17489"}],"version-history":[{"count":9,"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/posts\/17489\/revisions"}],"predecessor-version":[{"id":17503,"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/posts\/17489\/revisions\/17503"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/media\/17490"}],"wp:attachment":[{"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/media?parent=17489"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/categories?post=17489"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.blockchainappfactory.com\/blog\/wp-json\/wp\/v2\/tags?post=17489"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}