Plans & limits

Pricing is per approval request, not per seat — approvers are always free, on every plan. Limits reset on the first of each month (UTC).

What each plan includes

LimitHobby, $0Pro, $29/moBusiness, $200/moEnterprise
approvals / month1005,000 + $0.02 each after25,000 + $0.02 each afterCustom
monthly safety cap10025,000100,000Custom
team seats11025Custom
approval groups10 (25 members each)Unlimited (100 members each)Custom
notificationsEmailEmail + SlackEmail + SlackEmail, Slack, Teams
webhook endpoints1UnlimitedUnlimitedUnlimited
audit retention7 days90 days12 monthsIndefinite
supportCommunityStandardPriorityDedicated
SSO / SAML

How the quota behaves

  • A request counts against the month it was created in, regardless of when (or whether) it resolves.
  • On Hobby, requests beyond the cap are rejected with 402 quota_exceeded. Your agent sees an explicit error, never a silently dropped approval.
  • On Pro, requests keep flowing past 5,000; overage is billed at $0.02 each.
  • Test approvals sent from the dashboard never count against any quota.
  • Rejected and expired requests count too — the human's time was still used.
Gate on your side for actions that recur rapidly: if an agent retries a rejected action in a loop, each retry is a new request. Rejection notes exist so agents can re-plan instead of re-asking.

Request constraints

ConstraintValue
summary length500 characters
agentName length100 characters
ttlMinutes5 minutes – 7 days (default 24h)
webhook timeout10 seconds per attempt, 3 attempts

Upgrading

Upgrade from Dashboard → Billing — checkout is Stripe, changes apply immediately, and downgrades take effect at the end of the billing period. For Enterprise (Slack/Teams approvals, SSO, indefinite retention, plus roadmap items like Datadog/Splunk audit export), email sales@confirm.dev.