Knowledge Base

How to configure the WordPress heartbeat

This article describes what the WordPress heartbeat is, how it can affect site performance, and how you can configure it.

About the WordPress heartbeat

The “heartbeat” feature enables WordPress to monitor user actions and send periodic updates to the web server. The heartbeat is used to save drafts automatically, lock post edits, log out administrators after an idle period, and more.

However, in some scenarios the heartbeat may send an excessive amount of requests to the server. When this occurs, site performance can suffer. For example, CPU loads may increase, or you may receive “The Connection Has Been Reset” messages in your browser.

To see the WordPress heartbeat in action, examine the raw HTTP headers sent between the browser and web server. (To do this, use a browser plugin that displays the raw headers such as Live HTTP headers for Mozilla Firefox, or the Developer Tools feature in Google Chrome.) You will see periodic HTTP POST requests sent from the browser to the wp-admin/admin-ajax.php file.

By default, WordPress does not provide a way to disable or change the heartbeat settings. However, you can install a plugin to do this.

Configuring the WordPress heartbeat using a plugin

The easiest way to configure the WordPress heartbeat is to use a plugin. The Heartbeat Control plugin enables you to quickly and easily do this.

Installing the Heartbeat Control plugin

To install the Heartbeat Control plugin, follow these steps:

  1. Log in to your WordPress site as the administrator.
  2. In the left-hand pane, click Plugins.
  3. Click Add New.
  4. In the Search text box, type heartbeat, and then click Search Plugins.
  5. Locate Heartbeat Control, and then click Install Now.
  6. After WordPress finishes installing the plugin, click Activate Plugin.
Configuring the Heartbeat Control plugin

After you install the Heartbeat plugin, you can configure it. To do this, follow these steps:

  1. Log in to your WordPress site as the administrator.
  2. In the left-hand pane, click Settings, and then click Heartbeat Control. The Heartbeat Control configuration page appears.
  3. In the Control heartbeat locations list box, select where you want to disable or enable the WordPress heartbeat:
    • To disable heartbeat functionality entirely, select Disable everywhere.
    • To disable heartbeat functionality on the dashboard, select Disable on dashboard page.
    • To enable heartbeat functionality only on post edit pages, select Allow only on post edit pages.
  4. In the Override heartbeat frequency list box, select the interval for the heartbeat “ping” messages that the browser sends to the server.

    The shorter the interval that you select, the more likely it is that the heartbeat will negatively affect site performance.
  5. Click Save Changes. The new settings take effect immediately.