IsUp - Product Requirements Document (PRD)

Executive Summary

IsUp is a modern uptime monitoring service designed to compete directly with UptimeRobot. We aim to provide comprehensive website, API, and infrastructure monitoring with a superior developer experience, modern UI, and competitive pricing.

Target Launch: Q2 2026 Initial Market: Developers, DevOps teams, SMBs, Agencies


Problem Statement

Website downtime costs businesses money, reputation, and customers. While UptimeRobot dominates the market with 2.5M+ users, there are opportunities to capture market share through:

  1. Modern Technology: Better real-time updates, faster UI, improved DX
  2. Competitive Pricing: More generous free tier or better value mid-tier
  3. AI-Powered Features: Predictive alerts, intelligent anomaly detection
  4. Superior Integrations: Modern tools (Linear, Notion, etc.)
  5. Better Analytics: Deeper insights into performance trends

Target Users

Primary Personas

1. Solo Developer / Indie Hacker

  • Runs side projects, SaaS apps
  • Needs basic uptime monitoring
  • Price-sensitive, uses free tiers
  • Values simplicity and quick setup

2. DevOps Engineer

  • Manages infrastructure for company
  • Needs API access, CI/CD integration
  • Values reliability, detailed alerts
  • Uses multiple monitoring tools

3. Agency / Freelancer

  • Manages multiple client websites
  • Needs white-label status pages
  • Wants to resell/include in services
  • Requires multi-tenant management

4. Small Business Owner

  • Has business-critical website
  • Limited technical knowledge
  • Needs simple, reliable monitoring
  • Wants peace of mind

Feature Requirements

Phase 1: MVP (Core Monitoring)

P0 - Must Have

FeatureDescriptionPriority
User AuthenticationSign up, login, password reset, OAuth (Google, GitHub)P0
HTTP/HTTPS MonitoringCheck website availability, status codesP0
DashboardView all monitors, current status, recent incidentsP0
Email NotificationsAlert on downtime/recoveryP0
Basic Response TimeTrack and display response timesP0
Monitor CRUDCreate, edit, delete, pause monitorsP0
Uptime StatisticsShow uptime percentage over timeP0
Multi-region ChecksVerify from 3+ geographic regionsP0

P1 - Should Have

FeatureDescriptionPriority
Ping MonitoringICMP ping for network devicesP1
Port MonitoringCheck specific ports (SMTP, MySQL, etc.)P1
Keyword MonitoringVerify content presence/absenceP1
Slack IntegrationSend alerts to Slack channelsP1
Webhook NotificationsCustom HTTP callbacksP1
Public Status PagesBasic hosted status pageP1
Mobile ResponsiveFull functionality on mobile devicesP1

P2 - Nice to Have

FeatureDescriptionPriority
Discord IntegrationDiscord webhook notificationsP2
Telegram IntegrationTelegram bot notificationsP2
Custom Check IntervalsConfigure per-monitor intervalsP2
Response Time AlertsAlert when response exceeds thresholdP2

Phase 2: Growth Features

FeatureDescription
SSL Certificate MonitoringExpiration alerts
DNS MonitoringDetect DNS record changes
Domain ExpirationRenewal reminders
Heartbeat/Cron MonitoringMonitor background jobs
Custom HTTP RequestsHeaders, methods, body
Maintenance WindowsPause during planned downtime
Team ManagementMultiple users, roles
REST APIFull API for automation
Custom Status Page DomainsCNAME support
White-label Status PagesCustom branding

Phase 3: Enterprise Features

FeatureDescription
30-second IntervalsFastest monitoring
Advanced AnalyticsPerformance trends, SLA reports
Incident ManagementRoot cause, postmortems
SSO/SAMLEnterprise authentication
Audit LogsActivity tracking
Custom IntegrationsPagerDuty, Opsgenie, etc.
AI Anomaly DetectionPredictive alerts
SMS/Voice CallsPhone notifications
SLA ReportingAutomated SLA tracking

User Stories

Authentication & Onboarding

As a new user,
I want to sign up with my email or GitHub account,
So that I can quickly start monitoring my websites.

Acceptance Criteria:
- [ ] Can sign up with email/password
- [ ] Can sign up with Google OAuth
- [ ] Can sign up with GitHub OAuth
- [ ] Receive email verification
- [ ] See onboarding flow to create first monitor
As a returning user,
I want to log in securely,
So that I can access my monitoring dashboard.

Acceptance Criteria:
- [ ] Login with email/password
- [ ] Login with OAuth providers
- [ ] Password reset via email
- [ ] Remember me functionality
- [ ] 2FA support (Phase 2)

Monitor Management

As a user,
I want to create an HTTP monitor for my website,
So that I get alerted when it goes down.

