How to Set Up Website Monitoring for WordPress (Without Plugins)
The Problem with WordPress Monitoring Plugins
Search "WordPress uptime monitoring" and you'll find dozens of plugins promising to monitor your site and send alerts when it goes down. The problem? They all share the same critical flaw: they run inside WordPress.
Think about that for a moment. If your WordPress site goes down because PHP crashes, the database server fails, or your hosting server is overloaded, the monitoring plugin also goes down. You get no alert. Meanwhile, your site is down and you have no idea.
This is exactly like asking your car if it's working correctly and trusting the answer. The monitoring system is part of the thing being monitored — it can't give you an objective answer when it fails along with everything else.
Reliable uptime monitoring must be external — running on separate infrastructure, checking your site from the outside, the same way your users access it.
Why External Monitoring Is Better for WordPress
External monitoring checks your WordPress site exactly as a visitor would — it sends an HTTP request to your URL and evaluates the response. This catches:
- Server-level failures: PHP-FPM crashes, Apache/Nginx going down, out-of-memory errors
- Database failures: MySQL down = WordPress returns "Error establishing database connection" — external monitors catch this
- WordPress failures: Fatal PHP errors, plugin conflicts, corrupted core files
- Hosting/network issues: Server overload, DDoS attacks, network routing problems
- SSL certificate expiry: Your certificate expired and HTTPS is now broken
- DNS issues: Domain not resolving (DNS provider outage, expired domain)
- CDN/Cloudflare issues: Proxy layer returning errors while origin server is fine
WordPress plugins catch none of the above — because when these failures happen, WordPress isn't running.
What to Monitor on a WordPress Site
For a standard WordPress installation, monitor these URLs:
1. Homepage / Main URL
Your main domain (e.g., https://yoursite.com). Configure the monitor to check for a keyword in the HTML response — like your site name or a specific text that should always appear. This prevents false "up" reports if your site serves an error page with a 200 status code.
2. WooCommerce Shop/Checkout (if applicable)
If you run an online store, monitor /shop and /checkout separately. These pages often have more database queries and plugin dependencies — they can fail while the homepage appears fine.
3. WordPress REST API Endpoint
Monitor https://yoursite.com/wp-json/ — this confirms WordPress is responding correctly to API requests. Many modern themes and plugins depend on the REST API; if it's broken, functionality silently fails.
4. Login Page (Optional)
Monitor /wp-login.php if you need confirmation that the admin dashboard is accessible. Useful for membership sites or any WordPress installation used by a logged-in audience.
Step-by-Step: Setting Up WordPress Monitoring with AlertSleep
- Create a free AlertSleep account at dashboard.alertsleep.com — no credit card required
-
Add your first monitor:
- Type: HTTP/Website Monitor
- URL: your WordPress domain (e.g.,
https://yoursite.com) - Check interval: 5 minutes (free) or 1 minute (paid)
- Expected status code: 200
- Keyword check: enter a word that should appear on your homepage (e.g., your site name)
- Configure SSL monitoring: AlertSleep automatically monitors SSL certificate expiry — you'll receive alerts at 30, 14, and 7 days before expiry
-
Set up alert channels:
- Email: add your email and any team member emails
- SMS: add your phone number for immediate downtime alerts (paid plans)
- Slack: connect your workspace for team notifications
- Create a status page (optional): AlertSleep's free tier includes a public status page where you can show your WordPress site's uptime history — useful for client sites or member communities
Configuring Keyword Checks for WordPress
The keyword check is crucial for WordPress monitoring. WordPress sometimes returns HTTP 200 even when displaying database errors or white screens. Configure your monitor to check for a string that should always be in the response:
- Your site name (as it appears in the HTML title tag)
- A specific phrase from your homepage content
- Your company name in the copyright footer
If this keyword is missing from the response, AlertSleep treats it as a failure and alerts you — even if the HTTP status code was 200.
Monitoring WordPress After Plugin Updates
Plugin updates are the #1 cause of WordPress downtime. After a major plugin update or WordPress core update, your external monitoring shows you immediately if something broke. Best practice:
- Stage updates on a staging environment first
- Update production during low-traffic hours
- Watch your monitoring dashboard for 30 minutes after updates
- Have AlertSleep SMS alerts active so you're notified instantly if a plugin update breaks something
Can I Use Both a Plugin and External Monitoring?
Yes — and for important WordPress sites, you should. Use a WordPress uptime plugin for in-application health checks (database query speed, memory usage) and external monitoring (AlertSleep) for true availability monitoring. They're complementary: the plugin tells you WordPress internals; the external monitor tells you what your users are actually experiencing.
External Monitoring for WordPress: Key Takeaways
- WordPress monitoring plugins can't detect server or database failures — they go down too
- External monitoring checks your site exactly as users do — it catches everything plugins miss
- Monitor homepage, shop, REST API, and checkout separately for comprehensive coverage
- Configure keyword checks to catch WordPress error pages that return HTTP 200
- Use SMS or phone call alerts for immediate notification — email can wait in an inbox
AlertSleep monitors your WordPress site from multiple global locations and alerts you within 60 seconds of detecting downtime. Learn more about WordPress uptime monitoring or start your free monitoring today.
Share this article
About the Author
AlertSleep Team
Monitoring & DevOps
The AlertSleep team helps developers and ops teams keep their services online and communicate outages professionally.