Monitoring as Code: Learn more about the Slack Alert Channel Construct.
- Create an Incoming WebHook integration in Slack by selecting a default channel for your alerts. You’ll see a WebHook URL generated by Slack. Copy it.
- In Checkly, go to Alert Settings -> Add More Channels -> Slack and paste your URL to add it as an alerting channel:

If you’re using a free Slack workspace, be aware of message limits. Exceeding these limits may prevent new alerts from being delivered.
Example Failed Slack Alert
We provide a lot of information in the initial Slack message including links to the check and check result as well as the whole response body.
Example Recovered Slack Alert
From the recovered Slack message, you can see the timestamp as well as a link to the check itself.
Custom Slack Webhook Integration
For users who need more control over the Slack alert format and content, you can use a Webhook Alert Channel in Checkly to send fully customized messages to Slack. This approach is ideal when the native Slack integration does not meet your formatting or dynamic content needs. You will be using a Webhook alert channel with a Slack Incoming WebHook URL and a custom payload template. This setup allows you to control Slack message formatting using Slack’s Block Kit.Steps
-
Create a Slack Webhook
- Create an Incoming WebHook integration in Slack by selecting a default channel for your alerts. You’ll see a WebHook URL generated by Slack. Copy it.
- Choose the bot name and icon for your alerts.
-
Create a Webhook Alert Channel in Checkly
- Go to Alert Settings > Add More Channels > Webhook
- Fill in the following:
- Name: e.g.
Custom Slack Alerts
- Method:
POST
- URL: Paste the Slack Webhook URL
- Notification events: Enable recovery, degraded, and failure. SSL expiry optional, but not supported in this template.
- Body: See template below
- Name: e.g.
- Customize the Template
{{#if}}
) to change the message depending on the alert type:
Template Variables
The template uses these Checkly variables:{{CHECK_ID}}
- Unique identifier for the check{{CHECK_NAME}}
- Name of the check{{GROUP_NAME}}
- Name of the check group (if applicable){{ALERT_TYPE}}
- Type of alert (ALERT_FAILURE, ALERT_RECOVERY, etc.){{LOCATION}}
- Monitoring location where the check ran{{RESPONSE_TIME}}
- Response time in milliseconds{{TIMESTAMP}}
- When the check was executed{{ERROR_MESSAGE}}
- Error details (for failures){{RESULT_ID}}
- Unique identifier for the check result
Customization Options
You can further customize the template by:- Adding more fields to display additional information
- Changing colors based on alert severity
- Including custom emojis or formatting
- Adding conditional blocks for different alert types
- Including links to your internal systems or dashboards
Advanced Slack Configuration
Slack Channel Strategy
Organize alerts across different Slack channels based on your team structure and operational needs:Slack Message Formatting
Slack alerts include rich formatting and interactive elements. Here’s what a typical alert looks like:Slack Threading and Updates
Configure how Checkly handles related alerts:- Thread updates: Group related alerts (failure → recovery) in threads
- Channel posting: Each alert as separate message for visibility
- Mention strategies: Use @here/@channel appropriately based on severity
Slack Best Practices
- Use separate channels for different severity levels (critical, standard, development)
- Configure @here mentions only for critical production failures
- Set up channel-specific notification schedules (e.g., mute development alerts after hours)
- Use threaded conversations to reduce channel noise while maintaining visibility
- Consider using channel prefixes like #alerts- for easy organization