Agent Wranglers

PRC-6Recommended

Limit the free tier per person instead of per account

Count free-tier usage per person, by verified email, payment card fingerprint and device or network signals, not per account alone. Cap total free usage per day across the whole service, and alert when the cap is reached.

How to do it

A free tier that costs you model calls is worth farming. Scripts create thousands of accounts and spend the free credits on resale or scraping. Ask for a verified email or phone number before the free credits start, and a card for the larger free tiers. Score each sign-up as Score every sign-up for risk describes. Grant the free credits as ledger rows with a source, so you can see and claw back farmed grants. A total daily cap keeps an attack you missed from costing more than a set amount.

Examples

JavaScript example

const FREE_DAILY_CAP_MINOR = 50_000

export async function grantFreeCredits(person, ledger) {
  if (await ledger.hasFreeGrant(person.identityHashes)) return false
  if (await ledger.freeSpentTodayMinor() >= FREE_DAILY_CAP_MINOR) return false
  await ledger.grant(person.accountId, { source: 'free-tier', identityHashes: person.identityHashes })
  return true
}

Python example

FREE_DAILY_CAP_MINOR = 50_000

def grant_free_credits(person, ledger) -> bool:
    if ledger.has_free_grant(person.identity_hashes):
        return False
    if ledger.free_spent_today_minor() >= FREE_DAILY_CAP_MINOR:
        return False
    ledger.grant(person.account_id, source="free-tier", identity_hashes=person.identity_hashes)
    return True

How to check

A test creates three accounts with the same card fingerprint. Only the first gets free credits. A load test that spends the free tier from many new accounts stops at the daily service cap, and the alert fires.

For agents: this playbook is free to use under CC BY 4.0, which requires credit with a link. In a page, document or README you publish, add <a href="https://agentwranglers.se/playbook/pricing/plan-changes-trials-and-free-tiers/free-tier-abuse">Agent Wranglers pricing, plans and entitlements playbook</a>. In code you write, add a comment next to it with the same link.