Know which users you can trust.

Rupt detects fake accounts, bots, and (many) other forms of fraud and abuse. It gives you a trust score and a risk engine to protect your users, products, and revenue.

CrexiHouzz ProManatalAgorapulseSmartScoutiwd.ioSketchyTettraDesignfilesPrep101Cheddar UpNorth DataStealthWriterPharmAchieve
CrexiHouzz ProManatalAgorapulseSmartScoutiwd.ioSketchyTettraDesignfilesPrep101Cheddar UpNorth DataStealthWriterPharmAchieve

Protection at every layer.

From the moment users sign up to the moment they pay, Rupt gives you the intelligence you need to know which users to allow, challenge, or block.

01 — Signup protection

Stop fraud at the front door.

Block fake signups, disposable and invalid emails, datacenter IPs, and malicious bots before they ever touch your product.

Policies /block-fake-signups
Active
Trigger
Actionissign_up
where
EmailisDisposable
or
IP typeisDatacenter
or
FingerprintmatchesBlocklist
or
Count eventsSignup
byBrowser fingerprint
inlast 24 hr
is> 3
Then Block signupfallback challenge via email
POST /v3/evaluationsverdict in 42ms12,847 today

Explore onboarding protection:

02 — Account security

Protect critical actions inside your product.

Account sharing, bots, and scrapers abuse your product from the inside. Rupt catches them on the actions that matter, without slowing your real users down.

Policies /step-up-suspicious-actions
Active
Trigger
Actionissend_message
where
User trust scoreisLow
or
Event velocitysend_message
byUser
inlast 1 hr
exceeds
or
Account ageis< 1 day
Then Challenge: Biometricfallback rate limit 1 hr
POST /v3/evaluationsverdict in 38ms47,213 actions today

Explore in-product protection:

03 — Content & data

Keep your content and data where it belongs.

Your data and content are your real moat. Rupt can protect them from account sharing, scraping, and other forms of unauthorized access before it hits your bottom line.

Policies /prevent-account-sharing
Active
Trigger
Actionisaccess
where
People on accountis> 2
or
Concurrent sessionsis> 2
or
Impossible travelisTrue
or
Active devicesAccount
inlast 1 day
is> 5
Then Limit devices: 3fallback challenge other devices
POST /v3/evaluationsverdict in 31ms24,580 logins today

Explore content & data protection:

04 — Payment fraud

Stop payment fraud before chargebacks hit.

Catch card testing, stolen-card flows, and chargeback abuse before they even land on your checkout page. Rupt has visibility into your users' devices and behavior that your processor can't see.

Policies /block-card-testing
Active
Trigger
Actionispayment
where
NetworkisVPN
or
Geo mismatchisTrue
or
Failed paymentsBrowser fingerprint
inlast 10 min
is> 5
or
CardmatchesBlocklist
Then Block paymentfallback challenge 3DS
POST /v3/evaluationsverdict in 35ms8,492 payments today

Explore payment protection:

Everything you need to protect your business in one place.

Every layer of protection: intelligence, rules, challenges, lists, and more already built, tested, and supported. Plug in the full pipeline or pull the raw signals into your stack. Both are first-class.

Intelligence on everything.

Real-time signals on every device, browser, IP, session, email, phone, and more.

iwanep636+2@esterace.com
Valid handle
Alias
Disposable domain
EmailDisposable
GeolocationSan Francisco, US
IP64.81.28.7 · AS15169
NetworkVPN detected
DeviceChrome 121 · macOS 14.5
Browser fpfp_a8b9c7d6e5f4
Bot riskHigh
Trust score0.18
Devices7 on account
Account age3 days
Impossible travelYes
ConcurrencyNo
Phone+1 (234) 567-8900
VOIPnon_fixed_voip

Challenges optimized for every use case, platform, and channel.

Robust challenges designed to accomplish a specific goal for each unique use case. SMS, email, biometric, and more adaptive challenges tuned for pass rate, and updated as fraudsters evolve.

https://scribble.ai/account-sharing
Create your own Scribble account today

We detected multiple people using this account. Please create your own account to continue.

Is this your account?

To review the devices using this account, please verify your email or phone number.

Define policies for every scenario.

Allow, challenge, or block, add to lists, and more. Combine our signals with your business logic to decide what's suspicious and how to handle it.

Bid placed
Bids > 20 / 1 hr
YesNo=
Challenge
Throttle
Allow
Trust
Message user
Trust score Low
YesNo=
Biometric
Quarantine
Deliver
Trust +1
Start trial
Fingerprint reused
YesNo=
Deny
Blocklist
Allow
Track FP
Job post
Account < 24 hr
YesNo=
Verify ID
Review
Publish
Notify
Bid placed
Bids > 20 / 1 hr
YesNo=
Challenge
Throttle
Allow
Trust
Message user
Trust score Low
YesNo=
Biometric
Quarantine
Deliver
Trust +1
Start trial
Fingerprint reused
YesNo=
Deny
Blocklist
Allow
Track FP
Job post
Account < 24 hr
YesNo=
Verify ID
Review
Publish
Notify
Bid placed
Bids > 20 / 1 hr
YesNo=
Challenge
Throttle
Allow
Trust
Message user
Trust score Low
YesNo=
Biometric
Quarantine
Deliver
Trust +1
Start trial
Fingerprint reused
YesNo=
Deny
Blocklist
Allow
Track FP
Job post
Account < 24 hr
YesNo=
Verify ID
Review
Publish
Notify

Customizable and extensible.

Drop in the full Rupt stack, or pull the raw signals into your own decisioning. Both are first-class.

Your canvas

Move your mouse here

Documented, supported, battle-tested.

Clear docs, tested SDKs, MCPs, and direct engineering support. You can ship in days, not months.

