WordPress Cron: When to Replace WP-Cron with Server Cron

Illustrated infographic summarizing: WordPress Cron: When to Replace WP-Cron with Server Cron

By Greg Nowak. Updated 11 October 2026.

A scheduled article needs to be live before the campaign email goes out. A stock import needs to finish before the morning rush. If someone on your team keeps checking whether WordPress did its scheduled work, the scheduler deserves attention.

Replace the default WP-Cron trigger when unpredictable delays create customer problems or recurring manual work. Start by checking what your host already provides: an existing scheduler may need fixing rather than replacing.

What changes when you use server cron?

Default WP-Cron checks for due tasks when requests reach WordPress. During quiet periods, work can wait for the next request. Server cron supplies a regular trigger, while WordPress and its plugins continue managing scheduled events.

You are changing how processing starts. A reliable trigger cannot repair a broken plugin callback, speed up a slow stock feed, or guarantee when an external service will finish.

When is the switch worth it?

Judge the cost of lateness before looking at visitor numbers. A small membership site may have stricter deadlines than a busy brochure site. Ask what happens if a task runs five minutes late, an hour late, or tomorrow.

Your situation Suggested approach Check before deciding
Brochure site with routine housekeeping Keep default WP-Cron if delays are acceptable Does anything depend on a deadline?
Scheduled publishing or regular imports Consider a five-minute server trigger Can the workflow tolerate that wait plus processing time?
Renewals, stock updates, or customer notices Use a monitored scheduler; assess one-minute triggering How will you detect overdue or failed work?
Host already manages scheduling Verify the existing setup Frequency, site coverage, logs, and ownership
Backlog grows despite regular runs Investigate errors and processing capacity Is work arriving faster than it finishes?
Starting points, not guarantees: choose the interval from acceptable delay and measured runtime.

A five-minute schedule can leave a newly due event waiting almost five minutes before it starts. Leave room for processing time when planning a campaign or operational deadline.

Prepare a migration you can verify

Write down the important workflows in business language: publish an article, update stock, send a reminder, synchronise a contact. Record the acceptable delay, evidence of completion, and owner for each. Your implementer can then map them to plugin hooks or queues.

Keep a configuration backup and choose a verification task whose effects you understand. Running overdue work can send emails or trigger other customer actions.

  1. Prepare the replacement schedule, execution account, paths, PHP environment, and logging.
  2. Test the exact command under the hosting account that will run it.
  3. Enable the replacement and verify an automatic run.
  4. Disable the page-request trigger, then verify another automatic run and the workflow result.

Following WordPress’s system scheduler guidance, add or update this setting in wp-config.php, before the stop-editing comment:

define( 'DISABLE_WP_CRON', true );

Avoid duplicate definitions. This stops default automatic spawning; scheduled events remain available for the replacement to run.

Use WP-CLI when your host supports it

The WP-CLI command reference documents --due-now for running due events. A five-minute entry in a Linux user crontab looks like this:

*/5 * * * * /usr/local/bin/wp cron event run --due-now --path=/var/www/example.com

Replace both example paths. Confirm the PHP executable and extensions available to cron; an absolute path to wp does not establish its entire environment. Keep plugins loaded so their callbacks are available.

For multisite, adding a URL targets one site:

*/5 * * * * /usr/local/bin/wp cron event run --due-now --path=/var/www/example.com --url=https://example.com

Current documentation also supports --network for running across the network. Check wp help cron event run on the host before relying on that option, and verify coverage for every relevant site.

The current reference says --due-now respects WordPress’s cron lock. Still review overlap protection for your installed version and longest jobs. Retain output and errors, and monitor skipped or failed runs. Starting extra workers without understanding the bottleneck can add load.

Use an HTTP trigger when shell access is limited

A hosting panel or external scheduler can request https://example.com/wp-cron.php. The WordPress guidance above documents using wget; a five-minute example is:

*/5 * * * * /usr/bin/wget --delete-after https://example.com/wp-cron.php

Choose one replacement method. Test from the actual scheduler: authentication, redirects, caching, or firewall rules may prevent the request reaching WordPress. A successful HTTP response does not establish that the business task finished.

Verify that the business task finished

Use the WP-CLI event list before and after an automatic run:

wp cron event list --path=/var/www/example.com --fields=hook,next_run_gmt,next_run_relative,recurrence

Recurring events should advance; completed one-off events normally disappear. Then check the actual result: the published page, updated stock, or integration log.

For controlled manual execution:

wp cron event run --due-now --path=/var/www/example.com

This executes due work immediately. Treat it as a live execution, including customer-facing actions.

After migration, wp cron test reports an error when DISABLE_WP_CRON is true. It tests HTTP spawning, so use scheduler history and workflow evidence to assess your replacement.

Plugins using Action Scheduler need their queue checked too. Its processing documentation explains how processing limits and loopback requests affect throughput. Persistent overdue actions may need a dedicated Action Scheduler WP-CLI runner; increasing trigger frequency alone may not clear them.

Leave the team with a supportable setup

Document the command, interval, account, site coverage, log location, and alert owner. Agree how much overdue work warrants attention. For rollback, restore default spawning and withdraw the replacement schedule in a coordinated change.

If scheduling currently depends on someone remembering to check it, talk to Greg about your WordPress operations. Bring the workflow causing concern. I can help define the checks, coordinate the hosting and agency work, and make the handover clear.

Related on GrN.dk

Need help with this kind of work?

Talk to Greg about your WordPress operations Get in touch with Greg.

Sources

Latest articles

Before expanding internal AI search, check how permissions survive indexing, retrieval and access changes, with practical tests for staff and client boundaries.

Let’s Encrypt moves to 64-day certificates in February 2027. Check that renewal, validation, deployment and alerts work across the services you’re responsible for.

Website slowing down during campaigns? Find where requests queue across HTTP/2, NGINX, Apache and PHP-FPM, then test whether a targeted change helps.

When a customer requests access to their personal data, AI can help bring together material from WordPress and Microsoft 365. Here’s how to keep track of data sources, responsibilities and checks.

Put supplier matching, duplicate checks, arithmetic validation, and exception review into your AI invoice workflow before records reach your accounting system.

A small Drupal fix can affect unrelated live settings. Review the full configuration import, resolve environment differences and rehearse deployment and recovery.

An ingredient change may mean a menu needs updating, even when the recipe’s modification date stays the same. Here is how AI can help with review and approval in WordPress.

Check whether AI crawlers can reach your service and product content. Compare response HTML with rendered pages, then identify practical CMS and rendering fixes.

Improve site search for customers who use everyday language. See where synonyms, semantic retrieval and behavioural signals help, while keeping product codes reliable.

Follow customer data through n8n, OpenAI and your CRM. Check who can access retained copies, what redaction hides and whether deletion works before scaling.