How the score works
Every scan collects findings from several data sources. Each finding is PASS, WARN, FAIL or N/A (data unavailable) and has a weight. The numbers below are the real ones used by the code (core.js, open source).
1. From findings to a risk level
- FAIL adds the full weight in risk points, WARN adds half, N/A adds nothing.
- Any critical FAIL (active mint or freeze authority, confirmed honeypot, sell tax over 50%, or a token RugCheck marks as rugged) makes the verdict Extreme, regardless of points.
- Otherwise: 40+ points = High, 15–39 = Medium, under 15 = Low.
- If no security source answered (RugCheck / Solana RPC, or GoPlus / Honeypot.is), a would-be Low is shown as Unknown: we never call a token Low risk from market data alone.
2. Solana contract & holder checks
| Check | Rule | Points |
|---|---|---|
| Mint authority | Still active (creator can print tokens) | FAIL 40, critical |
| Freeze authority | Still active (creator can freeze wallets = honeypot) | FAIL 40, critical |
| Marked rugged | RugCheck reports the token as rugged | FAIL 50, critical |
| LP locked / burned | ≥ 90% = pass; 50–90% = warn; < 50% = fail. pump.fun AMM pools count as burned; concentrated-liquidity pools are a warn | 15 (warn 7.5) |
| Top 10 holders | Pools and AMM accounts excluded. > 50% fail, > 30% warn | 15 (warn 7.5) |
| Largest holder | > 10% of supply | WARN 4 |
| Insider networks | Linked insider wallets (RugCheck). Fail if they hold > 10% or 10+ insiders, otherwise warn | 15 (warn 7.5) |
| Creator balance | Creator holds > 5% | WARN 4 |
| Transfer fee (Token-2022) | > 10% fail, any fee warn | 20 (warn 10) |
| Mutable metadata | Name/logo can still be changed | WARN 2 |
| RugCheck danger flags | Any "danger" level flag | WARN 4 |
If RugCheck fails, mint/freeze authority, transfer fee and top holders are read straight from the chain through our Solana RPC relay (Helius, with public RPC fallback).
3. Market checks (all chains, DexScreener)
| Check | Rule | Points |
|---|---|---|
| Liquidity | < $5K fail (20); < $20K warn | 20 / warn 7.5 |
| Pair age | Under 24 hours | WARN 4 |
| Drop from recent high | ≥ 90% fail 20; > 50% fail 12; > 30% warn | 20 / 12 / warn 6 |
| Sell pressure | > 65% of 24h transactions are sells | WARN 2.5 |
| 24h volume | Under $1K | WARN 2.5 |
4. Developer history (pump.fun coins)
We list the creator wallet's earlier launches (pump.fun) and check their markets on DexScreener. A previous coin is dead if it has no market or is under $10K market cap, rugged if it reached $50K+ and is now under 10% of that peak. Coins under 6 hours old are not judged.
- FAIL, +10 points: 3+ dead/rugged coins that are at least half of the judged ones, or a serial launcher (10+ coins) with under 10% still alive.
- WARN, +3 points: 2+ dead/rugged coins.
- Never critical on its own.
5. BNB Chain, Ethereum, Base & Arbitrum (EVM) checks
Paste a 0x… address and we pick the chain automatically: the one (BNB Chain, Ethereum, Base or Arbitrum One) where the token's own DexScreener pairs have the most liquidity. If it trades on several, the result shows chips (BNB / ETH / BASE / ARB) to switch. Security data comes from GoPlus (contract scan) and Honeypot.is (a real buy + sell simulation), fetched through our server with a 5-minute cache. Honeypot.is does not support Arbitrum, so on Arbitrum the honeypot and tax checks rely on GoPlus only (shown as a note). All EVM contract rules live in one function, evmFindings() in core.js; liquidity, pair age, drop, pressure and volume use the shared market checks above.
| Check | Rule | Points |
|---|---|---|
| Honeypot | GoPlus says honeypot / "cannot sell all", or the Honeypot.is sell simulation fails. Either source is enough | FAIL 50, critical |
| Buy / sell tax | Worst of GoPlus and simulated tax. > 50% critical; > 10% fail; > 5% warn | 25 critical / 20 / warn 10 |
| Buying blocked | Contract refuses buys | FAIL 20 |
| Owner can mint | Mint function exists | FAIL 25 |
| Hidden owner | Control kept through a hidden owner | FAIL 20 |
| Can take back ownership | "Renounced" ownership can be reclaimed | FAIL 15 |
| Source code | Not verified (closed source) | FAIL 15 |
| Same creator made honeypots | GoPlus creator history | FAIL 20 |
| Proxy / upgradeable | Code can be swapped later | WARN 3 |
| Blacklist | Owner can block wallets | WARN 5 |
| Pausable transfers | Owner can stop all trading | WARN 5 |
| Trading cooldown | Time limits between trades | WARN 2 |
| Tax can be changed | Owner can raise taxes later | WARN 6 |
| Ownership | Owner not renounced. Blacklist / pause / cooldown / tax switches PASS when ownership is renounced and there is no hidden owner or reclaim function (nobody can use them) | WARN 5 |
| LP locked / burned (V2-style pools) | ≥ 90% pass; 50–90% warn; < 50% fail. LP held by burn addresses, lockers or the token contract counts as locked | 15 (warn 7.5) |
| LP of Uniswap V3 / V4-style pools | Liquidity is an NFT position, so a lock usually can't be measured. ≥ 90% locked = pass; a regular wallet (not a contract or locker) holding ≥ 50% of the position with no lock = warn (it could be withdrawn); otherwise N/A info, not scored as unlocked | 15 (warn 7.5) / N/A |
| Top 10 holders | Contracts, lockers, burn addresses excluded. > 50% fail, > 30% warn | 15 (warn 7.5) |
| Creator / owner holding | Largest of creator and (real-wallet) owner share. > 20% fail, > 5% warn | 8 (warn 4) |
| Honeypot.is risk rating | Risk level ≥ 60 fail, ≥ 20 warn | 10 (warn 5) |
Uniswap pools: when the most liquid pair is a Uniswap v2 / v3 / v4 pool (DexScreener dexId + version label, or GoPlus' pool type), the result shows a small "Uniswap pool" note with the version and a link to the pool on Uniswap. Buy / Sell on Ethereum, Base and Arbitrum open the Uniswap app on that chain.
Four.meme (BNB Chain): we recognise Four.meme launches from the Four.meme token API, GoPlus' launchpad tag or a DexScreener fourmeme pair (the address ending in 4444 / ffff is only a hint, never enough on its own). While the token is still on its bonding curve we show the progress to graduation; LP lock, tax and holder checks are N/A (there is no pool yet), the curve contract as owner is normal, and "no DEX pool" is a WARN (15) instead of the low-liquidity FAIL. After graduation the normal PancakeSwap checks apply.
Not available on BNB Chain / Ethereum / Base / Arbitrum yet: sniper detection, liquidity flows, developer history and bundle checks (Solana only for now). The Buy / Sell pressure card works on every chain (DexScreener counts + GeckoTerminal candles). Buy / Sell buttons open PancakeSwap (BNB Chain), Uniswap (Ethereum, Base, Arbitrum) or four.meme (bonding curve) and are hidden for confirmed honeypots.
6. Extra Solana signals (shown, not added to the score)
- Sniper detection: the first buyers in the opening slots after launch. High sniper risk when sniper wallets hold or bought ≥ 25% of supply (or 12+ "pro" snipers), elevated at ≥ 12% (or 6+).
- Bubble map & bundles: top holders linked by shared funding wallets.
- Liquidity flows: recent swaps around the pool; wallets doing round-trips, fast buy/sell flips, burst trading or the creator wallet are shown in red.
- Organic Volume indicator: from the same recent swaps (up to 24, at least 15 needed), the share of those swaps made by the top 5 wallets (counted per swap, so one mis-parsed large amount can't skew it). Organic (green) under 35%, Suspicious (yellow) 35–60%, Wash-like (red) over 60%. Fewer than 10 unique wallets moves Organic to Suspicious; 5 or fewer is Wash-like. Too few swaps = no badge (we don't guess).
- Buy / Sell pressure: share of buys vs sells over 5 min / 1 h / 6 h / 24 h (DexScreener transaction counts), plus a timeline of our recent swap sample (green bars = buys, red = sells, counted per swap). Yellow dots mark "big" swaps: among the 3 largest by token amount and at least 10% of the sample. Shown for context, not scored.
These are heuristics on a small recent sample, not proof of bot activity or wrongdoing.
7. Data sources actually used
- RugCheck: Solana token report (authorities, LP lock, holders, insider networks, risk flags).
- DexScreener: pairs, price, liquidity, volume, age; market status of a developer's earlier coins.
- Solana RPC (Helius, public RPC fallback): on-chain fallback checks, holders, bubble map, snipers, liquidity flows.
- pump.fun: creator wallet, a developer's earlier launches, newest launches list.
- GoPlus and Honeypot.is: EVM token security and buy/sell simulation.
- Four.meme: launch and bonding-curve status of BNB Chain launchpad tokens.
- GeckoTerminal: trending and new-pool lists; price candles (OHLCV) for BNB Chain / Ethereum pools.
See real examples: Rugs we caught · Code: GitHub
كيف يعمل التقييم
كل فحص يجمع نتائج من عدة مصادر بيانات. كل نتيجة إما ناجح أو تحذير أو فشل أو غير متاح، ولها وزن. الأرقام أدناه هي نفسها المستخدمة في الكود (core.js، مفتوح المصدر).
1. من النتائج إلى مستوى الخطر
- الفشل يضيف الوزن كاملًا كنقاط خطر، والتحذير يضيف نصفه، وغير المتاح لا يضيف شيئًا.
- أي فشل حرج (صلاحية سك أو تجميد نشطة، فخ عسل مؤكد، ضريبة بيع أعلى من 50%، أو عملة يصنفها RugCheck كمسحوبة) يجعل التقييم خطر شديد بغض النظر عن النقاط.
- غير ذلك: 40 نقطة فأكثر = مرتفع، 15–39 = متوسط، أقل من 15 = منخفض.
- إذا لم يستجب أي مصدر أمني (RugCheck / Solana RPC أو GoPlus / Honeypot.is) يظهر التقييم غير معروف بدل منخفض: لا نصف عملة بأنها منخفضة الخطر من بيانات السوق وحدها.
2. فحوص العقد والحاملين على سولانا
| الفحص | القاعدة | النقاط |
|---|---|---|
| صلاحية السك | ما زالت نشطة (المنشئ يستطيع طباعة عملات) | فشل 40، حرج |
| صلاحية التجميد | ما زالت نشطة (يمكن تجميد المحافظ = فخ عسل) | فشل 40، حرج |
| مُعلَّمة كمسحوبة | RugCheck يصنف العملة كمسحوبة | فشل 50، حرج |
| قفل/حرق السيولة | 90% فأكثر = ناجح؛ 50–90% = تحذير؛ أقل من 50% = فشل. مجمعات pump.fun AMM تُحسب محروقة؛ مجمعات السيولة المركزة تحذير | 15 (تحذير 7.5) |
| أكبر 10 حاملين | بعد استبعاد المجمعات. أكثر من 50% فشل، أكثر من 30% تحذير | 15 (تحذير 7.5) |
| أكبر حامل | أكثر من 10% من المعروض | تحذير 4 |
| شبكات المطلعين | محافظ مطلعين مترابطة (RugCheck). فشل إذا تملك أكثر من 10% أو 10 مطلعين فأكثر، وإلا تحذير | 15 (تحذير 7.5) |
| رصيد المنشئ | المنشئ يملك أكثر من 5% | تحذير 4 |
| رسوم التحويل (Token-2022) | أكثر من 10% فشل، أي رسوم تحذير | 20 (تحذير 10) |
| بيانات قابلة للتعديل | يمكن تغيير الاسم/الشعار | تحذير 2 |
| إشارات خطر RugCheck | أي إشارة بمستوى "خطر" | تحذير 4 |
إذا فشل RugCheck نقرأ صلاحيات السك والتجميد ورسوم التحويل وكبار الحاملين مباشرة من الشبكة عبر وسيط Solana RPC (Helius مع بديل عام).
3. فحوص السوق (كل الشبكات، DexScreener)
| الفحص | القاعدة | النقاط |
|---|---|---|
| السيولة | أقل من 5 آلاف دولار فشل (20)؛ أقل من 20 ألفًا تحذير | 20 / تحذير 7.5 |
| عمر الزوج | أقل من 24 ساعة | تحذير 4 |
| الهبوط من القمة الأخيرة | 90% فأكثر فشل 20؛ أكثر من 50% فشل 12؛ أكثر من 30% تحذير | 20 / 12 / تحذير 6 |
| ضغط البيع | أكثر من 65% من صفقات 24 ساعة بيع | تحذير 2.5 |
| حجم 24 ساعة | أقل من 1000 دولار | تحذير 2.5 |
4. سجل المطور (عملات pump.fun)
نعرض إطلاقات محفظة المنشئ السابقة على pump.fun ونفحص أسواقها على DexScreener. العملة السابقة ميتة إن لم يكن لها سوق أو قيمتها السوقية أقل من 10 آلاف دولار، ومسحوبة إن وصلت 50 ألفًا فأكثر وهي الآن أقل من 10% من قمتها. العملات الأحدث من 6 ساعات لا يُحكم عليها.
- فشل، +10 نقاط: 3 عملات ميتة/مسحوبة فأكثر وتمثل نصف العملات المحكوم عليها على الأقل، أو مُطلق متسلسل (10 عملات فأكثر) أقل من 10% منها حية.
- تحذير، +3 نقاط: عملتان ميتتان/مسحوبتان فأكثر.
- لا يكون حرجًا وحده.
5. فحوص سلسلة BNB وإيثريوم وBase وأربيتروم (EVM)
الصق عنوانًا يبدأ بـ 0x… ونختار الشبكة تلقائيًا: الشبكة (سلسلة BNB أو إيثريوم أو Base أو أربيتروم) التي تملك فيها أزواج العملة على DexScreener أعلى سيولة. إذا كانت العملة متداولة على أكثر من شبكة تظهر في النتيجة أزرار (BNB / ETH / BASE / ARB) للتبديل. بيانات الأمان من GoPlus (فحص العقد) وHoneypot.is (محاكاة شراء وبيع حقيقية)، عبر خادمنا مع تخزين مؤقت لمدة 5 دقائق. Honeypot.is لا يدعم أربيتروم، لذا يعتمد فحص المصيدة والضريبة على أربيتروم على GoPlus فقط (مع ملاحظة). كل قواعد عقود EVM موجودة في دالة واحدة: evmFindings() في core.js؛ أما السيولة وعمر الزوج والهبوط والضغط والحجم فتستخدم فحوص السوق المشتركة أعلاه.
| الفحص | القاعدة | النقاط |
|---|---|---|
| مصيدة (Honeypot) | GoPlus يصنفها مصيدة / "لا يمكن بيع الكل"، أو تفشل محاكاة البيع في Honeypot.is. يكفي مصدر واحد | فشل 50، حرج |
| ضريبة الشراء / البيع | الأسوأ بين GoPlus والضريبة المحاكاة. أكثر من 50% حرج؛ أكثر من 10% فشل؛ أكثر من 5% تحذير | 25 حرج / 20 / تحذير 10 |
| الشراء محظور | العقد يرفض الشراء | فشل 20 |
| المالك يستطيع السك | توجد دالة سك | فشل 25 |
| مالك مخفي | السيطرة عبر مالك مخفي | فشل 20 |
| استعادة الملكية | يمكن استعادة الملكية بعد "التخلي" عنها | فشل 15 |
| الكود المصدري | غير موثّق (مغلق المصدر) | فشل 15 |
| نفس المنشئ صنع مصائد | سجل المنشئ لدى GoPlus | فشل 20 |
| وكيل / قابل للترقية | يمكن تبديل الكود لاحقًا | تحذير 3 |
| قائمة سوداء | المالك يستطيع حظر محافظ | تحذير 5 |
| إيقاف التحويلات | المالك يستطيع إيقاف كل التداول | تحذير 5 |
| فترة تهدئة | قيود زمنية بين الصفقات | تحذير 2 |
| تعديل الضريبة | المالك يستطيع رفع الضرائب لاحقًا | تحذير 6 |
| الملكية | لم يتم التخلي عن الملكية. مفاتيح القائمة السوداء / الإيقاف / التهدئة / الضريبة تُعتبر ناجحة إذا تم التخلي عن الملكية ولا يوجد مالك مخفي أو دالة استعادة (لا أحد يستطيع استخدامها) | تحذير 5 |
| قفل/حرق السيولة (مجمعات نوع V2) | 90% فأكثر ناجح؛ 50–90% تحذير؛ أقل من 50% فشل. السيولة لدى عناوين الحرق أو الخزائن أو عقد العملة نفسه تُحسب مقفلة | 15 (تحذير 7.5) |
| سيولة مجمعات Uniswap V3 / V4 | السيولة مركز NFT، لذلك غالبًا لا يمكن قياس القفل. 90% مقفلة فأكثر = ناجح؛ محفظة عادية (ليست عقدًا أو خزنة) تملك 50% فأكثر من المركز دون قفل = تحذير (يمكن سحبها)؛ غير ذلك معلومة غير متاحة، ولا تُحسب كسيولة غير مقفلة | 15 (تحذير 7.5) / غير متاح |
| أكبر 10 حاملين | باستثناء العقود والخزائن وعناوين الحرق. أكثر من 50% فشل، أكثر من 30% تحذير | 15 (تحذير 7.5) |
| حصة المنشئ / المالك | الأكبر بين حصة المنشئ وحصة المالك (إن كان محفظة حقيقية). أكثر من 20% فشل، أكثر من 5% تحذير | 8 (تحذير 4) |
| تقييم مخاطر Honeypot.is | مستوى الخطر 60 فأكثر فشل، 20 فأكثر تحذير | 10 (تحذير 5) |
مجمعات Uniswap: عندما يكون الزوج الأعلى سيولة مجمع Uniswap v2 / v3 / v4 (معرّف المنصة ووسم الإصدار في DexScreener أو نوع المجمع في GoPlus) تعرض النتيجة ملاحظة صغيرة "مجمع Uniswap" مع الإصدار ورابط المجمع على Uniswap. أزرار الشراء / البيع على إيثريوم وBase وأربيتروم تفتح تطبيق Uniswap على تلك الشبكة.
Four.meme (سلسلة BNB): نتعرّف على إطلاقات Four.meme من واجهة Four.meme أو وسم منصة الإطلاق في GoPlus أو زوج fourmeme على DexScreener (انتهاء العنوان بـ 4444 / ffff مجرد تلميح ولا يكفي وحده). ما دامت العملة على منحنى الترابط نعرض نسبة التقدّم نحو التخرّج؛ وتكون فحوص قفل السيولة والضريبة والحاملين غير متاحة (لا يوجد مجمع بعد)، وكون عقد المنحنى هو المالك أمر طبيعي، و"لا يوجد مجمع" تحذير (15) بدل فشل السيولة المنخفضة. بعد التخرّج تُطبَّق فحوص PancakeSwap العادية.
غير متاح على سلسلة BNB / إيثريوم / Base / أربيتروم بعد: كشف القناصة، تدفقات السيولة، سجل المطوّر وفحص الحزم (سولانا فقط حاليًا). بطاقة ضغط الشراء / البيع تعمل على كل الشبكات (أعداد DexScreener + شموع GeckoTerminal). أزرار الشراء / البيع تفتح PancakeSwap (سلسلة BNB) أو Uniswap (إيثريوم وBase وأربيتروم) أو four.meme (منحنى الترابط) وتُخفى للمصائد المؤكدة.
6. إشارات سولانا إضافية (تُعرض ولا تُضاف للنقاط)
- كشف القناصين: أول المشترين في الكتل الأولى بعد الإطلاق. خطر قنص مرتفع عندما تملك أو اشترت محافظ القناصين 25% فأكثر من المعروض (أو 12 قناصًا محترفًا فأكثر)، ونشاط مرتفع عند 12% (أو 6 فأكثر).
- خريطة الفقاعات والحزم: كبار الحاملين المرتبطون بمحافظ تمويل مشتركة.
- تدفقات السيولة: الصفقات الأخيرة حول المجمع؛ المحافظ التي تشتري وتبيع ذهابًا وإيابًا أو بسرعة أو برشقات، ومحفظة المنشئ، تظهر بالأحمر.
- مؤشر الحجم الطبيعي: من نفس الصفقات الأخيرة (حتى 24، ويلزم 15 على الأقل)، نسبة الصفقات التي نفذتها أكبر 5 محافظ (تُعدّ الصفقات عددًا، فلا يؤثر مبلغ واحد مقروء خطأً). طبيعي (أخضر) أقل من 35%، مشبوه (أصفر) 35–60%، يشبه التداول الوهمي (أحمر) أكثر من 60%. أقل من 10 محافظ مختلفة يحوّل الطبيعي إلى مشبوه؛ و5 محافظ أو أقل = وهمي. إذا كانت الصفقات قليلة لا نعرض شيئًا (لا نخمّن).
- ضغط الشراء / البيع: نسبة صفقات الشراء مقابل البيع خلال 5 دقائق / ساعة / 6 ساعات / 24 ساعة (أعداد صفقات DexScreener)، مع خط زمني لعينة صفقاتنا الأخيرة (أعمدة خضراء = شراء، حمراء = بيع، بعدد الصفقات). النقاط الصفراء تميّز الصفقات "الكبيرة": من أكبر 3 صفقات بكمية العملة و10% على الأقل من العينة. للعرض فقط ولا يدخل في التقييم.
هذه مؤشرات تقريبية على عينة حديثة صغيرة، وليست دليلًا على وجود بوتات أو احتيال.
7. مصادر البيانات المستخدمة فعليًا
- RugCheck: تقرير عملة سولانا (الصلاحيات، قفل السيولة، الحاملون، شبكات المطلعين، إشارات الخطر).
- DexScreener: الأزواج والسعر والسيولة والحجم والعمر؛ وحالة سوق عملات المطور السابقة.
- Solana RPC (Helius مع بديل عام): الفحوص البديلة على الشبكة، الحاملون، خريطة الفقاعات، القناصون، تدفقات السيولة.
- pump.fun: محفظة المنشئ، إطلاقات المطور السابقة، قائمة أحدث الإطلاقات.
- GoPlus وHoneypot.is: أمان عملات EVM ومحاكاة الشراء والبيع.
- Four.meme: حالة الإطلاق ومنحنى الترابط لعملات منصة الإطلاق على سلسلة BNB.
- GeckoTerminal: قوائم الرائجة والمجمعات الجديدة؛ شموع الأسعار (OHLCV) لمجمعات سلسلة BNB / إيثريوم.
أمثلة حقيقية: عمليات السحب التي رصدناها · الكود: GitHub