Simple, flat pricing
Start free. Starter at a few dollars a month covers a small production project. Upgrade to Pro for production volume and up to 3 members, or Team for the highest limits and as many teammates as you need, billed per seat — no per-event surprises.
No credit card for Free · Cancel any time · 14-day money-back on your first paid month
Free
$0/mo
Try it on a side project: a contact form, a Stripe test account, your alerts.
Start free, no card- 1 member (just you)
- 1,000 events / month
- 1 outbound destination
- 1 live stream connection
- 100,000 AI tokens / month
- 7-day retention
Starter
$2.99/mo
Your first real project in production: 25× Free's volume, two weeks of history, for the price of a coffee.
Get Starter- 1 member (just you)
- 25,000 events / month
- 40,000 deliveries / month
- 3 outbound destinations
- 2 live stream connections
- 100,000 AI tokens / month
- 14-day retention
Pro
$9.99/mo
Run your production webhooks: 100× Free's volume, 30 days of history to search and replay.
Get Pro- Up to 3 members
- 100,000 events / month
- 90,000 deliveries / month
- 10 outbound destinations
- 5 live stream connections
- 3 PostgreSQL source connectors
- 750,000 AI tokens / month
- 30-day retention
Team
$39.99/mo per user
For a team that shares the console: the highest limits and 90 days of history.
Get Team- Unlimited members, billed per seat
- 300,000 events / month
- 600,000 deliveries / month
- 25 outbound destinations
- 20 live stream connections
- 10 PostgreSQL source connectors
- 1,500,000 AI tokens / month
- 90-day retention
Subscriptions are billed through Stripe — Starter and Pro are flat-rate, Team bills per user: the seat count follows your workspace's members as people join and leave, prorated by Stripe. Upgrade from Settings → Billing; to go back to Free, cancel from Manage billing on the same page, which opens Stripe's billing portal. Cancellations keep paid features active through the end of the current billing period.
A delivery is one event sent to one destination; retries of it are free, replays count. Past the month's deliveries (plus a 10% grace on paid plans), events are still received and stored, and their deliveries are held rather than sent — send them from the Deliveries tab once there is room, before the event ages out of your plan's retention.
Compare plans
| Free | Starter | Pro | Team | |
|---|---|---|---|---|
| Workspace members (you included) | 1 | 1 | Up to 3 | Unlimited, billed per seat |
| Monthly events | 1,000 | 25,000 (+10% grace) | 100,000 (+10% grace) | 300,000 (+10% grace) |
| Deliveries / month (one event to one destination) | 1,000 | 40,000 (+10% grace) | 90,000 (+10% grace) | 600,000 (+10% grace) |
| Outbound destinations | 1 | 3 | 10 | 25 |
| Endpoints per project | 10 | 10 | 10 | 10 |
| Live stream connections (console live tail + /v1/stream) | 1 | 2 | 5 | 20 |
| PostgreSQL source connectors | — | — | 3 | 10 |
| Min. source poll interval | — | — | 60s | 30s |
| AI tokens / month (every AI step) | 100,000 | 100,000 | 750,000 | 1,500,000 |
| AI trigger runs / month | 100 | 300 | 2,000 | 10,000 |
| Cron triggers per project | 10 | 10 | 10 | 10 |
| WebSocket triggers per project | 5 | 5 | 5 | 5 |
| Workflow runs in progress at once | 25 | 100 | 500 | 2,000 |
| Data retention | 7 days | 14 days | 30 days | 90 days |
| Signed webhooks + replay | ✓ | ✓ | ✓ | ✓ |
| Live stream (SSE + WebSocket) | ✓ | ✓ | ✓ | ✓ |
| Google / Workspace SSO | ✓ | ✓ | ✓ | ✓ |
| SAML / OIDC single sign-on | — | — | — | Coming soon |
What counts as an event. Every request to an endpoint, every record a cron trigger creates, every WebSocket frame a trigger lets through and every row a database source picks up is one event against the monthly quota.
What counts as an AI token. Every AI trigger run, workflow AI step and agent step counts the tokens it sends to the model and the tokens the model answers with. A typical classification step uses about 1,800; the largest a single step can use is about 4,600. When the month's allowance is used, AI steps fail with that reason until the 1st (UTC) or an upgrade, and every call is listed in the project's Observability.
What happens at a limit
Every monthly allowance resets at 00:00 UTC on the 1st. The console's Home page warns at 80% of events, deliveries and AI tokens, and again when a limit is reached. Nothing is billed as overage: a paid plan never charges more than its price.
| Limit | What happens when it is reached |
|---|---|
| Monthly events | Paid plans accept 10% over the stated number; Free stops at 1,000. Past that, new events are refused, not queued: an endpoint answers 429 with the reset time and an upgrade link, cron, WebSocket and database-source events show the refusal on the trigger or source, and nothing is stored. A sender that retries after the reset or an upgrade gets its event in. |
| Deliveries | Same 10% grace on paid plans, none on Free. Past it, events are still stored and their deliveries are held, not dropped; send them from the Deliveries tab after the reset or an upgrade. |
| AI tokens | No grace. The next AI trigger run or AI workflow step fails with that reason. |
| AI trigger runs | No grace. Further AI trigger runs that month fail with that reason. |
| Workflow runs in progress | A workflow that would start past the limit is not started for that event. |
| Workspace members | Teammates join through an invite link an owner or admin creates in Settings → Members (Hookie sends no email; a link works once and expires after 7 days), or, once the owner links the workspace to your Google Workspace domain, by signing in with Google. Once a workspace has as many members as its plan allows, creating or accepting an invite is refused with an upgrade link, and a Google sign-in is told the workspace is full. Nobody already in the workspace is removed, including after a downgrade. |
| Destinations, sources, endpoints, triggers, stream connections | Creating one more is refused with the reason; what already exists keeps running. On a downgrade, the newest destinations and sources beyond the new plan's caps are paused (shown as "Paused: over plan limit"), never deleted, and resume on their own after an upgrade, as far as that plan allows. |
| Data retention | Stored events older than the plan's retention are deleted automatically. When the plan changes to one with shorter retention (a downgrade, a cancellation, or a trial ending), the previous plan's retention still applies for 7 more days, and Home shows the date the older data goes. Export it from Settings → Export & closure, or upgrade, before then. |
Questions people ask before they pay
Do I need a credit card to start?
No. The Free plan needs no card. You add one only when you upgrade to Starter, Pro or Team, from Settings → Billing in the console.
What counts as an event?
Every request to an endpoint, every record a cron trigger creates, every WebSocket frame a trigger lets through and every row a database source picks up is one event against the monthly quota.
What happens if I go over my plan?
Nothing is billed as overage: a paid plan never charges more than its price. Paid plans accept 10% over their monthly events and deliveries. Past that, new events are refused with a 429 until the 1st (UTC) or an upgrade, and deliveries are held, not dropped. Free stops at 1,000 events with no grace.
Do retries count as deliveries?
No. A delivery is one event sent to one destination, and retrying it after a failure is free. Replaying a delivery yourself counts as a new one.
Can I cancel at any time?
Yes. Cancel from Manage billing in Settings → Billing, which opens Stripe's billing portal. Paid features stay on through the end of the period you paid for, then the workspace moves to Free.
Is there a money-back guarantee?
Yes. The first time you subscribe to a paid plan, ask for a refund within 14 days of your first charge and that first month's fee is refunded. The refund policy has the details.
What happens to my data if I downgrade?
Your previous plan's retention keeps applying for 7 more days, and the console's Home shows the date older data goes. Export it from Settings → Export & closure, or upgrade again, before then.
How is Team billed?
Team is $39.99 per workspace member per month. The seat count follows the workspace's members as people join and leave, prorated by Stripe.
Can an AI agent sign up and use Hookie?
Yes. An agent can register itself onto the Free plan, or connect to the hosted MCP server as you over OAuth. Both use the same API and limits as the console.
The full terms are in the refund policy and the terms of use. Anything else: ask us.
Not sure where to start? See how teams use Hookie for lead intake, support triage, billing, and onboarding →