Skip to content

Disable Heartbeat

Disable Heartbeat cuts down the background check-ins WordPress runs via the Heartbeat API. You choose throttle, front-end only, dashboard only, admin (except editor), or everywhere.

  • Heartbeat Mode options:
    • Throttle (Reduce Frequency) - keeps Heartbeat; sets interval (presets 15 / 30 / 60 / 120 sec, or custom 15-300).
    • Disable on Frontend Only
    • Disable on Dashboard Only (main Dashboard index.php)
    • Disable in Admin (Except Editor)
    • Disable Everywhere
  • Allow Heartbeat in post/page editor when admin or everywhere disable modes are selected (keeps post locking / editor check-ins).
  • Disable modes deregister the heartbeat script; throttle filters heartbeat_settings.

Enable it if:

  • Shared or budget hosting shows high admin-ajax.php load from Heartbeat.
  • The front end loads Heartbeat for logged-in users and you do not need it there.
  • You want a gentler interval than WordPress’s default ~15 seconds.
  1. Go to WP PowerSuite -> Modules.
  2. Enable Disable Heartbeat and open settings.
  3. Choose Heartbeat Mode (start with Throttle and 60 sec if unsure).
  4. If using admin/everywhere disable, optionally enable Allow Heartbeat in post/page editor.
  5. Save and reload the screens you care about.
  • Set Throttle to 60 sec; open a post editor and watch Network for heartbeat / admin-ajax.php?action=heartbeat.
  • ✅ Pass: requests are spaced about every 60 seconds.
  • Set Disable on Frontend Only; view the site while logged in.
  • ✅ Pass: no Heartbeat script on the front end; admin still has it.
  • Set Disable Everywhere with editor allow on; open post.php.
  • ✅ Pass: Heartbeat still present in the editor.
  • ❌ Fail: confirm mode saved; hard-refresh so cached admin scripts reload.
  • Post locking broken. Enable Allow Heartbeat in post/page editor, or switch back to Throttle.
  • Dashboard widgets stale. Expected with disable modes - use throttle instead.
  • Interval ignored. Custom interval only applies in Throttle mode (15-300 seconds).
What does Disable Heartbeat do?

It throttles or deregisters the Heartbeat script based on Heartbeat Mode so background admin-ajax pings run less often or not at all.

Is Disable Heartbeat free?

Yes. Enable it under WP PowerSuite -> Modules.

What mode should I start with?

Throttle (Reduce Frequency) is recommended. Presets include 15, 30, 60, and 120 seconds.

Can I keep Heartbeat in the editor?

Yes. Allow Heartbeat in post/page editor applies when Disable in Admin or Disable Everywhere is selected.

How do I turn Disable Heartbeat off?

Go to WP PowerSuite -> Modules, find Disable Heartbeat, and toggle it off.

Developer notes (hooks & filters)

Source: modules/disable-heartbeat/module.php. Boot: standard · context: admin, frontend, ajax.

Hooks: admin_enqueue_scripts / wp_enqueue_scripts (deregister), or heartbeat_settings in throttle mode. Settings: mode, allow_in_editor, throttle_interval.