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, $0Starter, $5/moPro, $29/moEnterprise
approvals / month1003001,000 + $0.05 each afterCustom
notificationsEmailEmailEmail + SMSEmail, SMS, Slack, Teams
webhook endpoints13UnlimitedUnlimited
audit retention7 days30 days90 daysIndefinite
SSO / SAML
custom domains

How the quota behaves

  • A request counts against the month it was created in, regardless of when (or whether) it resolves.
  • On Hobby and Starter, 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 1,000; overage is billed at $0.05 each.
  • 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, custom domains, indefinite retention), email sales@confirm.dev.