The Agency tier is built around a tree model: one anchor workspace holds the subscription, and up to four child workspaces hang underneath it. All five workspaces share a pooled 25,000 events / month quota and get the full Agency feature set.
This page covers the operational rules so you can plan a multi-client rollout end-to-end.
Anchor + children
When you sign up for Agency, the workspace you create becomes the anchor. The anchor:
- Holds the billing subscription, payment method, and invoice address
- Is where you manage payment methods, downgrades, and cancellation
- Counts as one of the five workspaces in your tree (so you have four left for clients)
- Owns the Agency feature flags that propagate to children
When you create additional workspaces from the workspace switcher, they become children of the anchor:
- Plan automatically set to Agency
- Linked to the anchor so billing and quota stay consolidated
- Inherit every Agency feature (Reports API, custom task types, share-with-CFO, weekly + monthly digest)
- Do not have their own subscription; everything bills to the anchor
Pooled events
Every event tracked across the entire tree counts against the same 25,000 events / month quota:
- Events on the anchor count toward the pool
- Events on every child count toward the pool
- Events from clients you invited as members count toward the pool (they show up under the child workspace they have access to)
Once the tree exceeds 25k events in a billing cycle, overage is metered through the shared HumanHours Overage curve at €0.005 / €0.004 / €0.003 per event for the first 50k / next 200k / next 750k of overage. The overage is billed to the anchor's invoice.
Member rules
Two role gates matter when you use Agency to host client data:
| Role on a child workspace | Can create new workspaces? | Can be invited as admin? |
|---|---|---|
| Anchor owner / admin | yes (up to 5 in the tree) | yes |
| Child owner / admin | yes from the anchor | yes (the anchor owner sets this) |
| Member / viewer (your invited client) | no | no, members and viewers only |
Invited clients can only see the workspace they have access to. They cannot see the anchor, sibling workspaces, or each other. Billing-related controls are hidden from them.
Cancellation and downgrades
When the Agency subscription is cancelled, the entire tree downgrades automatically:
- Anchor: plan switches to Hobby, payment method kept on file, subscription cleared
- Every child: plan switches to Hobby and detaches from the tree, becoming a standalone Hobby workspace
Members keep their access to the (now Hobby) workspaces. Each workspace falls back to the Hobby 500-event quota independently. To keep the Agency tree intact, reactivate the subscription before the period ends — the Reactivate button on /billing is one click.
Workspace-cap exception
Agency caps at five workspaces per tree. If you need more, this is the trigger for an Enterprise conversation: agencies running 10+ clients usually want SSO, dedicated Slack, and per-client invoicing, all of which sit on the Enterprise tier.
API and webhooks
Each workspace has its own API keys and its own webhook endpoints. Cross-workspace tracking is not supported: an event posted with workspace A's hh_live_… key is recorded against workspace A only, even if the same agent runs across multiple clients.
This is intentional. Per-client API keys keep the audit trail clean and prevent a leaked key from spilling into another client's data.
Quick reference
| Action | Where | Who can do it |
|---|---|---|
| Create child workspace | Workspace switcher → "+ Create workspace" | Anchor owner / admin |
| Delete child workspace | Settings → Workspace → "Delete this workspace" | The child's owner |
| Invite client | Settings → Team on the child workspace | Child owner / admin |
| View pooled usage | /billing on the anchor |
Anchor owner / admin |
| Manage subscription | /billing on the anchor |
Anchor owner / admin |
| Cancel subscription | Customer portal via /billing |
Anchor owner / admin |