AI agents are claiming your free trials. Let the right ones in.
AI agents now sign up and claim free trials for real people. How to stop bots and scripted trial farming without blocking the AI agents your customers use.
AI agents now sign up for products, start free trials and claim credits on behalf of real people. A customer asks their assistant to "set up a trial of the three best tools for this" and an agent does the clicking. At the same time, the people farming your free trials use automation too, to create accounts by the hundred.
Both arrive as automation. Block all of it and you turn away real customers along with the farms. Allow all of it and your trials, credits and free plans get claimed again and again.
Automation doesn't sleep. A script can create accounts and claim credits all night, hundreds every hour, while your team is offline. If each claim carries $2 of free credits, that's thousands of dollars of model spend before anyone wakes up, and a free tier that's slow or down for the real users who arrive in the morning.
From our early beta
A team whose cloud bill normally ran $200 to $300 a month woke up to a $12,000 bill. Automated registrations had triggered thousands of expensive serverless functions, database operations and background jobs overnight.
A bot used one team's phone verification to send 100,000 one-time passcodes. With no bot protection in place, the team paid for every one of those text messages.
This guide shows how to block bots and allow AI agents, benefit by benefit.
Two kinds of automation
| Helpful AI agent | Scripted trial farming | |
|---|---|---|
| Acts for | One real person | One person, many accounts |
| Identity | Can prove which agent it is | Hides what it is |
| Claims | One trial per customer | As many as the script can create |
| What it's worth to you | A real customer reached through a new channel | Cost with no customer behind it |
| What you want | Let it through, under your rules | Stop it |
The difference isn't automation itself. It's whether the automation is honest about what it is, and whether the person behind it has already received the benefit.
Why blanket bot blocking backfires
The classic answer to automation is to block it: challenge every signup, deny anything that doesn't look like a person clicking. That made sense when nearly all automation was abusive. It doesn't anymore.
- It blocks the customers who use agents. Browser assistants and AI agents are becoming a normal way to try software. A blanket block tells those customers your product isn't for them.
- Challenges get solved anyway. Determined farms pay for challenge solving or use real people to pass them. The friction lands on everyone except the people you meant to stop.
- It misses humans claiming twice. Most trial abuse isn't scripted at all. A real person with a second email passes every "are you human?" test. We cover that gap in abuse prevention vs fraud detection vs identity verification.
A better policy: decide per benefit
The right treatment of automation depends on what it's claiming. A trial you can end is a different risk from a pack of credits that's spent the moment you grant it.
A sensible starting point:
| Benefit | Automated traffic | Bot check | Verified AI agents |
|---|---|---|---|
| Free trial you can end | Assess | Optional | Allow the agents you trust |
| Generous AI or API credits | Deny | Required | Allow only agents you've vetted |
| Free-forever plan | Assess | Optional | Allow the agents you trust |
| Promotion or referral reward | Deny | Required | Usually none |
Referral and promotion rewards attract the most scripted abuse. See how to stop promo code and referral abuse.
How AbuseZero tells them apart
AbuseZero Automation Defense runs inside every evaluation, in the same call that checks the claim. Your server makes one request and gets one answer.
- Automation assessed on every claim. Automation is one of the five signal families AbuseZero assesses together with identity, device, network and benefit history, inside the evaluation's time limit.
- A bot check at the moment of submission. Your page can run AbuseZero's bot check as the person submits. AbuseZero verifies it during the evaluation, and each check is valid only for its own claim and for a short time.
- Verified AI agents, by name. Agents that can prove who they are show up as recognized agents. You decide, benefit by benefit, which ones may claim. AbuseZero maintains the list.
- Rules still apply to agents. An allowed agent skips the benefit's automation setting, but your rules, allow and block lists and eligibility apply to it like anyone else. An agent claiming for someone who already had the trial is evaluated like any repeat claim.
Behind every evaluation sits the AbuseZero AI Risk Engine, a proprietary algorithm built on 140,000+ risk signal combinations with AI that checks the claim again. Read more in bots and AI agents.
Welcome agents, stop farms
Set how each benefit treats automation and which AI agents may claim it, then watch the results in observe mode before anything changes for users. Start with Builder or see pricing.
Add agent verification to your claim route
Your server verifies the incoming request with one call to the AbuseZero Node.js SDK, then passes the result with the evaluation. Send it for every claim, whether or not an agent made the request, so your route keeps one code path.
import { verifyAgentRequest } from "abusezero/server";
import { abusezero } from "@/lib/abusezero";
const PUBLIC_ORIGIN = "https://app.example.com";
export async function POST(request: Request) {
const body = await request.clone().json() as { claimId: string; email: string };
const agentEvidence = await verifyAgentRequest(request, body.claimId, PUBLIC_ORIGIN);
const evaluation = await abusezero.evaluate({
benefit: "pro_trial",
claim_id: body.claimId,
subject: { email: body.email },
agent_evidence: agentEvidence,
}, `evaluate:${body.claimId}`);
return Response.json({ evaluation });
}Then allow the agents you trust on each benefit, in the dashboard or through the API. The full walkthrough is in verify AI agents, and the browser side is in add a bot check. For where this route sits in your flow, see add a trial and credit abuse check to your signup flow.
Roll it out without surprises
Start in observe mode. Every claim is allowed while AbuseZero records what it would have decided, including for automated claims.
Allow the agents you trust on the benefits where agent signups make sense for your product.
Tighten where it's expensive. Set credit and reward benefits to deny automation and require a bot check. Leave trials on assess.
Switch to protect when the results look right, and keep an eye on denials as agent traffic grows.
Setting automation to deny can also block legitimate browser assistants. Pair it with the agents you allow on the same benefit, and look at the effect in observe mode first. More on keeping real users safe in multi-accounting detection without blocking real users.
Frequently asked questions
Should I block AI agents from signing up for my product?
Not all of them. AI agents increasingly act for real customers, so a blanket block turns those customers away. Allow the agents that can prove who they are on the benefits where you want them, and keep automation that hides what it is under your rules.
How do I tell an AI agent from a bot?
A legitimate agent can prove which agent it is. AbuseZero recognizes those agents by name during the evaluation, while other automation is assessed alongside identity, device, network and benefit history signals.
Do verified AI agents bypass my rules?
No. An allowed agent skips only the benefit's automation setting. Your rules, lists and eligibility still apply, so an agent's claim for someone who already had the trial is evaluated like any repeat claim.
Do I still need a CAPTCHA?
A CAPTCHA asks whether someone is human, which no longer separates good automation from bad. AbuseZero's bot check verifies the moment of submission inside the evaluation, and you choose per benefit whether it's required.
What if an agent claims many trials?
Be ready for agent traffic
Start with Builder
Pay as you go. Set automation rules per benefit.
Verify AI agents
Recognize agents and choose which may claim.
See pricing
Builder, Pro, Scale and Enterprise.