InfoPhilicHow toHow To Reduce Admin-Ajax Server Load In WordPress

How To Reduce Admin-Ajax Server Load In WordPress

To increase better user experience, we always end up by increasing site speed. After clicking a website link seems like a simple thing. But have you ever thought, how many requests are instantly pinged within few seconds after a single click? There are lots of things happens within these few seconds that may slow down the website.

Although, there are various things behind the slow loading of the site. If checking on-site speed test tools, sometimes it shows a warning in the admin Ajax.php file. That means the Admin Ajax.php file is also one of the reasons behind the slow loading of the site.

Admin-ajax.php is part of the WordPress AJAX API. It does handle requests from both backend and front end as well. Ajax allows web pages to be updated asynchronously by exchanging small amounts of data with the server behind the scenes.

In WordPress 3.6, WordPress introduced Heartbeat API. The API stimulates the bidirectional connection between the browser and the server. In addition, it was used for autosave, post locking, and log-in expiration warning while a user is writing or editing.

Heartbeat API triggers events on receiving data/response while creating requests for communication with the server. This generally causes a huge load on the server and thus slows down the website.

Due to this Heartbeat API, Admin-ajax.php generates requests after every 15 seconds. The request can be any communication with the server. And thus by sending too many requests, the server takes a long time to display your contents or load the website.

Speed up WordPress Admin Dashboard

So, the best solution to speed up the site at the backend is by disabling the Heartbeat API. Instead, install the Heartbeat control plugin. Heartbeat control plugin allows you to easily manage the frequency of the WordPress heartbeat API. Through this plugin, the heartbeat API can be disabled entirely.

If you are using any caching plugin, then disable the object cache before moving forward. It will drastically speed up the WordPress dashboard.

To Install Heartbeat Control plugin:

  1. Login to your WordPress Admin Dashboard.
  2. Go to Plugins>> Add new and search for Heartbeat Control.
  3. Now, Install and Activate it.

The configuration of HeartBeat Control Plugin:

After installing HeartBeat Control plugin

  1. Goto HeartBeat control plugin settings

    In your WordPress dashboard, you will see Heartbeat control option under the settings menu on left-hand side. Heartbeat control plugin configuration in WordPress

  2. Select location to disable heartbeat

    The locations have three options to choose from: WordPress Dashboard, Frontend and Post editor.

  3. Modify Heartbeat

    Choose to modify heartbeat option for WordPress Dashboard. It will ask you to override heartbeat frequency. Here you can set frequency value to 60 using the slide option. With this frequency, the requests will generate after every 60 seconds. It will drastically reduce load on the server.

  4. Allow Heartbeat on Post Editor

    If I guess, your site regularly contributes more than 1 user then, I suggest selecting Allow heartbeat on Post Editor.

  5. Now, search for the plugin that uses Heartbeat API.

    To do so, Go to the GTMetrix site and analyze your website. Then, go to the Waterfall tab and examine which file is taking a long time to connect and respond. Now, scroll down and see if there is an entry for admin-ajax.php. If yes, expand it and navigate to the Post tab to find the plugin.

  6. Disable Heartbeat

    You can disable heartbeat on the frontend if none of the plugins on your site uses it. There is no extra configuration required to disable heartbeat.

There is one more option to sort this issue upgrade to a hosting plan that could handle the load of the requests. You can also check our tips to make your WordPress Blog Faster.

You'll also like:

Continue to the category
Amit Malewar
Amit Malewar has been the tutorial writer since 2013. His passion for helping people in all aspects of technology flow through the expert coverage he provides. In addition to writing for InfoPhilic, Amit loves to read and try new things.

Comment Policy: Your words are your own, so be nice and helpful if you can. Please, only use your real name and limit the amount of links submitted in your comment. We accept clean XHTML in comments, but don't overdo it please.


  1. Hello sir when every i click to load more button in my site it gives 500 (Internal Server Error) Post when i check it i my console tab and give the path of wp-admin/admin-ajax.php
    What to do sir

  2. Thank you very much for your help. We have a project where your posts with the Newspaper theme have been helpful.

    There is one item I’m not clear about. Item #6. I’ve looked at GTMetrix Waterfall…not being familiar with the information I’m looking at, not sure I’m able to figure out what you’re getting at with #6.

    Any additional explanation would be helpful.


Please enter your comment!
Please enter your name here





TRY SEMrush for Free!