Regular readers may remember that a while back I reviewed one of my favorite website speed testing tools: GTMetrix. Speed testing is an essential task for all website owners, providing valuable insight into how fast our sites load under various circumstances and at different times of the day.
In this article, I’ll take a look at Pingdom, one of the best-known website monitoring and speed testing tools currently available. At first glance, Pingdom may seem like a relatively simple testing tool — because of its seemingly basic free speed test — but once you register a whole world of other features becomes available.
Starting with the aforementioned free speed testing tool and how to use it, let’s take a look at all that Pingdom has to offer.
Free Speed Tests
If all you need is a quick website analysis, head to Pingdom Tools, enter the URL of your website, click ‘Start Test’, and wait for the results to roll in. After a few seconds you should see something like this:
As you’d expect, WinningWP is a relatively well-optimized website, so there aren’t really any glaring issues on the list. However, take another site — wordpress.org, for example — and you’ll immediately notice a few problems. To delve deeper into each issue, click on the expander arrows (to the right of each issue Pingdom returns) for more details on each.
I use speed tests such as this when I’ve completed development work on a project. When you launch a site, there are so many little things you need to tend to it’s normal to forget some of them. Tools such as this allow me to go through each issue and work through the corresponding solutions.
Something many newbie users don’t realize, though, is that it’s important to test more than just your website’s homepage. Your single article, product and other pages will likely give very different results, and, when coming from search engines and other links to your site, visitors will most likely be arriving on just these types of pages.
Pingdom gives you more than just the issue list, though. You can also view content size by content type, content size by domain, the various requests being made by the domain, and all file requests in an extremely helpful ‘waterfall’ format (showing the exact order in which each item is loaded onto the page — more on this below).
The one tool Pingdom doesn’t give you (but GTmetrix does) is a separate view for PageSpeed and YSlow scores, but, all in all, Pingdom gives you everything you need to analyze your website and make it faster. The Pingdom website has also recently been updated to make it beautifully presented — let’s take a look:
This is the section I use most when testing sites — it acts as a checklist you can go through to make your site faster. Just click on the arrows to see details and follow the guidelines to resolve the issues. Note: In some cases, you may not have control over everything you’d need to bring the score up to 100%, but that’s okay — the goal is to tick off as many as possible. Don’t stress if you still have a few hard-to-solve yellow warnings at the end of your efforts.
The response codes section is especially useful if your website has been up and running for a while, telling you what’s going on with all the resources you’re loading on the page. Two hundred and 300-class statuses are usually A-OK, but you’ll want to weed out all 400 and 500-class errors.
You can also use the waterfall (more on this in a moment) to figure out which resources are giving you 404 and 500 errors, and take the appropriate steps to remove them or modify your site.
Content and Request Breakdown
There are four tables that give you information about the distribution of your content and your requests.
The requests by content type table shows the number of requests your site is making — another way to optimize your site. If you’re pulling in 49 separate scripts like this test site is doing, perhaps it’s time to concatenate them into one (or at least a few).
Content size by domain and requests by domain show similar information regarding the origin of your content. You want to load content mostly from local sources or from Content Delivery Networks. If you load a lot of content from off-site sources, you may risk slowing down your site if it has to wait for the slow responses of others.
This tool is used by developers everywhere to gain a visual understanding of how sites load and where the bottlenecks are. It shows a wealth of information, especially if you use the expander arrows to get to the details of each request.
The icon on the left indicates the type of content being requested. If the response isn’t of the 200 class, you’ll see an alert icon — hover over it for more information. Next comes the request URL and the request size. Finally, there’s a horizontal bar graph that shows you when and how the resource loaded.
The further to the right the bar starts, the later the resource loads. The length of the bar shows the loading time, broken down into DNS, SSL, connect, wait, send and receive.
For local resources, it’s a good idea to keep an eye on the connect sizes. Lengthy connect times can indicate a problem with your host — assuming your site is otherwise well configured. Search for long bars that hinder the loading of your website, or external resources with a lengthy DNS or other metric — these should be weeded out.
While the free version looks nice, it doesn’t really offer anything substantial over-and-above GTmetrix. When you grab a pro account, though, Pingdom becomes a powerhouse of handy features. Let’s take a look at all you can do with Pingdom Pro.
Uptime monitoring (your host may not be as reliable as you think) is the most basic type of monitoring Pingdom offers. It consists of a graph that combines the average response time with any downtime your site may experience. I recently updated my site, taking it offline for about three days. Take a look at how Pingdom reacted:
As a quick test, I took my site down for four to five minutes to see if Pingdom would catch it. As you can see from the tiny red pip along the bottom, it did — I even got an email within two minutes of taking the site down. Pretty impressive!
The uptime reports show response time logs, test result logs (from multiple locations), download PDF, CSV results and more.
Page Speed Reports
Page speed reports are the same as the free tool on the site combined with historical data — excellent for catching nasty trends or code-related slowness.
Transaction reports are one of Pingdom’s most powerful features. They allow you to make sure user interactions spanning multiple actions and pages work smoothly, and are invaluable for webshops, SaaS applications, and other interaction-based sites.
The idea is to use a simple editor to tell Pingdom how to navigate through your site and how to check the results. You could instruct Pingdom to load your homepage, check that it gives a 200 status code, fill in a search field and then go to a result.
Note: Pingdom has an excellent tutorial video on transaction reports and how to set them up. I recommend taking a look.
Real User Monitoring
Page speed tests tend to be artificial. You load your website in your browser, or you initiate a test using an external service such as Pingdom. These are great and mostly follow what actually happens in reality — although not always.
Real user monitoring gives you a bit of code to add to your site — just like Google Analytics. Once added, you’ll see real data rolling in. You’ll see how long it took for your site to load for actual visitors, as opposed to you or some automated bot.
Real data will give you insight far beyond the available test locations, since your visitors will come from all over the world. You can set the load time conditions for satisfied, tolerating and frustrated visitors to segment your view better.
Pingdom offers you a basic alert system out of the box. You can get emails, basic app notifications and SMS messages. When I took my website down, I received an email within two minutes — this was more than enough for my purposes.
If you’re working with a large application, you may want to use Pingdom’s Beep Manager, which aims to send the ‘right alert to the right person at the right time’. You’ll need the pricey advanced account, but it may be well worth your investment.
You can add team members, set who gets notifications, schedule maintenance times and do a lot more. I haven’t used it myself, but, based on Pingdom’s Beep Manager video, I’m thinking about implementing it for a project I’m working on.
You can use Pingdom’s API to set up some advanced tools for yourself. Currently, Liberato and webhooks are available. When using webhooks, Pingdom will send POST data to a URL of your choice, and you can intercept this data and use it as you wish.
You can integrate Pingdom with your own incident management tools, get notified of downtime for client websites, create your own stats dashboard, and so on.
The Pingdom Mobile App
Pingdom has an extremely handy free mobile app (available for both Android and iPhone) that works brilliantly and looks amazing. It’s a superb companion for receiving notifications and keeping yourself updated about your sites wherever you are.
For the sake of testing, I updated my site’s code and made an issue that caused my site to throw a 500 server error. Moments later, I received this in the mobile app:
The mobile app also shows you basic data such as response time and uptime checks. It’s a great bonus to your pro account that really is a joy to use — which is relatively rare for services that didn’t originate on mobile platforms.
On one hand Pingdom is expensive, on the other, it really isn’t for what it provides. The basic account costs $14.95 per month and includes ten checks at one-minute intervals, one advanced check (transaction or page speed), real user monitoring up to 100K pageviews per month, basic alerts, 50 SMS messages per month and silver support (online and chat).
As you’d expect, higher level accounts scale things up. The advanced account ($89.95 a month) introduces the Beep Manager; the $249 a month Professional account adds multi-user logins, invoice payments, subdomain monitoring and tags for real user monitoring and gold support (including phone support).
In my opinion, the prices can get hefty near the professional account, but they’re well worth it. If you have a personal blog, you may not even need a Pingdom account — a free check now and again will suffice. If you’re serious about your personal site, the $15 per month should be an acceptable cost.
If you operate a webshop, you could start with free checks, and, as you get more orders, make the investment of $45.95 a month to give you three transaction checks. If you get just one extra sale per month due to a well-monitored site, it will have paid for itself.
Having now used it for a good few weeks, I’m extremely impressed with Pingdom. So much so that I’ve already canceled my GTmetrix account and switched everything over to Pingdom. There’s absolutely nothing wrong with GTmetrix, I still love their services, but Pingdom provides a whole lot more bang for your buck.
Pingdom has built a service that’s equally useful to both people trying to grow their personal sites and much larger web-based companies. The dashboard is a joy to navigate, the mobile application is incredibly useful, and the on-site help is extremely easy to understand and follow.
In short, it’s safe to say I can wholeheartedly recommend Pingdom as the all-round best online tool for measuring and monitoring website performance.
Any experience with Pingdom? Any other useful tips or tricks?