Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
WPB Cup
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

How to Add a WordPress Query Monitor On Your Site

At WPBeginner, we aim for a speedy WordPress website and encourage you to do the same.

But from time to time, you may feel like something’s slowing your website down, but don’t know the source of the problem. That’s where a query monitor can help.

Think of it as an x-ray for your website’s performance, revealing the hidden inner workings such as database queries, slow scripts, and other potential bottlenecks.

This article will guide you through adding a WordPress query monitor to your website, allowing you to take control of your website’s performance and keep things running smoothly.

Adding a WordPress query monitor

What Is WordPress Query Monitor?

A WordPress query monitor is a debugging tool that monitors the requests your WordPress website makes to the server.

You can then use this information to troubleshoot WordPress issues or find and fix common WordPress errors.

Some of the things you can look up are:

  • Database queries triggered by a page in WordPress
  • HTTP requests made by scripts in your themes or plugins
  • Hooks and actions triggered on a page
  • Language, user role checks, and template files used to display the page
  • Your hosting environments like PHP and MySQL versions, memory limits, and more

That being said, let’s take a look at how to add a query monitor on your WordPress site.

Adding Query Monitor in WordPress

The first thing you need to do is install and activate the Query Monitor plugin. For more details, see our step-by-step guide on how to install a WordPress plugin.

Upon activation, the plugin will add the query monitor menu to your WordPress admin bar.

Query Monitor menu in WordPress admin bar

Taking your mouse over to the query monitor will display the menu, allowing you to jump to a parameter quickly. You can also click on the query monitor stats to view all data.

Viewing Data in WordPress Query Monitor

First, you need to make sure that the WordPress admin bar is visible when you are viewing your website. Simply go to the Users » Your Profile page and check the box next to the ‘Show Toolbar when viewing site’ option.

Show admin bar

Don’t forget to click on the ‘Update profile’ button to store your settings.

Next, you need to visit the page you want to check the queries for. Once on this page, simply take the mouse over to the query monitor menu in the admin bar and click on the section you want to view.

Monitoring SQL Queries

The Query Monitor plugin enables you to monitor all SQL queries, the number of queries by caller, and queries by component. The queries by component section shows you the queries made by plugins, themes, and core files.

SQL queries

Rewrite Rules and Templates

This section of the plugin shows you matching rewrite rules and the templates being used to display the current page.

Requests, rewrite rules, and templates

Scripts and Styles

The Scripts and Styles section shows you the JavaScript and stylesheets loaded by your theme and plugins.

You will also see where these files are loaded, for example, in the header or footer.

Scripts and styles

Hooks and Actions

The Hooks and Actions section shows you the hooks used and actions triggered while loading the current page.

Hooks and actions

Languages Section

This section shows you the language files requested and loaded by the current page.

If you run a multilingual WordPress site, then this helps you figure out which themes and plugins have language files available.

Languages loaded

HTTP API Calls

This section displays HTTP API calls made to third-party API libraries.

HTTP API Calls

Transient Updates

A transient API allows developers to store information in your WordPress database with an expiration time. This section displays any transient updates requested during the current page load.

Capability Checks Section

The Capability Checks section displays user capabilities checks run by WordPress core, plugins, and themes while loading the current page.

Capability check

Environment Section

This is where you will get your WordPress hosting environment information, like the PHP version, MySQL version, MySQL Host, WordPress database name, and more.

WordPress hosting environment

Conditional Checks

This is where the plugin shows conditions that were required to display the current page view.

Conditional checks

We hope this article helped you add a query monitor to your WordPress site. You may also want to see our guide on how to optimize Core Web Vitals for WordPress and our expert pick of the best WordPress caching plugins to speed up your website.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us. Here's our editorial process.

Editorial Staff

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit - a collection of WordPress related products and resources that every professional should have!

Reader Interactions

1 CommentLeave a Reply

  1. Luke Cavanagh

    When you do not need to find slow queries on your site, deactivate Query Monitor, if left active it can decrease performance on the site and increase memory usage.

Leave A Reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.