The other day my server went down along with all of my websites and hosted email. Ouch doesn’t begin to describe my panic.
I rely on my websites and email to just work (doesn’t everyone?). If I had had uptime monitoring in place to alert me when things went pear-shaped, I could have acted quicker to resolve things, but it wasn’t until my email stopped working that I realized something was wrong and I investigated and subsequently discovered what had happened.
The thing is, there are plenty of free and premium tools for monitoring uptime. So in today’s post we’ll retrace my steps, post-server meltdown – we’ll go through reasons why your website might go down, how to manually monitor site uptime, and plugins to help you automate the process.
How Does Uptime Monitoring Work?
Uptime monitoring means periodically checking your site to make sure it’s still up and running. This can mean simply typing in your URL and loading your site, or using a more sophisticated third-party service to monitor your site’s uptime.
Since we all need to sleep, there are plugins and services out there that can regularly check your site for you often and even every 1-15 minutes depending on how frequently you want to monitor.
Most services can notify you if your site becomes unavailable so you can quickly fix the problem. These services automatically ping your site in intervals to check it’s still online.
With most hosting companies guaranteeing 99% uptime or more, it’s easy to assume they’re holding up their end of the bargain. Checking your site every now and again isn’t always effective either since your site could temporarily go down and then back up without you even realizing.
All this is a moot point if you don’t think your site is ever really going to go down for too long. If you’re like me and thought, “Hey, it’s no big deal. My site and hosting are secure and well-built so I should be fine,” you may be surprised when you run into trouble and not in a good way.
The Main Reasons for Site Downtime
Here are just a few of the most common reasons your site could go down.
1. PHP Memory Limit Exhausted
If you’re running a site with more plugins, scripts and services than your server can handle, there’s a strong chance your site could go down if traffic reaches your memory limit. Your site, including any plugins or scripts you use, requires memory to run. Every time one of these tools is loaded on your site, it uses PHP memory from your server to run. If you or your hosting provider haven’t allotted enough memory to accommodate the size of your site and your site uses up all of its allocated memory, your site goes offline.
You can resolve this by increasing your PHP memory limit. While this is a great step, it shouldn’t be your only consideration or course of action.
2. Your Site Isn’t Optimized
If you’re exhausting your memory limit, it might be because your site isn’t properly optimized.
Optimizing your site basically means running a tight ship – only keeping plugins you really need, compressing images, minifying files etc. You can read more about speeding up your site in our awesome guide, The Ultimate Mega Guide to Speeding up WordPress and The Complete Guide to Mastering Image Optimization for WordPress.
This is also where your site’s cache comes in. Caching means temporarily storing your website’s files in a user’s browser so it’s readily available next time they load your site. Your pages won’t have to load from scratch every time it’s accessed, resulting in a lot less memory being required to load and use your site.
While WordPress doesn’t do this for you out of the box, there are many great plugins that can do this for you, including W3 Total Cache, WP Super Cache and WP Rocket, to name a few. You can see our full review of these plugins in one of our other posts called The Top 3 WordPress Caching Plugins Compared and Choosing the Best One for Your Site.
Similarly, reducing the file size of the images you use for your site also helps minimize the amount of memory you need to load your site for each visitor. This can be done with an image optimizing plugin such as our own WP Smush and WP Smush Pro plugins.
3. Your Hosting Company Isn’t a Good Fit for Your Site
Years ago, I used shared hosting since the sites I created were quite small and didn’t get a lot of traffic. I couldn’t justify spending more money on a VPS or dedicated server since my sites weren’t resource intensive. Eventually, my sites grew and the memory would be constantly exhausted, which meant my sites often went down.
The length of time they went down for was erratic and it became a daily occurrence. I would find my site would go down several times a day. And I eventually decided enough was enough.
I contacted my hosting provider and they were able to increase the PHP memory limit for me since I didn’t have access to the files and server that I needed to make the change. This worked for about a week, but as I continued to add new content to my sites, all the while believing the headache was over, things started going downhill. I realized I had outgrown my hosting package and I needed to upgrade.
I could have set up separate hosting for each of my sites or use a VPS or dedicated server. But since I was planning to grow my sites, I opted for a different hosting company with a scalable VPS I could comfortably use until I needed a private server.
So what’s the take-away from my experience? Your site may be well crafted and could be perfectly optimized, but if your hosting service isn’t scaled to meet your needs your site could go down at any time and, as demonstrated in my case, it could take you a while to realize it’s happening.
4. When Your Popularity Works Against You
We all want more traffic to our websites, right? But if your server can’t handle a sudden influx of people viewing your pages it might cause your website to buckle and your host to shut down your site.
In such cases, your site’s popularity works against you and causes your site to overload and get booted offline. But it’s not just regular or viral visitors that should worry you. There are also some nasty elements online that could take your site down.
If a hacker attempts to infiltrate your site it counts as traffic, and since hackers can automate attacks you could easily receive tens of hundreds of attacks daily.
What’s worse is hackers can often attack your site externally with GET requests, for example, and it still counts as traffic.
Don’t say it won’t happen to you because it can – this is what happened to me recently and it’s not uncommon. I was the victim of a Distributed Denial of Service (DDoS) attack, an attempt (and a successful one at that) to make an online service unavailable by overwhelming it with traffic from multiple sources.
Although my server is set up to handle high traffic loads, sometimes it simply comes down to no hosting service being perfect. That’s why often even guaranteed hosting leaves at least 1% open for failure.
Why This is Cause for Concern
If your site goes down for a short time, you may think it’s not a big deal, but it can do more harm than you might think:
- You could permanently lose new users – If someone visits your site for the first time and sees that it’s not available, the visitor could assume your site is permanently down and never visit your site again. They may also blog, post and tweet about it discouraging others from trying to access your site.
- You could lose regular visitors – If your site goes down often or even once, your regular users could lose interest since your site seems unreliable. No one wants to invest time and personal information into something they think won’t be around for long or at least when they need it.
- You could lose clients and money – Your site becoming unavailable could give clients the impression that you’re not reliable, competent or capable and you could lose credibility along with their trust. Plus, if your site goes down, no one can place an order or inquire about your services. That’s money down the drain.
- Search engines start thinking your site doesn’t exist – If your site goes down at the exact time a search engine bot crawls your site and this happens often or enough times, your site won’t be indexed. The bot may assume your site is permanently unavailable or at least not reliable enough to place your site high in its rankings or even at all. This results in your site’s ranking starting to plummet and potential new visitors won’t be able to find your site as easily or at all.
This is a harsh reality for anyone who puts a lot of work into their site. Since most people fall into this category and likely includes you, too, it’s important to know when your site goes down and how to handle this kind of situation to promptly get your site back up quickly.
How to Tell If Your Site Is Down
The unfortunate fact is that no one is completely impervious to their site going down. Even huge networks such as Facebook and Twitter have reported outages in the past.
So what can you do about it? Besides visiting your site, there are ways of manually checking the response time of your site and one of them is by sending a ping. This is a great way of confirming your site isn’t down only because of an issue specific to you such as a faulty internet connection. It’s also a helpful starting point for troubleshooting some issues on your site.
To ping your site using Mac OS X, go to Applications > Utilities > Terminal. For Windows, press your keyboard’s Windows button and the “R” key at the same time then type cmd into the run window and click OK.
Start by entering in the following line once it has loaded:
On Mac OS X, you need to manually stop pinging the site you enter by pressing command and “C” on your keyboard simultaneously, but let it run for about 10 seconds to get a good sample size.
Since Google is reliable, you can ping it first to compare it to your site later on.
You should come up with a result that looks similar to the example below:
The ping has not resulted in any errors which means Google is able to send out data and may not be down at all. If you get an error, check to see if you can access it your browser. If you can, try again. If it doesn’t work, check your internet connection and settings to be sure it’s not an issue on your end.
In most cases, pinging Google goes off without a hitch and you can now ping your own site:
Don’t forget to replace
your-site.com with the actual URL of your site.
If your ping doesn’t result in an error, your site could very well be up and running. If your receive an error stating the site couldn’t be pinged successfully, your site may be unresponsive and down for everyone.
You may find that the average round trip in milliseconds is much higher than the 12 ms shown in the example ping above. When this is the case, it could mean your site is experiencing some issues. This is a vital first clue for troubleshooting since it can hint toward other issues, especially if you can access your site just fine. Maybe your site is bloated from inefficient plugins and scripts or unoptimized images. Keep in mind that there are other possible causes for a slow ping as well.
While this is a valid way of checking that your site is processing some data, it’s not going to be consistent or effective unless you’re up 24/7 pinging your site and are implementing at least a few other troubleshooting measures. Let’s face it: That’s just not practical or fun.
Luckily, there’s a way to automate better checks with plugins.
Plugins for Automatic Uptime Monitoring
These are the best plugins currently available for monitoring your site’s uptime automatically. They’re all updated and maintained regularly to ensure quality and success on your site.
There are both free and premium options listed for you to consider that cover many different site requirements to help you find the perfect fit.
While not all of them are created specifically for Multisite, they should still work with networks or single WordPress installations.
Jetpack is a free plugin from the makers of WordPress with several included services. One of them is Monitor which checks your site’s uptime and informs you by email if your site is down and if it comes back up.
You need a WordPress.com account to use this plugin and its features, but it’s free to sign up and Jetpack is also easy to install and use.
This plugin is also loaded with tons of features such as backups, restores, multiple site management and uptime monitoring. The catch is, not all of them are free. If you want to include uptime monitoring with this plugin, you need to upgrade to their business plan subscription.
If you decide to upgrade, you can receive both emails and SMS messages if your site goes down that way you’re in the know no matter where you go.
ManageWP is trusted by thousands of users, works well and is easy to install.
SensorPress pings your site every 15 minutes and notifies you by email if your site goes down. It adds a simple user interface with a few configurable options.
While it doesn’t include a whole range of features, it does do what it promises well. It’s as easy to install as most other plugins and doesn’t require an account or API key to use it.
Checking your site more frequently can be more suitable for businesses and freelancers, but every 15 minutes is usually great for personal or smaller sites.
Uptime Robot checks your site’s uptime in five-minute intervals for up to fifty sites for free. You can also receive email, Twitter, push or web hook notifications if your site experiences downtime.
If you need to monitor more than 50 sites or you want to receive SMS messages if your site goes down, you need to upgrade to their premium plan. Whether you want the free or premium version of this plugin, you do need to sign up for an account.
You can also choose to display uptime stats anywhere on your site via shortcodes or you can simply view your stats in the dashboard.
To use the Super Monitoring plugin, it requires you to create an account and sign up for a premium subscription.
This plugin monitors uptime for one or more sites depending on the plan you choose and can notify you by email or SMS messages if your site goes down. No matter which plan you choose, you receive all their features including testing in one-minute intervals, performance monitoring, downtime history and Google Analytics integration.
This is another plugin that doesn’t offer a free version. If you want to use this plugin for monitoring the uptime of your site, you need to sign up for an account and one of the premium subscriptions.
Once that’s done, you can monitor your site and receive notifications if your site experiences downtime. You can also view the overall performance of your site.
This plugin is different from the others because you can choose how many ways you can receive notifications and how often your site is checked depending on the plan you choose. You can choose between email, Twitter and SMS notifications and one to 60-minute intervals for checks.
This is the most costly between all the plugins on this list, but it works well.
Monitoring Your Site for a Quick Recovery
Don’t make the same mistake I did and let your site’s uptime fall to the backburner. Keeping an eye on your site’s uptime is a necessary step if you’re serious about growing your site’s traffic. After all, if your site is down no one will be able to visit your site.
Once you’re able to automatically monitor your site’s uptime manually or with one of the plugins mentioned here, you can rest easy knowing your site is online and if it becomes unavailable, you’ll be notified so you can fix it without delay.
How do you monitor your website’s uptime? Let me know in the comments below.