Downtime is a major issue for websites. For SaaS companies that thrive on their services being available, even a few minutes of downtime can mean a direct loss in revenue. Here’s how to track if your website isn’t working.
How to Track Downtime
The problem with downtime is that it’s hard to track yourself. After all, you’re probably not refreshing your website every 10 seconds waiting for it to go offline. The best solution is to have a downtime monitor service track your website for you.
These services will check your website at regular intervals, and will trigger alerts if something isn’t working as it should. Because problems could be localized to different parts of your site, most downtime tracking services will check multiple pages, and usually tier out the free and paid plans based on how many checks they’ll make.
How Do Downtime Monitors Notify You?
Site downtime is a huge issue, so it’s important that you get notified quickly so you can fix the issue. Most services can send email notifications, SMS notifications, and Slack notifications, which may be enough for a lot of people.
But if you’re not actively watching your notifications, you might miss them, which can lead to your site being down for longer than it should. If you need to be notified urgently of major issues, we recommend Uptime Robot’s Pro plan, which can be configured to repeatedly call you if your site is down for longer than a set amount of time.
They’ll call you to verify your number when you configure the voice-calling service, so you’ll be able to whitelist the number so it will still ring even with Do Not Disturb turned on.
However, voice calling costs money, so it’s not unlimited; you’ll need to purchase SMS credits separately. They include a few in all of the Pro plans, but you only get them once, and they don’t renew.
Downtime Monitor Options
Uptime Robot is a hosted monitoring service. The free version allows 50 monitors at 5-minute intervals, but requires the $5 per month Pro version for SMS messaging. The Pro version also includes voice calls, which can be repeated at regular intervals to ensure you get the message.
Uptime.com does SMS messaging for $8 per month. It can perform content matching, API calls, as well as a service called “transaction monitoring,” which, for example, could attempt a login flow from within a browser to verify that users can sign in.
During heavy traffic, your site may remain functioning and visible but have significantly slower load times, which is still a major issue. Pingdom is a performance monitor and analysis suite that can let you know if your website starts to slow down, and can often tell you what is causing the slowdown in the first place.
CULA is a free tool that can test if your website is looking like it should. It can monitor 50 URLs with 5 content checks per URL, and can send mobile push notifications with Pushover (but no SMS). Their paid versions allow more URLs, but the free version is very generous.
AWS CloudWatch is a full monitoring suite for AWS products. It does a lot more than monitor your website’s uptime, such as collecting logs and monitoring your overall infrastructure, but can be configured to track the performance of your services.
Open Source Options (Host It Yourself)
These tools are open source, meaning there will be a package available that you can install and run on your own server. We recommend that you don’t install monitoring software on the same server, because if there are issues with the server itself, there will probably be issues notifying you about it. The best solution would be to rent a small server from an entirely different cloud provider, to mitigate this risk substantially.
Zabbix is a full monitoring suite that not only tracks your website’s uptime but also tracks the uptime of your applications and backend services.
Icinga can monitor many services and generate regular reports on the health of your servers. It can message you over email or SMS should any critical problems arise.
Prometheus is a monitoring suite, built by SoundCloud before going open source, that works particularly well with container orchestration engines like Kubernetes. It provides easy monitoring for your Kubernetes services, and can notify you of any unexpected behavior.