Acceptance Criteria:
- [ ] Enter URL to monitor
- [ ] Select check interval (1min, 3min, 5min)
- [ ] Choose alert contacts
- [ ] Configure expected status codes
- [ ] Set timeout threshold
- [ ] Optional: Add custom headers
- [ ] Optional: Add keyword to check
As a user,
I want to see all my monitors in a dashboard,
So that I can quickly understand my system health.

Acceptance Criteria:
- [ ] List view of all monitors
- [ ] Show current status (up/down/paused)
- [ ] Show uptime percentage
- [ ] Show last check time
- [ ] Show average response time
- [ ] Filter by status
- [ ] Search by name/URL
As a user,
I want to view detailed information about a monitor,
So that I can investigate issues and trends.

Acceptance Criteria:
- [ ] Response time graph (24h, 7d, 30d)
- [ ] Uptime percentage over time
- [ ] Recent incident history
- [ ] Check results from each region
- [ ] Configure monitor settings
- [ ] View/edit alert contacts

Notifications

As a user,
I want to receive email alerts when my site goes down,
So that I can respond quickly to outages.

Acceptance Criteria:
- [ ] Email sent within 1 minute of detection
- [ ] Email includes: monitor name, URL, error details, time
- [ ] Email sent when site recovers
- [ ] Recovery email includes downtime duration
- [ ] Can configure notification delay (avoid flapping)
As a user,
I want to receive Slack notifications,
So that my team is immediately aware of issues.

Acceptance Criteria:
- [ ] OAuth flow to connect Slack workspace
- [ ] Select channel for notifications
- [ ] Customize message format
- [ ] Include monitor details and status
- [ ] Link to dashboard for details

Status Pages

As a user,
I want to create a public status page,
So that my customers can check service status.

Acceptance Criteria:
- [ ] Select monitors to display
- [ ] Customize page title and description
- [ ] Public URL (isup.dev/status/[slug])
- [ ] Show current status of each service
- [ ] Show uptime history (90 days)
- [ ] Show active/recent incidents
- [ ] Mobile responsive design

Technical Requirements

Performance

MetricRequirement
Check Execution< 5 seconds per check
Alert Delivery< 60 seconds from detection
Dashboard Load< 2 seconds
API Response< 200ms (p95)
Uptime99.9% availability

Scalability

MetricInitialGrowth Target
Users1,000100,000
Monitors10,0001,000,000
Checks/minute2,000200,000
Data Retention90 days2 years

Security

  • HTTPS everywhere
  • Password hashing (Argon2)
  • API key authentication
  • Rate limiting
  • CORS protection
  • SQL injection prevention
  • XSS protection
  • Audit logging
  • SOC 2 compliance (Phase 3)

Pricing Strategy

Proposed Tiers

PlanPriceMonitorsIntervalKey Differentiator
Free$0103 minGenerous for testing
Starter$5/mo251 minAffordable entry
Pro$15/mo1001 minBest value mid-tier
Team$39/mo25030 secCollaboration features
EnterpriseCustomUnlimited15 secFull features + SLA

Competitive Positioning

vs UptimeRobot:

  • Free: 10 monitors @ 3min vs 50 @ 5min (comparable value)
  • Starter: $5 for 25 vs $7-19 for 10-50 (better value at low end)
  • Pro: $15 for 100 vs $34 for 100 (significantly cheaper)
  • Differentiator: Modern UI, faster updates, AI features

Success Metrics

Launch Metrics (Month 1-3)

MetricTarget
Signups500+
Active Users100+
Monitors Created1,000+
Paid Conversions5%

Growth Metrics (Month 6-12)

MetricTarget
MAU5,000+
MRR$5,000+
Churn Rate< 5%
NPS> 50

Risks and Mitigations

RiskImpactMitigation
UptimeRobot dominanceHighFocus on DX, modern features
Infrastructure costsMediumServerless architecture, efficient design
False positive alertsHighMulti-region verification, smart thresholds
Scaling challengesMediumClickHouse for analytics, queue-based processing
Security breachCriticalSecurity audits, penetration testing

Roadmap

Q1 2026 - Foundation

  • Core infrastructure setup
  • User authentication
  • HTTP monitoring
  • Basic dashboard
  • Email notifications

Q2 2026 - MVP Launch

  • Public launch
  • Ping/port monitoring
  • Slack integration
  • Status pages (basic)
  • Stripe billing

Q3 2026 - Growth

  • SSL/DNS monitoring
  • Team management
  • REST API
  • White-label status pages
  • Additional integrations

Q4 2026 - Enterprise

  • Advanced analytics
  • Incident management
  • SMS/voice alerts
  • AI anomaly detection
  • SSO/SAML

Appendix

Glossary

  • Monitor: A configured check for a specific endpoint
  • Check: A single execution of a monitor
  • Incident: A period of detected downtime
  • Uptime: Percentage of time service is available
  • Response Time: Time to receive first byte
  • Status Page: Public page showing service status

References

On this page