Problem

WordPress Cron Not Running

Diagnose missed WordPress scheduled tasks by separating WP-Cron triggering, loopback access, server cron ownership, Action Scheduler queues, and plugin-specific failures.

Problem, cause, fix, verify

Problem

Scheduled tasks are late or stuck, but the owner is unclear because WordPress, hosting, cache, and individual plugins can all affect background work.

Audience

Administrators troubleshooting missed schedules, delayed emails, failed background jobs, or stale reports.

First check

Cron can fail before a task starts, or a task can start and then fail. Check whether events are due, whether wp-cron.php can run, and whether one long-running job is blocking the queue.

Verify

After a change, watch one known scheduled task complete and confirm the queue age decreases. A single manual trigger is not enough if the recurring schedule still fails.

Editorial trust

Published
Updated
Content type
Problems
Review editorial policy

Symptom

Scheduled tasks are late or stuck, but the owner is unclear because WordPress, hosting, cache, and individual plugins can all affect background work.

For: Administrators troubleshooting missed schedules, delayed emails, failed background jobs, or stale reports.

Diagnosis

What to check before changing the site

Separate Trigger From Execution

Cron can fail before a task starts, or a task can start and then fail. Check whether events are due, whether wp-cron.php can run, and whether one long-running job is blocking the queue.

Check Hosting Ownership

Low-traffic sites may need real server cron. If DISABLE_WP_CRON is enabled, confirm a server cron exists and calls the correct site URL on the expected interval.

Review Loopback And Cache

Blocked loopback requests, strict firewall rules, redirects, or cache rules can prevent WordPress from starting scheduled work even when the event list looks healthy.

Inspect Plugin Queues

WooCommerce, reports, backup jobs, email tasks, and sync workflows may use their own queue layers. Review the queue owner before clearing jobs or deleting records.

Verify With A Real Job

After a change, watch one known scheduled task complete and confirm the queue age decreases. A single manual trigger is not enough if the recurring schedule still fails.

WordPress AdminSeverity: MediumLast reviewed: 2026-09-16

Diagnosis

Symptoms, causes, checks, and fixes

Symptoms

  • Scheduled posts miss their time.
  • Background jobs stay pending.
  • Plugin reports or syncs do not run.
  • Site Health may mention loopback or cron problems.

Most Common Causes

  • Low traffic on traffic-triggered WP-Cron.
  • DISABLE_WP_CRON enabled without server cron.
  • Loopback blocked.
  • Long-running or failed scheduled action.
  • Plugin queue backlog.

How To Confirm The Cause

  • Check whether WP-Cron is disabled.
  • Inspect scheduled action queues if the plugin uses them.
  • Confirm server cron exists and calls wp-cron.php.
  • Review loopback status.

Fixes

  • Configure real server cron when needed.
  • Fix loopback/caching rules.
  • Clear or repair failed plugin queue jobs only with plugin guidance.
  • Reduce long-running tasks.

How To Verify The Fix

  • Trigger or wait for a scheduled task.
  • Confirm queue age decreases.
  • Check logs for successful cron runs.

When To Contact Support

Contact hosting support to configure server cron or inspect process timeouts.

References

Official references