Stop bots and account abuse at scale
Everything you need to stop fraud & abuse
A complete stack of data, tools, and APIs, eliminating the need for multiple, disconnected tools. All the intelligence you need to stop fraud and abuse.
Device fingerprinting
99.5% accurate fingerprinting. Uncover headless browsers, tampering, carrier data, etc.
Bot detection
Detect bots, scripts, and coordinated attacks. Identify automated behavior and tampering.
Behavioral analysis
Use out-of-the-box signals or create your own custom aggregations and rate limiters.
Email intelligence
Assess email reputation and risk. Detect disposable domains and enumeration patterns.
Advanced user behavior analytics
Monitor, analyze, and alert on up to 18 months of historical data enriched with user and device intelligence to stop evolving abuse trends.
Fraudulent behavior, as defined by you
Combine Castle's threat data with velocity checks and rate limiters to categorize users according to what's considered fraud and abuse on your specific platform.
- deny
- andAbuse Scoreis> 90andDisposable EmailistrueorCount eventsRegistrationbyDevice Fingerprintinthe last dayis> 3SignalsincludeBlocked country
Scale threat response with custom flows
Model custom security flows, blocklists, and trusted device management. Manage review states across signups, logins, and in-app activity.
State management
Maintain blocklists, allowlists, and trusted devices—updating states in real-time from rules or manual actions.
Inline blocking
Initiate real-time blocks or step-up verifications anywhere in your app without disrupting the user experience.
Alerts & notifications
Keep your team informed with Slack alerts, or automate end-user and internal workflows with granular webhooks.
A single API to detect, score, and act
Integrate selected data points with your business logic. Or rely on our rules engine and state management for a complete fraud and abuse solution.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205{ "id": "2V48MDnuMar9pvOOwulwK4BXui2", "type": "$login", "status": "$succeeded", "name": "Login Succeeded", "authenticated": true, "endpoint": "/v1/risk", "created_at": "2025-09-02T4:39:05.147Z", "properties": { "my_custom_property": 234 }, "device": { "fingerprint": "zhQ3YFvQTVOIP4EZWcMaNg", "user_agent": "CryptoKid iOS/2025.9.1 (2025.9.1) (iPhone17,3; iOS 18.0.1; Castle 3.0.7)", "name": "Adam's iPhone", "emulator": false, "rooted": false, "software": { "languages": [ "en-us", "en", "ru-ru" ], "type": "mobile_application", "name": "CryptoKid iOS", "version": { "major": "2025", "full": "2025.9.1" } }, "timezone": { "offset": 420, "name": "America/New_York" }, "os": { "name": "iOS", "version": { "major": "16", "full": "16.6.1" } }, "hardware": { "type": "phone", "name": "iPhone", "brand": "Apple", "model": { "name": "iPhone 14 Pro Max", "code": "iPhone15,3" }, "display": { "width": 430, "height": 932 } }, "cellular": { "carrier": { "name": "Verizon Wireless", "country_code": "US" }, "available": true }, "wifi": { "available": true }, "battery": { "charging_state": "unplugged", "level": 34 }, "location": { "accuracy": 20, "city": "Falls Church", "country_code": "US", "latitude": 38.8524, "longitude": 77.148 }, "screen": { "density": 3, "orientation": "portrait" }, "memory": { "available": 345, "total": 5500 }, "storage": { "available": 2011, "total": 121943 }, "usage": { "screen_time": 10265, "uptime": 695312 } }, "scores": { "bot": { "score": 0.033 }, "account_abuse": { "score": 0.27 }, "account_takeover": { "score": 0.196 } }, "ip": { "address": "108.18.100.121", "type": "ipv4", "asn": 701, "isp": { "name": "Verizon Fios", "organization": "Verizon Fios" }, "location": { "city": "Falls Church", "country_code": "US", "region_code": "VA", "continent_code": "NA", "postal_code": "22042", "latitude": 38.8597, "longitude": 77.198 }, "privacy": { "anonymous": false, "datacenter": false, "proxy": false, "tor": false } }, "email": { "normalized": "adam@castle.com", "domain": "castle.com", "disposable": false, "unreachable": false, "domain_details": { "created_at": "2014-12-27T00:30:13.000+00:00", "updated_at": "2021-10-01T17:59:27.000+00:00", "expires_at": "2026-12-27T00:30:13.000+00:00", "registrar": "101domain GRS Limited", "registrant": "Digital Privacy Corporation", "nameservers": [ "ns-77.awsdns-09.com", "ns-1523.awsdns-62.org" ], "spf_record": { "exists": true }, "dmarc_record": { "exists": true }, "mx_records": { "null_mx": false } } }, "metrics": { "1": { "name": "Users per device fingerprint in 30d", "value": 5 }, "2": { "name": "Failed logins per IP in 1h", "value": 238 }, "3": { "name": "Average transaction amount per user", "value": 83.13 } }, "signals": { "impossible_travel": {}, "credential_stuffing": {}, "multiple_accounts_per_device": {}, "new_device": {} }, "policy": { "action": "deny", "name": "Block multi-accounting", "id": "3666300b-adc9-4a9a-9773-f6e692ed348d", "revision_id": "1d1e6f75-08ea-47ea-bb92-61d598c448e2" }, "lists": [ "blocked_ips", "trusted_devices" ], "list_items": [ "8842e866-86e7-4f18-a023-edbf8cb91107", "42bc2f4d-64d1-4291-a77f-61c64bd410a0" ], "user": { "id": "7312", "registered_at": "2025-08-13T14:00:58.000Z", "name": "Adam Winter", "email": "adam@castle.com", "phone": "+11123456789", "traits": { "nationality": "PL", "organization_id": "789435" } }, "sdks": { "client": { "name": "castle-web", "version": "2.1.8" } }}Built for scale
Our APIs process billions of monthly requests with resilience against severe bot attacks.
100ms response time
Fingerprinting, risk scores, and rules computed instantly in real-time.
Pay-as-you-go pricing
Transparent plans with included API budgets and simple pay-as-you-go pricing.
Create your free account today
Start with a free quota, with transparent pricing that scales when you do.