How to Monitor Your WooCommerce Store Uptime and Performance
WooCommerce powers nearly 40% of all online stores globally. If your WooCommerce store goes down — even for 15 minutes — you lose sales, damage SEO rankings, and erode customer trust. Most store owners only find out their site is down when a customer complains or they check their sales dashboard and see a gap.
This guide shows how to proactively monitor your WooCommerce store with Vigilmon so you're alerted the moment something goes wrong.
What Can Go Wrong with WooCommerce?
WooCommerce stores have more failure points than a simple website:
-
PHP memory exhaustion — WooCommerce is memory-hungry; exceeding
memory_limitkills the store - Database connection failures — MySQL/MariaDB issues return blank pages or 500 errors
- Plugin conflicts — a bad plugin update can bring down the entire store
- Payment gateway timeouts — Stripe/PayPal connectivity failures break checkout silently
- File permission issues — WordPress can't write to uploads, breaking product images
- SSL expiry — HTTPS failure kills any trust-sensitive shopping experience immediately
- Hosting resource limits — shared hosting CPU throttling during traffic spikes
Step 1: Monitor Your Store Homepage
Start with the simplest check:
- Sign up at vigilmon.online
- Click Add Monitor → HTTP(S)
- URL:
https://yourstore.com - Interval: 60 seconds
- Alert: HTTP status != 200 or response time > 5000ms (WooCommerce can be slower than pure static sites)
- Alert channels: email + SMS
This catches your web server being down, WordPress fatal errors, and major database issues.
Step 2: Monitor the Product Page
Sometimes the homepage works (it's cached) but product pages are broken (dynamic). Monitor a real product:
-
https://yourstore.com/shop— shop listing -
https://yourstore.com/product/your-top-product/— individual product -
https://yourstore.com/cart/— cart page
Add each as a separate HTTP(S) monitor. A 500 error on /cart/ means customers can't purchase even if the homepage looks fine.
Step 3: Monitor the Checkout Flow
The most critical page is checkout. Monitor it:
-
https://yourstore.com/checkout/— if this returns 500/302 unexpectedly, sales stop
Set a more sensitive alert threshold here: response time > 3000ms is worth a warning; > 8000ms needs immediate attention.
Step 4: Monitor SSL Certificate
For an online store, SSL is mandatory — customers won't enter payment info on an HTTP page.
- Add Monitor → SSL Certificate
- Domain:
yourstore.com - Alert: expires < 21 days (extra buffer for a store — you want time to fix this without panic)
Step 5: Add a WooCommerce Health Check Endpoint
For more precise monitoring, add a health check that tests database connectivity:
<?php
// wp-content/mu-plugins/health-check.php
add_action('init', function() {
if (isset($_SERVER['REQUEST_URI']) && $_SERVER['REQUEST_URI'] === '/wp-health') {
header('Content-Type: application/json');
$db_ok = false;
try {
global $wpdb;
$wpdb->get_var('SELECT 1');
$db_ok = ($wpdb->last_error === '');
} catch (Exception $e) {
$db_ok = false;
}
$status = $db_ok ? 'ok' : 'error';
$code = $db_ok ? 200 : 503;
status_header($code);
echo json_encode([
'status' => $status,
'db' => $db_ok ? 'connected' : 'error',
'woocommerce' => class_exists('WooCommerce') ? 'active' : 'inactive',
]);
exit;
}
});
Now monitor https://yourstore.com/wp-health — it tests WordPress and database simultaneously.
Step 6: Monitor Payment Connectivity (Advanced)
For a SaaS-backed health check, add a lightweight payment gateway test to your health endpoint:
// Check if Stripe API is reachable (don't make real requests — just check connectivity)
$stripe_ok = false;
try {
$ctx = stream_context_create(['http' => ['timeout' => 3]]);
$result = @file_get_contents('https://api.stripe.com', false, $ctx);
// Stripe returns 200 on root URL (redirects to docs)
$stripe_ok = ($result !== false);
} catch (Exception $e) {
$stripe_ok = false;
}
Step 7: Set Up a Status Page for Customers
Vigilmon lets you create a public status page at status.vigilmon.online/your-store.
Share this URL in your store footer and support emails — when customers ask "is your site down?", they can self-check without emailing you.
Recommended WooCommerce Monitor Setup
| Monitor | URL | Alert |
|---|---|---|
| Homepage | https://yourstore.com |
status != 200, latency > 5s |
| Shop listing | https://yourstore.com/shop |
status != 200 |
| Checkout | https://yourstore.com/checkout |
status != 200, latency > 3s |
| Health check | https://yourstore.com/wp-health |
status 503 |
| SSL Certificate | yourstore.com |
expires < 21 days |
Conclusion
Every minute of WooCommerce downtime costs you sales. Vigilmon catches outages in under 2 minutes and alerts you across email and Slack — so you fix the problem before most customers notice.
Start monitoring your WooCommerce store with Vigilmon — free to start
Top comments (0)