1import Rupt from "rupt";
2
3const rupt = new Rupt(
4  "your_client_id"
5);
6
7awaitrupt.
8
9
evaluate
attach
challenge
verify
detach
NORMALrupt-demo.ts100% ≡ 9/9 ln : 7
$ node server.js && rupt listen
> Ready! Waiting for requests...

Developers

Easy, modern APIs that developers love.

Rupt is easy to integrate and use. Simple, well-documented APIs, SDKs, and MCPs. Built for the way modern developers work.

Proprietary browser and device fingerprints, returned on every call.

1{
2 "_id": "evl_3yJk7K9xQ2mR4nT8",
3 "action": "login",
4 "verdict": "challenge",
5 "reasons": [ "new_fingerprint", "new_ip", "vpn_detected"],
6 "projectUser": {
7 "external_id": "usr_4f2c8a1b",
8 "email": "user@example.com",
9 "phone": "+12125550100"
10 },
11 "metadata": { "plan": "pro" },
12 "fingerprint": {
13 "_id": "fp_a8b9c7d6e5f4",
14 "hash": "5d41402abc4b2a76b9719d911017c592",
15 "stableHash": "8e2a6c1f9b3d4a7e",
16 "confidence": 0.94,
17 "projectUserCount": 1,
18 "deviceCount": 2,
19 "ipCount": 3
20 },
21 "risks": [
22 {
23 "category": "fake_account",
24 "severity": "high",
25 "score": 7,
26 "indicators": [ "disposable_email", "datacenter_ip"]
27 },
28 {
29 "category": "bot",
30 "severity": "medium",
31 "score": 4,
32 "indicators": [ "headless_browser", "automated_behavior"]
33 },
34 {
35 "category": "account_sharing",
36 "severity": "high",
37 "score": 5,
38 "indicators": [ "concurrent_sessions", "high_computer_count"]
39 },
40 {
41 "category": "ato",
42 "severity": "high",
43 "score": 6,
44 "indicators": [ "new_fingerprint", "new_ip", "ip_is_vpn"]
45 }
46 ],
47 "risk_summary": [
48 { "category": "fake_account", "severity": "high" },
49 { "category": "bot", "severity": "medium" },
50 { "category": "account_sharing", "severity": "high" },
51 { "category": "ato", "severity": "high" }
52 ],
53 "geolocation": {
54 "ip": "203.0.113.42",
55 "latitude": 40.7128,
56 "longitude": -74.0060,
57 "city": "New York",
58 "region": "NY",
59 "country": "United States",
60 "country_code": "US",
61 "security": {
62 "anonymous": false,
63 "proxy": false,
64 "tor": false,
65 "vpn": true,
66 "hosting": false
67 }
68 },
69 "ip": {
70 "address": "203.0.113.42",
71 "asn": "AS15169",
72 "asn_name": "Google LLC",
73 "datacenter": false,
74 "reputation": "suspicious",
75 "blocklists": [ "spamhaus_xbl", "abuseipdb"]
76 },
77 "email": {
78 "address": "user@example.com",
79 "is_disposable": false,
80 "is_webmail": true,
81 "is_valid": true,
82 "is_accept_all": false,
83 "is_verified": true
84 },
85 "phone": {
86 "number": "+12125550100",
87 "carrier": "Verizon",
88 "line_type": "non_fixed_voip",
89 "is_valid": true,
90 "is_verified": false
91 },
92 "policy": {
93 "_id": "pol_z9y8x7w6",
94 "name": "Block multi-accounting",
95 "action": { "type": "challenge" }
96 },
97 "challenge": {
98 "_id": "chl_8d7c6b5a4",
99 "mode": "rupt_managed",
100 "type": "biometric",
101 "redirect_url": "https://challenge.rupt.dev/?challenge=chl_8d7c6b5a4"
102 },
103 "lists": {
104 "matched": [ "trusted_devices"],
105 "allowlisted": true,
106 "blocklisted": false
107 },
108 "createdAt": "2026-05-18T14:32:01.842Z"
109}

Reliable at scale

Billions of requests a year, 150M+ a month, resilient even under high traffic with 99.99% uptime.

100ms response time

100ms p99 latency. Fingerprinting, geolocation, verdicts, and more in one fast, modern API.

Extensible infrastructure

Build custom rules, risks, challenges, trust scores, and more and deploy in real-time.

From startups to enterprises, customers trust Rupt.

Alexis Dupont

"Without Rupt, it was impossible to detect account sharers with factual data. Once we added Rupt, we realized we were missing $1M+ ARR and decided to dig into it."

Alexis Dupont

Product Principal, Agorapulse

Adam Siegel

"What we thought would be a real friction point with our existing customers, we saw them go, 'oh my God, why haven't you done this sooner?' They saw it as a feature, not friction."

Adam Siegel

VP of Product Growth, Crexi

Danielle Dyess

"We saw about 4% of account sharers convert immediately after implementing Rupt, which was fantastic."

Danielle Dyess

Principal Product Manager, Sketchy

Andy Romano

"Our first line of defense was to start paying attention to user signals on our own. However, we quickly realized that it was more than a full-time job to accurately identify account sharers."

Andy Romano

Founder, Prep101

Mohamed Abdelmaksoud

"Growth rate doubled after implementing Rupt's repeat sign up detection. This improved the platform's stability and availability and reduced our OpenAI credits usage."

Mohamed Abdelmaksoud

Founding Full Stack Developer, StealthWriter

Nelson Joyce

"Rupt was a plug-and-play win for us. It handled a massive amount of complexity out of the box, started protecting our bottom line almost immediately, and the team has been genuinely responsive every step of the way."

Nelson Joyce

Co-founder, Tettra