Webhook Monitoring for Agencies Managing Multiple Clients
Forty clients with six integrations each is 240 things that can break, none of which anyone owns by name.
The agency problem is arithmetic. Forty clients running six integrations each is 240 moving parts, and the person who built each one has usually moved on to the next project.
Nothing on this page is technically difficult. The difficulty is ownership, and that is an organisational problem wearing a technical costume.
Credentials authorised under a personal account
This is the failure that hits agencies hardest and almost nobody else. An employee connects a client's Google Ads, Meta, Stripe or Shopify account using their own login during onboarding. It works, the project ships, and eighteen months later they leave.
Their access is revoked as part of offboarding, which is correct, and every integration authorised through their account dies at the same moment. Across every client they ever touched.
There is no technical fix after the fact. The preventive fix is a rule that integrations are only ever authorised through a shared agency service account or the client's own, never a personal one, and an audit of which existing connections violate that rule.
Per-client isolation, or you will mute everything
A single alert stream covering forty clients becomes noise within a week. One chatty client's staging environment will train everyone to ignore the channel, and then a real outage at a different client goes unnoticed.
Group monitors by client, route each client's alerts to the people who work on that account, and set thresholds per client rather than globally. A client doing 500 orders a day and a client doing 12 need completely different quiet-period tolerances.
Proving it was not your fault
When a client's integration breaks, the conversation is about blame before it is about fixing. Agencies without records lose that conversation by default, because the client's assumption is that whoever built it broke it.
A timestamped record showing the integration ran successfully until 14:20 on Tuesday, when the client's own API key was rotated by their internal IT team, ends the discussion in one message. Without it you are negotiating from memory.
| Situation | Without records | With a monitoring history |
|---|---|---|
| Client's key rotated internally | Blamed, unpaid investigation | Timestamp and cause in one message |
| Platform changed its API | Looks like your bug | Failure starts at the platform's change date |
| Client edited a workflow | Long argument | Break correlates with their edit |
| You genuinely broke it | Found late, by the client | Found by you, fixed before they call |
The last row is the one that wins renewals. Telling a client you noticed and fixed something before they saw it is worth more than any report you send them.
Make it a billable line, not absorbed cost
Monitoring forty clients has a real cost in tooling and attention. Agencies routinely absorb it and then resent it.
Presented as a retainer line covering proactive monitoring and a monthly integration health summary, it is straightforward to sell, because the alternative the client already experiences is finding out from their own customers. It also changes the relationship from firefighting to maintenance, which is better work.
Handover discipline
When a client leaves, or a project moves in-house, the monitoring and its credentials go with it. An agency still holding live monitors and API keys for a former client is a liability with no revenue attached.
SensaCat groups monitors and credentials so each client's integrations, expiry dates and alert routing stay separate. Start free.