Monitors
Monitors are the core of UptimeIO. Each monitor represents a single endpoint, service, or resource you want to track. UptimeIO supports six monitor types:| Monitor Type | Use Case | Example |
|---|---|---|
| HTTP/HTTPS | Websites, APIs, web services | https://api.example.com/health |
| Keyword | Content validation on web pages | Check if “Welcome” appears on homepage |
| Ping (ICMP) | Server availability | 192.168.1.1 or server.example.com |
| Port (TCP) | Service-specific monitoring | SMTP (25), SSH (22), MySQL (3306) |
| DNS | DNS resolution validation | Verify example.com resolves to correct IP |
| Heartbeat | Cron jobs, scheduled tasks | Receive pings from your backup script |
Check Intervals
Check intervals determine how frequently UptimeIO monitors your endpoints. Available intervals range from 30 seconds to 24 hours, configurable via a slider.Plan Limits
| Plan | Minimum Interval | Recommended For |
|---|---|---|
| Free | 5 minutes | Personal projects, non-critical sites |
| Solo | 60 seconds | Small businesses, important services |
| Team | 60 seconds | Team projects, production services |
| Enterprise | 30 seconds | Mission-critical applications |
Multi-Region Monitoring
UptimeIO monitors your services from multiple geographic regions to provide accurate, globally-representative data and prevent false positives.How It Works
1
Region Selection
When creating a monitor, you choose monitoring regions:
- Auto: UptimeIO selects 2 regions based on intelligent load balancing
- Manual: Select specific regions (Asia, Europe, North America, South America, etc.)
2
Distributed Checks
Each check interval, UptimeIO performs the check from one of your selected regions, rotating through them to ensure global coverage.
3
Consensus-Based Incidents
When a check fails, UptimeIO doesn’t immediately create an incident. Instead:
- Initial failure from Region A
- Retry after 1 second from Region B
- Final retry after 1 second from Region C
- Incident created only if all 3 checks fail from at least 2 different regions
This consensus mechanism requires 3 failed agents from at least 2 regions before declaring an incident, virtually eliminating false positives caused by transient network issues.
Incidents
Incidents represent periods when your monitored service is unavailable or not meeting expectations.Incident Lifecycle
Incident Types
UptimeIO creates incidents for different types of failures:Monitor Down
Monitor Down
The primary incident type when your service fails health checks. Triggered when consensus is reached (3 failures from 2+ regions).
Slow Response
Slow Response
Created when response times exceed your configured threshold. You can set custom thresholds per monitor.Recovery: Incident resolves when response time drops below 80% of threshold for 3 consecutive checks.
SSL Certificate Expiry
SSL Certificate Expiry
Alerts you when SSL certificates are approaching expiration. Configurable warning periods (e.g., 30 days, 7 days).
DNS Error
DNS Error
Triggered when DNS resolution fails or returns unexpected values for DNS monitors.
Coming Soon: Domain expiry monitoring to alert you before your domain registration expires
Notification Profiles
Notification profiles group multiple integrations together and can be assigned to one or more monitors. This allows you to manage notifications centrally rather than configuring each monitor individually.Profile Structure
Event Cascade Filtering
UptimeIO uses a two-level cascade filter for notifications:1
Profile-Level Events
First filter: Events enabled at the profile level. If an event is disabled here, NO integrations in the profile will receive it.
2
Integration-Level Events
Second filter: Each integration has its own event preferences. Both profile AND integration must have the event enabled for a notification to send.
Integrations
Integrations are the individual notification channels (email, SMS, webhooks, etc.) that receive alerts. Each integration belongs to your organization and can be added to multiple notification profiles.Supported Integrations
| Type | Configuration Required | Use Case |
|---|---|---|
| Email address | Team notifications, audit trail | |
| SMS | Phone number (E.164 format) | Critical alerts, on-call |
| Webhook | URL, optional headers | Custom integrations, CI/CD |
| Slack | Webhook URL | Team collaboration |
| Discord | Webhook URL | Community notifications |
| Telegram | Bot token, Chat ID | Personal alerts |
| Pushover | User key, API token | Mobile push notifications |
| PagerDuty | Integration key | Incident management |
Learn how to configure each integration in the Integrations section.
Status Pages
Status pages are public-facing pages that show the real-time status of your services. They’re perfect for keeping customers informed during incidents.Features
Custom Branding
Add your logo, colors, and custom CSS
Custom Domains
Use your own domain (e.g., status.yourcompany.com)
Subscriber Notifications
Users can subscribe to receive incident updates
Maintenance Windows
Schedule and communicate planned maintenance
Heartbeat Monitoring
Heartbeat monitors work differently from other monitor types. Instead of UptimeIO checking your service, your service (cron job, backup script, etc.) sends periodic “pings” to UptimeIO.How It Works
1
Create heartbeat monitor
When you create a heartbeat monitor, UptimeIO generates a unique URL:
2
Your service pings the URL
Your cron job or script makes an HTTP request to this URL after successful execution:
3
UptimeIO monitors the pings
UptimeIO expects to receive pings at your configured interval (e.g., every hour). If a ping is missed beyond the grace period, an incident is created.
Configuration
- Expected Interval: How often your job should run (e.g., 1 hour, 1 day)
- Grace Period: Extra time allowed before marking as missed (e.g., 5 minutes)
- Max Consecutive Misses: Number of missed pings before creating incident
Data Retention
UptimeIO stores historical check data for different periods based on your plan:| Plan | Retention Period | Uptime Calculations |
|---|---|---|
| Free | 3 months | Last 90 days |
| Solo | 12 months | Last 365 days |
| Team | 12 months | Last 365 days |
| Enterprise | 24 months | Last 730 days |
Uptime percentages are calculated from all available data within your retention period. Older data is automatically archived and not included in calculations.
Notification Seats vs Team Seats
UptimeIO has two types of seats that affect how many people can receive notifications:Team Seats
- Purpose: Add team members to your organization
- Access: Full dashboard access, can create/edit monitors
- Notifications: Each team member can add 1 email and 1 SMS integration
- Pricing: $4/month per additional team member (on Solo Pro, Team, Organization plans)
- Plans: Not available on Free or Solo Basic
Notification Seats
- Purpose: Add additional notification recipients without dashboard access
- Access: No dashboard access
- Notifications: Each seat allows 1 email and 1 SMS integration
- Pricing: $2/month per additional notification seat (on Solo Pro, Team, Organization plans)
- Plans: Not available on Free plan; Solo Basic includes 2 seats (no add-ons)
Seat Calculation
The maximum number of email/SMS integrations is:Examples by Plan
| Plan | Owner | Team Seats | Notification Seats | Total Email/SMS |
|---|---|---|---|---|
| Free | 1 | 0 | 0 | 1 |
| Solo Basic | 1 | 0 | 2 | 3 |
| Solo Pro | 1 | 1 | 5 | 7 |
| Team | 1 | 5 | 10 | 16 |
| Organization Basic | 1 | 10 | 20 | 31 |
SMS Credits
SMS notifications consume credits based on your plan:| Plan | Monthly Credits | Credit Expiry | Purchase Option |
|---|---|---|---|
| Free | 0 | N/A | Not available |
| Solo Basic | 3 | 3 months | Available |
| Solo Pro | 5 | 3 months | Available |
| Team | 10 | 3 months | Available |
| Organization Basic | 25 | 3 months | Available |
| Organization Standard | 50 | 3 months | Available |
| Organization Enterprise | 100 | 3 months | Available |
Purchasing Additional Credits
| Package | Price | Per SMS Cost |
|---|---|---|
| 10 credits | $3.00 | $0.30 |
| 100 credits | $15.00 | $0.15 |
| 200 credits | $25.00 | $0.125 |
| 500 credits | $55.00 | $0.11 |
| 1,000 credits | $100.00 | $0.10 |
Monthly credits expire after 3 months. Purchased credits never expire and are used after monthly credits are exhausted.