Assert vs UptimeRobot
UptimeRobot is an uptime monitoring service. It tells you a URL responded and whether a keyword appeared in the body. Assert tells you what was in the JSON.
Overview
| Feature | Assert | UptimeRobot |
|---|---|---|
| Focus | API monitoring with response validation | Basic uptime monitoring |
| Response Validation | JSONPath assertions, headers, body | Keyword presence only |
| GraphQL | First-class support | Not supported |
| Pricing | Starts free, per-monitor pricing | Free tier, then per-monitor |
| Check Intervals | 30s minimum | 5 minutes free, 1 minute paid |
When to Choose Assert
Choose Assert if you need:
- Response validation: verify JSON structure, values, and types
- GraphQL monitoring: queries, mutations, error detection
- API contract testing: ensure responses match expected schemas
- Response time assertions: alert when APIs slow down
- Header validation: verify authentication, caching headers
Assert is built for APIs. It parses the response body and asserts on the fields inside it.
When to Choose UptimeRobot
Choose UptimeRobot if you need:
- Simple uptime monitoring: is the page loading?
- Keyword monitoring: does the page contain specific text?
- Website monitoring: HTML pages, not APIs
- Maximum free tier: 50 free monitors
UptimeRobot is great for basic website monitoring. When the body of the response matters, Assert does the parsing.
Feature Comparison
Response Validation
Assert:
- ✅ JSONPath assertions ($.user.status == "active")
- ✅ Header validation (Content-Type, Cache-Control)
- ✅ Response time assertions (< 500ms)
- ✅ Status code validation (200, 201, 204)
- ✅ JSON schema validation
UptimeRobot:
- ✅ Keyword presence (page contains "OK")
- ✅ Keyword absence (page doesn't contain "error")
- ❌ No JSON parsing
- ❌ No header validation
- ❌ No response time assertions
Monitoring Types
Assert:
- REST APIs (GET, POST, PUT, DELETE, PATCH)
- GraphQL (queries, mutations, subscriptions)
- Webhooks validation
- Custom headers & authentication
UptimeRobot:
- HTTP(s) websites
- Ping (ICMP)
- Port monitoring
- Keyword monitoring
- Heartbeat monitoring
Alerting
Assert:
- Slack, Discord, Microsoft Teams
- PagerDuty, Opsgenie
- Email, Webhooks
- Customizable alert rules
UptimeRobot:
- SMS (paid)
- Voice calls (paid)
- Integrations via Zapier
Pricing
Assert:
| Plan | Monitors | Price |
|---|---|---|
| Free | 5 monitors | $0/mo |
| Starter | 10 monitors | $8/mo |
| Pro | 30 monitors | $23/mo |
| Team | 60 monitors | $65/mo |
UptimeRobot:
| Plan | Monitors | Price |
|---|---|---|
| Free | 50 monitors | $0/mo |
| Pro | 50 monitors | $7/mo |
| Advanced | Unlimited | $54+/mo |
Real-World Comparison
Scenario: E-commerce API
You have an API endpoint that returns product inventory:
{
"product_id": "SKU123",
"in_stock": true,
"quantity": 42,
"price": 29.99
}
UptimeRobot can check:
- Is the endpoint returning HTTP 200?
- Does the response contain "in_stock"? (keyword match)
Assert can check:
- Is
$.in_stockequal totrue? - Is
$.quantitygreater than 0? - Is
$.pricea number? - Is the response time under 500ms?
- Is the Content-Type header
application/json?
Scenario: Authentication API
Your login endpoint returns:
{
"success": true,
"token": "eyJhbGc...",
"expires_in": 3600
}
UptimeRobot: Can only check if "success" appears in the response text.
Assert: Can verify $.success == true, token format, and expiration value.
Migration Guide
Moving from UptimeRobot to Assert:
- Export your monitors from UptimeRobot (Settings → Export)
- Identify API monitors that need response validation
- Create monitors in Assert with appropriate assertions
- Set up alert channels (Slack, PagerDuty, etc.)
- Run both in parallel for a week to verify
- Disable UptimeRobot monitors for APIs moved to Assert
Uptime or response validation
UptimeRobot is excellent for basic uptime monitoring: is the website or service reachable? Its free tier covers 50 monitors.
Assert is built for API monitoring. If your APIs return JSON, Assert checks the field values from $8/mo.
You can also run both: UptimeRobot for website uptime, Assert for API validation.
Try Assert free — no credit card required.