Chapter 6
How to run it once it's live: why employees tune notifications out, governing the volume an AI agent can generate, measuring completion instead of opens, debugging one message for one employee, and deciding whether to build or buy the infrastructure.

Last updated: July 2026
Building it is the first half. The second half is that HR notifications have the worst engagement baseline of any software category, and a new source of volume arrived recently in the form of AI agents that generate nudges without a natural ceiling.
HR notifications get ignored because almost all of them ask the recipient to do unpaid administrative work, and none of them are why that person came to work.
A shipping notification tells you something you wanted to know. A review reminder assigns you homework. So the baseline attention your product gets is lower than almost any other category's, and it degrades fast once people learn that ignoring you has no consequences.
What actually helps:
Make the first message the only message that interrupts. One clear notification at the open of a window, then digests, then a single escalation. The instinct to add a fourth reminder is nearly always wrong; escalating to a different person is what changes behavior.
Earn the interrupt with specificity. "You have 3 outstanding items, the earliest due Friday" outperforms "Don't forget your tasks" because it lets someone decide whether to act now. Vague reminders train people to defer.
Default managers to digests. A manager who gets one accurate daily summary reads it. A manager who gets fourteen event notifications reads none and filters your domain.
Give something back. The HR notifications people don't resent are the ones that aren't asking for anything: recognition, an anniversary, a survey result they can see, a goal marked complete. The ratio of asks to gives is a real lever on whether your product is tolerated.
Let people mute what's genuinely optional, and mean it. A preference center that quietly keeps sending is worse than none, because it converts irritation into distrust. This is exactly why the required tier in 4.1 has to be narrow: it's only credible if almost nothing is in it.
An AI agent has no natural ceiling on how many notifications it can produce, so the ceiling has to live in your notification layer.
Nearly every HR platform now ships some version of this: an agent that watches performance and engagement data and proactively nudges managers about 1:1 prep, engagement risk, goals drifting, or feedback worth acting on. It's genuinely useful, and it's a volume problem waiting to happen, because a model asked "what should this manager know?" will always find something.
Six controls, roughly in order of importance:
Courier's AI node sits inside a journey rather than in front of it, which is the useful arrangement here: the agent classifies or drafts, and the journey's throttles, delays, preference checks, and send limits still apply to whatever it produces. The governance belongs downstream of the model, not in it.
Open rate is close to meaningless for HR notifications. Measure completion.
The notification exists to get something done, so the metric is whether it got done, and how much notifying it took. Bluecrew's reported outcome from reworking notifications was a 55% improvement in job application rate, not a lift in opens. The notification was a means to an application, so the application is the metric.
| Metric | What it tells you |
|---|---|
| Completion rate by notification | Did the task get done. The primary metric for anything with an action attached. |
| Time to completion | How long from first notification to done. Rising means your first message is losing its force. |
| Reminders per completion | How many messages it took. This is your efficiency number, and the one to drive down. |
| Escalation rate | Share of items that needed a manager. A rising rate means the employee-facing notification isn't working. |
| Cycle completion curve | Completion over the window. A flat middle and a deadline spike means your midpoint reminder is being ignored. |
| Channel effectiveness by population | Completion per channel, split by deskless and desk-based. This is where you find out email isn't reaching half your users. |
| Delivery failure rate by tenant | Bounces and hard failures per customer. Isolates the customer whose mail policy is silently eating your notifications. |
| Opt-out rate on discretionary topics | Your fatigue early warning. A spike after a release means that release over-notified. |
| Required-topic delivery confirmation | Proof that statutory notices arrived. This is an audit artifact, not an analytics metric. |
Two things worth tracking that aren't metrics. Suppression counts tell you how often preferences, send windows, or throttles stopped a send, which is how you find out that a customer's configuration is blocking something they think is enabled. And per-tenant delivery health should be visible to your support team, because "our people aren't getting notifications" is a ticket you'll receive and it's almost always a tenant-scoped configuration or mail policy issue.
The support ticket you'll get most is "I didn't get the reminder," and answering it requires a per-employee, per-tenant delivery record.
The version of this that hurts is not being able to answer at all. Workleap's Officevibe ran into it from the other direction on their homegrown system, sending duplicates to thousands of users without being able to pinpoint why, which is the same missing capability seen from the opposite side: no per-message record means no explanation, whether the message arrived twice or never.
The chain of possible answers, in the order worth checking:
Each of those is a different fix, and without a delivery log that shows which one happened you're guessing. What you need per message: the event that triggered it, the tenant, the resolved recipient, every suppression decision with a reason, the channel chain that was attempted, provider responses, and the rendered content. HR notifications also need this retained long enough to answer a compliance question about a statutory notice, which is longer than the retention you'd choose for product telemetry, and short enough to satisfy the GDPR point in 4.5. Pick the window deliberately.
Worth building for your support team rather than only your engineers: a per-employee timeline of what was sent, what was suppressed, and why, is the most useful internal tool an HR platform can have.
Build it yourself if you're sending on one or two channels to a single-tenant product with no statutory notices. Look at infrastructure once you have multi-tenant customers, more than two channels, or a required-notice tier, because that's the point where the work stops being sending and starts being orchestration.
Here's what building actually means for an HR platform, drawn from chapter 5:
| What you'd build | Why it isn't a weekend |
|---|---|
| Provider integrations per channel | Each has its own auth, payload shape, error semantics, and rate limits, and you want a backup provider per critical channel |
| Slack and Microsoft Teams apps | Two separate app models, review processes, and permission systems, and your customers are split across both |
| Tenant model | Branding, channel policy, enabled categories, and default preferences per employer, with inheritance for subsidiaries |
| Preference center | Topics, sections, a required tier that can't be overridden, and per-tenant defaults sitting underneath employee choices |
| In-app notification center | Real-time transport, read state synced across devices, pagination, and an SDK for every platform you support |
| Workflow orchestration | Delays, branches, throttles, batching, digests, and escalation with acknowledgement |
| Timezone-aware scheduling | Per-recipient send windows, per-jurisdiction rules, and an auditable override path for genuine urgency |
| Localization | Locale resolution and content variants per notification |
| Delivery observability | Per-message records with suppression reasons, retained under a policy you can defend |
The build is the part teams estimate. The maintenance is the part that hurts: providers deprecate APIs, push tokens churn, Slack and Teams change their app models, deliverability degrades quietly, and every new customer arrives with a channel policy you didn't anticipate. None of that work converts into product differentiation, because no HR buyer has ever chosen a platform for its notification plumbing.
When building is the right call. If notification behavior is genuinely your differentiator, build it. If you're single-channel and single-tenant, the abstraction costs more than it saves. If you have data residency constraints no vendor meets, you may not have a choice. And if you already have something that works and nobody complains about, migrating is real effort with no user-facing payoff.
When buying wins. The pattern worth noticing is that teams rarely switch because building was impossible. They switch when the thing they built stops being explicable. Workleap's Officevibe had a working homegrown system right up until it was sending duplicate notifications to thousands of users and nobody could say why. That's the real failure mode: not the building, but the debugging and extending afterwards.
By this point the shape of the problem is clear. HR notifications need multi-tenant branding and policy, a preference model with a genuinely required tier, routing that resolves relationships rather than IDs, escalation with acknowledgement, digests and throttles to survive deadline cycles, per-recipient timezone scheduling, locale-aware content, a personal-channel fallback for identity that expires, and a delivery record you can audit per employee.
Courier is notification infrastructure for exactly this shape:
OPTED_IN, OPTED_OUT, or REQUIRED, so a statutory notice can't be opted out of while everything discretionary stays under employee control. Tenant-level defaults layer underneath, which is the two-tier model this vertical needs.Three HR platforms already run on it, and they're usefully different from each other:
Ready to ship HR notifications without building the infrastructure? Talk to a solutions expert or get started for free.
Send one interrupting notification per window, then digests, then a single escalation to a different person rather than a fourth reminder to the same one. Default managers to digests instead of event-level notifications, keep the required tier narrow so the preference center stays credible, and watch your ratio of notifications that ask for something to notifications that give something.
Yes, and the volume controls need to live in the pipeline rather than in the agent. Enforce a per-recipient budget with send limits, require a confidence threshold before an agent can interrupt anyone, batch agent output into digests by default, deduplicate against notifications the pipeline already sent, and let each tenant disable the category outright.
Completion rate, time to completion, and reminders per completion, because the notification exists to get something done rather than to be opened. Escalation rate tells you whether employee-facing notifications are working, channel effectiveness split by deskless and desk-based population tells you who you're failing to reach, and opt-out rate on discretionary topics is your fatigue early warning.
Build it if you're on one or two channels, single-tenant, with no statutory notices to deliver. Look at infrastructure once you have multi-tenant customers, more than two channels, or notifications employees aren't allowed to opt out of, because that's where the work becomes orchestration rather than sending. The cost people underestimate isn't the build, it's maintaining provider integrations, chat app models, and per-tenant debugging afterwards.
Long enough to answer a compliance question about a statutory notice, and no longer than you can justify under GDPR, since delivery and open events tied to an identifiable employee are personal data. Pick the window deliberately per notification class rather than applying one product-telemetry default to everything, and be able to state it to a customer.
Related resources:
© 2026 Courier. All rights reserved.