Skip to content

Alert channels

Alerting → Channels page: configured channels on top, the rest ready to add

OKStatus supports eighteen notification channels. Each channel is an org-level object attached to the monitors that should notify it. The Apply to all my monitors box in the creation dialog is ticked by default, so a new channel starts attached to every monitor you have at that moment — untick it to pick monitors yourself. Monitors created later are never attached automatically.

ChannelPlan
DiscordFree
WebhookFree
TelegramFree
EmailPro
SlackPro
Google ChatPro
AlertmanagerPro
PushoverPro
Rocket.ChatPro
MattermostPro
ntfyMax
Microsoft TeamsMax
Splunk (HEC)Max
PagerDutyMax
Grafana IRMMax
Jira Service ManagementMax
incident.ioMax
JiraEnterprise

Higher tiers include every channel from the tiers below them. The plan gate is checked when you create a channel — channels created before a change keep working.

Setup steps for the webhook-configured channels have their own pages: Discord, Webhooks, Alertmanager, Pushover, Rocket.Chat, Mattermost, Grafana IRM, Jira Service Management, incident.io, and Jira. Slack, Telegram, ntfy, MS Teams, Splunk, Google Chat, and PagerDuty are covered in Other channels.

The simplest channel. Every state change (UP → DOWN, DOWN → UP) generates an email.

Setup:

  1. Go to Alerting → Channels (or attach one directly from the monitor creation wizard’s last step).
  2. Click Add a channelEmail.
  3. Enter the recipient address.
  4. Click Create.

The notification email includes the monitor’s name and URL, the new status, the region that detected the issue, and the exact time of the state change.

Choosing which monitors a channel notifies

Section titled “Choosing which monitors a channel notifies”

A channel doesn’t apply to every monitor just by existing. You scope it either:

  • At monitor creation — the last step of the “New monitor” wizard lets you select existing channels (or create a new one) right there.
  • From the monitor’s detail page — attach, detach, or adjust a channel’s alert kinds at any time.
  • From Alerting → Channels — a channel’s own page lets you apply it to all monitors, or to every monitor carrying a given tag, in one action.

For each channel attached to a monitor, you can independently toggle which kinds of events it should notify for:

  • Up / down — the monitor’s availability state changes.
  • SSL certificate expiry — the monitor’s TLS certificate is nearing expiration.
  • Domain expiry — the monitored domain’s registration is nearing expiration.

All three are enabled by default. Uncheck any of them per channel if, for example, you want your Discord channel to only ever ping on outages while email also carries certificate-expiry warnings.

1 · CHECK Region fails retries + 1 in a row 2 · MONITOR STATUS Majority rule 1 region → partial · >½ → down all healthy → recovered 3 · ONE EVENT PER TRANSITION PARTIAL OUTAGE DOWN RECOVERED not re-sent while it lasts lists the failing regions with total downtime 4 · CHANNELS ATTACHED TO THE MONITOR Email Slack Discord PagerDuty Webhook Telegram +12 more Each channel picks the kinds it wants: up/down · SSL expiry · domain expiry. Muted monitors and maintenance windows send nothing.

A single failed check never pages you. Two safeguards apply, both driven by the monitor’s own settings:

  1. Retry window — a region only confirms a failure after retries + 1 consecutive failed checks (default: 2). The first failure shows as degraded; for a single-region monitor it also sends a soft warning.
  2. Majority rule — a multi-region monitor is down only when more than half of its regions confirm the failure. One region alone is a partial outage: orange status and one alert naming that region — you know something is wrong from that vantage point, without a false “everything is down”.

Recovery is announced once, when every region is healthy again. Every alert kind is sent once per transition, never re-sent while the state lasts. Full rules and diagrams: Status & uptime.

For each monitor, you can also configure:

OptionDescriptionDefault
RetriesConsecutive failures tolerated before the monitor is marked down1
MuteSilence alerts for a monitor without pausing its checksOff
  • Combine email + Discord/Slack — email for the archive, chat for responsiveness.
  • Use webhooks to feed your on-call tool (PagerDuty, Opsgenie).
  • Mute a monitor during a known noisy period instead of disabling it entirely — checks keep running, alerts just stay quiet.
  • Test your channels after setup with the “Send test” button next to each one.
  • Check the Alerts page for “no channel” rows — an alert that was detected but never sent is the most common gap after adding monitors.