Free trial abuse
One free trial per person. Not per email address.
Trial cycling is cheap for the person doing it and expensive for you. isCredible recognises a returning person across new email addresses, so you can offer a generous trial without funding the same user over and over.
Free plan with 100 checks a day. No credit card.
The problem
New email, same person
A fresh inbox for every trial, from the same laptop and the same card.
Shared and resold trials
Accounts passed around or sold once the trial is running.
Cards used for many trials
One payment method behind a long list of trial accounts.
How isCredible helps
- 1
Check when the trial starts
Usually at signup, and again when a card is added.
- 2
See who is coming back
Matches against devices, cards and email look-alikes seen on your account.
- 3
Choose the response
Start the trial, offer a shorter one, or point to the paid plan.
What it catches
- Returning devices
- Look-alike email addresses
- One card across many trials
- Disposable inboxes
- Trial starts in quick succession
- Hosting and VPN networks
const result = await iscredible.verify({
email: user.email,
userId: user.id,
ip: req.ip,
deviceId: body.deviceId,
paymentFingerprint: card.fingerprint, // from your payment processor, never the card number
accountCreation: true
}, { scenarioId: "SYS_FREE_TRIAL_ABUSE_001" });Built-in scenario SYS_FREE_TRIAL_ABUSE_001. Also available for Python and any HTTP client.
Questions
- How do I stop users from creating new accounts for another free trial? +
- Check each trial start with the email, IP, a device ID and, if you collect one, the card fingerprint from your payment processor. isCredible flags trials that match a person it has already seen on your account.
- Do I need to collect a card? +
- No. A card fingerprint helps, but devices and email look-alikes already catch most repeat trials.
- Is card data sent to isCredible? +
- Only the fingerprint your processor gives you, such as Stripe's card fingerprint. Never card numbers.