Pricing
Telltale charges per identified user a month. It never charges per session, per detection or per verified action, and every plan includes every safety control. (The agent usage Telltale meters for you to charge your own customers is separate: it counts high-confidence AI agent verdicts (verified identity, an automation trace, injected input, sustained behaviour, a behaviour change, or two or more independent behaviour families agreeing with no physical-device input), never medium confidence (one behaviour pattern alone, held for review and never chargeable). See what counts as chargeable.)
| Free | Starter | Growth | Enterprise | |
|---|---|---|---|---|
| Price | $0 | $39 a month, or $390 a year | $149 a month, or $1,490 a year | Contracted |
| Identified users a month | 500 | 2,500, then $14 per extra 1,000 | 10,000, then $8 per extra 1,000 | Contracted |
| Sites | 1 | 1 | 5 | Contracted |
| Usage history | Last 7 days | Last 30 days | Last 90 days | Contracted |
| Members | 1 | 3 | 10 | Contracted |
| CSV exports: usage, reports and the ledger | Yes | Yes | Yes | |
| Weekly agent report (webhook; email coming soon) | Yes | Yes | Yes | |
| Alerts and HTML reports | Yes | Yes | ||
| Stripe meters export for the agent usage ledger | Yes | Yes | ||
| Deep insights (opt-in stored tool-call fields for MCP and API) | Yes | Yes | ||
| Safety controls | All | All | All | All |
Each extra 1,000 identified users (or part of one) costs $14 on Starter and $8 on Growth. From about 9,500 identified users a month (8,500 on yearly), Growth costs about the same as Starter or less, and from about 10,500 a month it never costs more.
Every new workspace starts with a 14-day free trial of Growth. No card is needed. When the trial ends, the workspace moves to Free with soft limits.
Founding partners get 50 % off any plan for their first 12 months.
What every plan includes
Safety controls are never a paid extra:
- verdicts for every session
- the verify API (
/api/v1/verify) and protected actions - action rules and approval reviews
- webhooks
- exporting or erasing what Telltale holds about a person
Keeping your actions safe should never depend on what you pay.
What an identified user is
An identified user is a distinct person your server identifies in one calendar month (UTC), through /api/v1/identify (or /v1/identify) with your server key, or names on a tool call through Telltale for MCP servers or on an API call through Telltale for APIs. Telltale counts the userId. When only an accountId is given, it counts the account instead.
identify from the browser SDK alone is not counted. The browser uses your publishable key, which anyone can copy, so it cannot prove the person is real. Browser identities still show in the dashboard. Only identities your server confirms count toward your plan, its 80 % and 100 % notices, and any overage.
- A user counts once a month, however many sessions, Sites or tabs they use, and once across channels: the same person in your pages, through your MCP server and through your API is one identified user.
- Tool calls and API calls are not counted. MCP calls are included on every plan under fair use: about 100,000 a month on Starter and 1,000,000 on Growth (Enterprise by agreement). API calls are included too; a high-volume API can sample calls that carry no agent signal (Telltale for APIs). Past that we talk to you first; collection never stops.
- The verdict plays no part. A person and an agent identified as the same user count once.
- Visitors you never identify are not counted.
- Telltale counts a hash of each ID, not the ID itself.
Limits are soft
- Collection never stops. Past a limit, Telltale keeps recording and keeps answering verify.
- At 80 % and at 100 % of the month's identified users, Settings › Plan & billing shows a warning, and one notification arrives in the dashboard for each.
- On Starter and Growth, extra identified users are charged per 1,000 (each started 1,000 counts) at the end of the billing period. On a yearly plan the monthly extras add up over the year and are charged at the end of it.
- On Free, extra identified users are recorded and not charged.
- Only the paid conveniences wait for a paid plan: more Sites, more members, a longer history, exports, the weekly agent report, and alerts and reports. Your existing Sites keep collecting whatever the plan.
- Moving to a smaller plan hides history beyond its window. Nothing is deleted early: the larger plan's period for sessions with AI agent activity keeps applying until the sessions it kept have aged out, then sessions are kept for the smaller plan's history. A plan with a longer window shows it again, up to what is still kept.
After a trial
When the trial ends, the workspace is on Free. Nothing is deleted, and Settings › Plan & billing lists what is kept as it was:
- Sites past Free's one keep collecting; adding another waits for a larger plan.
- Members past Free's one keep their access; new invitations wait.
- Deep insights stores nothing new, and the fields already stored stay readable until they expire (the owner can still turn it off, which deletes them).
- The weekly agent report and alerts pause; their settings are kept and run again on a plan that includes them.
- Activity older than 7 days is kept and shows again on a plan with a longer history.
Upgrade, change or cancel
The workspace owner chooses a plan in Settings › Plan & billing and pays through Stripe Checkout. Manage billing opens the Stripe customer portal, where the owner changes the plan or period, updates the card, downloads invoices or cancels. A cancelled plan stays on until the end of the paid period, then the workspace moves to Free.
If a payment fails, everything keeps working while the card is updated.
Self-hosted
A self-hosted server, or one in local mode, has no plans, limits or billing: every workspace is on the self-hosted plan.
While payments are not open
Until Telltale turns on payments, nobody can pay: the plan page and the upgrade buttons say payments aren't open yet instead of failing. A trial that ends before then moves to Free, as above, and nothing is deleted.