UptimeRobot is the market leader in uptime monitoring services, trusted by over 2.5 million users. This document analyzes their feature set, pricing, and technical approach to inform IsUp's development strategy.
| Category | Technologies |
|---|
| Backend | PHP, Node.js |
| Database | MySQL |
| Caching | Redis |
| Analytics | Google Analytics |
| API | REST API (JSON/XML responses) |
- Hybrid Backend: Uses both PHP and Node.js, likely PHP for the main application and Node.js for real-time monitoring workers
- Traditional RDBMS: MySQL for relational data storage (monitors, users, incidents)
- Redis for Caching: Used for session management, rate limiting, and caching frequent queries
- Multi-location Architecture: Distributed checker nodes across multiple geographic regions
UptimeRobot recently migrated from dedicated servers to a multi-cloud provider setup. Per their architecture announcement, they moved away from a single dedicated server provider due to reliability concerns.
Based on analysis of their published IP ranges, UptimeRobot uses multiple cloud providers:
| Provider | Regions | Evidence |
|---|
| AWS (Amazon) | US-East (Virginia), US-West, EU | IPs: 3.212.x, 34.198.x, 52.22.x, 18.192.x (Frankfurt) |
| DigitalOcean | US, EU, Asia | IPv6: 2604:a880, 2a03:b0c0 |
| Hetzner | Germany (Nuremberg/Falkenstein) | IPs: 49.13.x, 78.47.x, 168.119.x, IPv6: 2a01:4f8 |
| Vultr/Other | Various | Some IP ranges from smaller providers |
| Region | Node Count | Primary Providers |
|---|
| North America | 55+ IPs | AWS, DigitalOcean, Hetzner US |
| Europe | 40+ IPs | AWS Frankfurt, Hetzner Germany, DigitalOcean Amsterdam |
| Asia | 9 IPs | AWS Tokyo, DigitalOcean Singapore |
| Australia | 6 IPs | AWS Sydney, DigitalOcean |
- Distributed Checker Nodes: Multiple VMs/instances in each region running monitoring workers
- Random Node Selection: For each check, 3 random nodes are selected from the region
- False Positive Prevention: All 3 nodes must report failure before incident is triggered
- Cross-Region Verification: When one region detects failure, other regions verify
- DNS TTL Optimization: They follow DNS TTL closely for accurate resolution
- Multi-cloud for resilience: Not dependent on single provider
- Mix of providers: Balances cost (Hetzner is cheaper) with reach (AWS global)
- IPv6 priority coming: Planning to prioritize IPv6 in the future
- Traditional VMs: Using cloud VMs, not serverless/edge (based on IP patterns)
| Monitor Type | Description | Free Plan |
|---|
| HTTP/HTTPS | Website availability monitoring | ✅ |
| Keyword | Check for presence/absence of text in responses | ✅ |
| Ping | ICMP ping monitoring for network devices | ✅ |
| Port | Monitor specific services (email, database, etc.) | ✅ |
| DNS | Detect DNS record changes | ✅ |
| SSL Certificate | Expiration alerts (30, 14, 7 days before) | ✅ |
| Domain Expiration | Domain renewal reminders | ✅ |
| Cron Job/Heartbeat | Monitor recurring background jobs | ✅ |
| Plan | Interval |
|---|
| Free | 5 minutes |
| Solo/Team | 60 seconds |
| Enterprise | 30 seconds |
Personal:
- Email
- SMS
- Voice Call
- Mobile App Push
- Email-to-SMS
Team/DevOps:
- Slack
- Microsoft Teams
- Discord
- Telegram
- Google Chat
- Mattermost
- PagerDuty
- Splunk On-Call
- Pushbullet
- Pushover
- Webhooks
- Zapier
- Response Time Monitoring: Track and alert on performance degradation
- Multi-location Checks: Verify from multiple geographic regions
- Maintenance Windows: Pause monitoring during planned downtime
- Custom HTTP Requests: Configure methods, headers, and request bodies
- White-labeled Status Pages: Custom branding, domains, colors, logos
- Incident Management: Root cause details, team notifications
- API Access: Full REST API for automation (included in all plans)
| Plan | Price | Monitors | Interval | Key Features |
|---|
| Free | $0 | 50 | 5 min | 5 integrations, basic status pages |
| Solo | $7-19 | 10-50 | 60 sec | 9 integrations, basic status pages |
| Team | $29-34 | 100 | 60 sec | All integrations, 3 seats |
| Enterprise | $54-376 | 200-1000+ | 30 sec | Full features, 5+ seats |
- SMS Credits: $3 for 10 credits, up to $100 for 1000 credits
- Voice Call Credits: 2 credits per call (all countries)
- Extra Seats: ~$15-19/month per login seat
- Free: 3 months
- Solo: 12 months
- Team/Enterprise: 24 months
- Custom design (colors, logo, fonts, layout, theme)
- Custom domain support
- Password protection
- Search engine opt-out
- Subscriber notifications
- Analytics
- Maintenance announcements
- Incident updates
- Endpoint:
https://api.uptimerobot.com/v2/
- Formats: JSON, JSON-P, XML
- Rate Limits: 10 req/min (Free) to 5,000 req/min (Pro)
- Operations: Full CRUD for monitors, alert contacts, status pages
- Authentication: API key-based
- CI/CD integration (auto-create monitors on deploy)
- Terraform/Ansible infrastructure as code
- Grafana/Prometheus metric ingestion
- Custom dashboards and reporting
- Automated incident management
- Generous Free Tier: 50 monitors free is industry-leading
- Simple Onboarding: "Start monitoring in 30 seconds"
- Comprehensive API: Full feature parity with UI
- Multi-location by Default: All monitors get geo-verification
- Established Trust: 2.5M+ users, strong reviews on G2/Capterra/Trustpilot
- Mobile Apps: iOS and Android with push notifications
- Real-time monitoring: Could offer sub-30-second intervals
- More notification integrations: Linear, Notion, custom webhooks with better templating
- Better analytics/dashboards: More detailed performance insights
- Modern UI/UX: Their UI is functional but dated
- AI-powered insights: Predictive downtime, anomaly detection
- Better pricing for mid-tier: $34/month jump from Solo is steep
- Longer data retention on lower tiers
- WebSocket/real-time updates: Live dashboard without polling