October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
VGSources
Blog

How to Fix WP-Cron Not Working in WordPress

Learn why WordPress scheduled tasks run late or fail, how to test WP-Cron, repair loopback errors, check configuration constants, and move safely to a real cron job when needed.
WorldWordPress Length11 min Posted Quest giverVGSources Team
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Fixing WP-Cron usually takes three checks: open Tools → Site Health → Status, run wp cron test if WP-CLI is available, and confirm that DISABLE_WP_CRON is not enabled without a replacement scheduler. If the test reports a loopback HTTP failure, isolate plugins and the active theme before asking your host to investigate firewall, DNS, SSL, or authentication rules. Sites with little traffic, or jobs that must run at a predictable time, should use a server-side scheduler that requests wp-cron.php.

This guide explains what each test proves, how to repair the common failure modes, and when replacing request-triggered WP-Cron with a real cron job is the safer design.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What WP-Cron does—and why it can appear broken

WP-Cron is WordPress’s scheduling system. It does not run as a continuously running daemon. Instead, WordPress checks for due events during normal requests and tries to start them with a loopback HTTP request to your site’s wp-cron.php file. Scheduled posts, plugin jobs, theme tasks, update checks, and other background work can therefore depend on someone—or something—requesting the site.

That design creates two different symptoms that are often confused:

#1 Best Overall
Sale
Gaoye Blue Light Blocking Glasses
  • BLUE LIGHT BLOCKING GLASSES: Our blue light glasses for women boast UV400 protection, blocking harmful blue rays from computer screens. With these bluelight glasses women, you can enjoy gaming, reading, or watching TV with no worries of eye strain.
  • EYE RELIEF: Our blue light glasses are engineered to reduce blurry vision or strain caused by prolonged screen time. These womens blue light glasses aid in better sleep by preventing blue light from disrupting your natural sleep cycle, helping you fall asleep faster and enjoy a more restful night's sleep, making them the perfect christmas present.
  • COMFORTABLE: Crafted from durable material, our trendy blue light glasses for woman or blue light glasses men ensure long-lasting comfort. The high-transmittance lenses accessories, gamer gifts for men, help keep your eyes relaxed. Perfect stocking stuffers, gifts for gamers men, christmas gifts for men, halloween costumes.
  • LIGHTWEIGHT: These clear blue light glasses feature a lightweight frame, meaning they’ll stay comfy for long-term wear. Perfect as blue blockers glasses for women or mens blue light glasses, these non-prescription fake glasses for men can be worn throughout the day. The blue light blocking glasses women feature polycarbonate HD lenses, which are anti-reflective and restore true color.
  • WORRY-FREE PURCHASE: If you experience any issues, our support team is ready to assist you quickly. These are the perfect costume glasses for cosplay dressing up.
  • Delayed events: the cron system is healthy, but the site receives too few requests to trigger due events promptly. A scheduled post may publish when the next visitor arrives.
  • Failed spawning: WordPress cannot make the loopback request, or a configuration constant prevents normal spawning. Events can remain overdue even on a busy site.

WordPress.com’s scheduling guidance, updated January 23, 2026, describes WP-Cron as request-triggered. The WordPress Developer Resources loopbacks handbook, first published March 28, 2023 and updated September 23, 2026, explains that loopback requests start WP-Cron and run scheduled posts plus events added by plugins and themes. The distinction matters: increasing traffic may reduce delays, but it will not repair a blocked loopback or an intentionally disabled scheduler.

Start with Site Health and record the exact error

Before changing configuration, confirm what WordPress is reporting. In the dashboard, go to Tools → Site Health → Status. Look for notices about scheduled events, loopback requests, or background updates.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Open the Status tab and expand every warning related to cron, loopbacks, scheduled events, or updates.
  2. Record the hook or event name, the HTTP status code, the timestamp, and the wording of the failure.
  3. Note whether the warning is persistent or appears only once. A single delayed event can be a transient request failure; a recurring loopback warning needs isolation.
  4. After each repair attempt, return to Site Health and refresh the checks rather than relying on an old notice.

Do not treat the symptom as limited to scheduled posts. WordPress’s plugin and theme auto-update process uses WP-Cron tasks, and Site Health surfaces cron errors that can affect those updates and other background operations. A warning that names a plugin hook may identify the component creating the event, while a generic loopback warning points toward the request path itself.

Run the authoritative WP-CLI test

If you can use WP-CLI, run the built-in test from the WordPress installation directory:

wp cron test

A healthy result is:

Success: WP-Cron spawning is working as expected.

The command checks several things in one pass. It detects whether DISABLE_WP_CRON is true, warns if ALTERNATE_WP_CRON is set, attempts an HTTP spawn, and reports a non-200 response. The output is more useful than a vague “scheduled post is late” report because it identifies whether WordPress reached the spawning stage and what the HTTP layer returned.

Read the result without guessing

  • Success: spawning works at the moment of the test. If jobs are still late, investigate traffic frequency, event recurrence, or a specific plugin task rather than assuming the loopback is broken.
  • An error that DISABLE_WP_CRON is true: normal page requests are not supposed to spawn cron. You need a separate scheduler that calls wp-cron.php.
  • A warning about ALTERNATE_WP_CRON: WordPress is using a different spawning path. Keep the constant in context and compare the warning with the HTTP result; do not remove it blindly.
  • A non-200 HTTP response: the loopback request reached an HTTP endpoint but did not receive a successful response. The status and response body can point to a plugin, theme, authentication rule, firewall, DNS problem, or SSL configuration.

Run the test again after each meaningful change. A successful command proves that spawning worked for that request; it does not guarantee that every individual plugin event will complete successfully.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Windex Gaming Cleaning Wipes, Pre-Moistened Wipes to Instantly Clean all Gaming Gear and Electronics, Resealable Packaging for a Freshness Lock, 25 count (Pack of 1)
  • WINDEX GAMING WIPES: effortlessly clean all your gaming gear and gaming electronics in one easy step with our new Windex Gaming Wipes
  • AMMONIA FREE: our ammonia-free formula is safe to use on all of your favorite gaming equipment like consoles, headsets, controllers, screens, keyboards, and more
  • PRE-MOISTENED WIPES: each wipe instantly removes dust, dirt, and stubborn smudges and fingerprints leaving a streak-free shine
  • ANTI-STATIC: great for cleaning and wiping down your gaming gear and electronics leaving behind no visible residue
  • COMPACT RESEALABLE PACKAGE: store your pack of Windex Gaming Wipes anywhere in your home for whenever a quick and easy wipedown is needed

Inspect wp-config.php before editing anything

Open wp-config.php and search for these constants:

define( 'DISABLE_WP_CRON', true );
define( 'ALTERNATE_WP_CRON', true );

The exact value and the reason it was added matter. DISABLE_WP_CRON stops the normal request-triggered spawn. That is appropriate when a server-side scheduler has been deliberately configured, but it causes overdue events when no replacement exists. If you find it enabled unexpectedly, determine who added it—an administrator, deployment script, hosting setup, or performance configuration—before changing it.

ALTERNATE_WP_CRON changes the way WordPress starts cron. It can be present for a reason related to the site’s server environment, so treat the WP-CLI warning and the site’s HTTP behavior as evidence. Remove or alter the constant only after you know why it was introduced and have a way to restore the previous configuration.

Choose one deliberate operating model

  • Request-triggered mode: leave DISABLE_WP_CRON unset or false. WordPress attempts to spawn due events during site requests.
  • Externally triggered mode: set DISABLE_WP_CRON to true only after a server-side scheduler or external requester is reliably calling wp-cron.php.

Do not enable and disable constants while an event is due and then assume the queue has been repaired. Make the configuration change, run wp cron test, and inspect Site Health again.

Fix plugin and theme loopback conflicts

When wp cron test reports a failed or non-200 loopback, isolate WordPress components before escalating to the host. A plugin or theme can intercept the request, require authentication, return an error, or create a fatal error while the cron endpoint is loading.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use the dashboard when it is available

  1. Deactivate all ordinary plugins.
  2. Deactivate or switch from the active theme to a bundled default theme.
  3. Run wp cron test again and refresh Tools → Site Health → Status.
  4. If the loopback now works, reactivate the theme and plugins one at a time. Re-test after each activation.
  5. When the failure returns, the last component activated is a strong suspect. Check its settings, recent updates, logs, and compatibility before re-enabling the rest.

Include must-use plugins in the investigation when possible. They are loaded outside the normal Plugins screen and can continue affecting requests even after ordinary plugins are deactivated. A staging copy is preferable for broad isolation because disabling every production plugin can remove security, caching, or commerce functionality temporarily.

When the dashboard is inaccessible

Use SFTP, FTP, or your host’s file manager to make a reversible change. Temporarily rename the plugins directory, or rename the directory of the active theme, so WordPress cannot load it. Test the loopback, then restore the original name and re-enable components systematically.

Rank #3
Sale
LISEN Cell Phone Stand Phone Holder for Desk, Office Decor Gadgets for Men
  • Ergonomic & Adjustable Design: Fight "text neck" and improve your posture. Designed for comfort, it offers an adjustable height (7.1in-8.5in) (1.4in adjustable range) and angle (5°-85°) Please note: cell phone stand is only 9 inches tall—the length of a standard pencil
  • Without blocking subtitles Perfect for office desk Tiktok Face Time Zoom video—this is the ultimate kitchen desk essential for phones! Perfect viewing experience while reducing neck back strain, A must-have for gamers streamers desk, and anyone who values both style and support!
  • Sleek & Stable Design fits Otterbox Case: Say goodbye to bent cables, tangles, and tip-overs! LISEN’s stylish adjustable desk phone holder features a built-in charging hole and smart cable management, keeping your phone secure and your workspace clutter-free cool gadgets for men
  • ANTI-SLIP DESIGN free hands: The under 10.00 items easy gadgets back and the bottom of this kitchen essentials for women are fully covered by anti-skid silicone, which LISEN stand up desk decor can provide maximum protection device from any scratches and slides
  • Your Perfect Viewing Companion:If your product arrives damaged or breaks within 365 days, reach out to LISEN for a quick and hassle-free solution. Struggling with assembly, like tightening the screw? We’ve got your back! Your experience matters to us. (Product including: phone Holder stand*1, screw*1, hexagon screwdriver*1, specification*1)

Record every rename and restore it as soon as the test is complete. Do not leave a security, caching, or payment plugin disabled simply because the cron test passed. The goal is to identify the conflict, then correct or replace that component while preserving the site’s required functions.

Recognize a component-specific failure

  • If only one hook remains overdue, inspect the plugin or theme that registered that hook.
  • If all cron spawning fails with a generic HTTP error, prioritize the request path and server rules.
  • If the loopback succeeds with everything disabled but fails after one activation, preserve the successful test output and the failing output for the component’s developer or host.

Escalate persistent loopback failures to the host

If the failure remains after plugins, must-use plugins where possible, and the active theme have been ruled out, ask the hosting provider to inspect server-level restrictions. WordPress specifically identifies these categories as possible loopback blockers:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Outbound firewall or web-application security rules that reject a request from the site to itself.
  • DNS resolution that points the domain to the wrong address from inside the server network.
  • SSL or certificate configuration that prevents the server from validating its own HTTPS request.
  • HTTP authentication that protects the site or staging environment from the unauthenticated cron request.

Give the host actionable evidence: the site URL used for the loopback, the exact HTTP status, the timestamp, the complete wp cron test output, and the Site Health message. Mention whether the test still fails with plugins and the theme isolated. A host can then distinguish an application conflict from a network or security rule instead of asking you to repeat generic WordPress resets.

Do not bypass SSL verification or weaken firewall rules merely to make a test pass. A working cron request that undermines transport security is not a durable fix. Ask the host for the narrowest rule that permits the site’s legitimate loopback request.

Decide whether traffic-triggered WP-Cron is enough

A healthy WP-Cron spawn can still run late on a low-traffic site because no request arrives to start it. This is expected behavior for a request-triggered scheduler, not necessarily a broken installation.

Site condition Trigger behavior Practical remedy Trade-off
Busy site with best-effort timing Frequent page requests usually trigger due events Keep normal WP-Cron and monitor Site Health Execution time follows incoming traffic
Low-traffic site Events wait for the next request and may be late Use an external monitor that periodically requests the site, or a server scheduler Requires a dependable requester in addition to WordPress
Deadline-sensitive jobs Traffic volume cannot guarantee a fixed interval Use a server-side scheduler to request wp-cron.php Requires access to a scheduler and host configuration
DISABLE_WP_CRON enabled intentionally Page loads do not spawn cron Verify the replacement scheduler before relying on it Without the replacement, events remain overdue

An external uptime or monitoring service can increase trigger frequency for a low-traffic site by making periodic HTTP requests. It does not repair a loopback that the server itself cannot make, and it does not replace diagnosis of a non-200 response. Treat it as a trigger strategy, not a cure for an application or host error.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Ledagic IC+RGBW USB Powered Led Light Bar with App & Remote Control, 2 Pack
  • Easy Installation: Our gaming lights have been designed to enhance your entertainment experience. Simply position the led light bar next to your TV or game console to create a game room environment with ease. They come with USB power and a 60 inch cord for direct mounting and mobility
  • Audio Syncing & Extensive Mode: The built-in high-sensitivity music sensor allows you to sync the TV led lights to your favorite music. Lights react and move to the beat of music, film and game audio, creating an incredible immersive sound and light experience – and all without the need for an additional hub. You can choose from 64+ patterns, including strobe, illusion, jump, energy, gradient, running, chasing, fluttering mode etc. Each mode can be applied to different scenes
  • 64+ Chasing IC+RGB & W Effect: The independent control design of IC+RGB and white all-in-one multifunctional rgbw led bar lights monitor backlight allows you to easily switch the led lights for desk between IC+RGB and white to enjoy a variety of lighting effects, you can choose white lighting mode with high brightness for better illumination when working, etc. Choose IC+RGB lighting mode when you need to create an entertaining atmosphere for the light show, 16 million colours of Color changing rgb light bar let you dance to the beat and create a dynamic party atmosphere
  • Dynamic and Dimmable Lights: 1%-full brightness free brightness adjustment gives you the flexibility to adjust dimmable led light bar for room decorations or a variety of occasions
  • USB Powered: USB light bars for room can be powered by powernank, usb charger, TV, Monitor, laptop PC mainframe, making behind TV led lighting bar easy to install in any location.TV led lights are powered by the TV usb interface / PC mainframe, can be turned on/off synchronously with TV / PC

Configure a server-side scheduler safely

For critical jobs, the WordPress handbook’s key requirement is simple: the scheduler must make an HTTP request to wp-cron.php. On a Linux host with access to crontab, a valid five-field schedule that runs every five minutes is:

*/5 * * * * curl -fsS https://example.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Replace https://example.com with the site’s real canonical URL. The five fields are minute, hour, day of month, month, and day of week; */5 * * * * means every five minutes. The -f option makes curl fail on HTTP errors, -sS keeps routine output quiet while retaining errors, and the redirection prevents cron from mailing normal response output.

  1. Confirm that the host permits outbound requests and that the URL resolves to the WordPress installation.
  2. Add the scheduler entry through the host’s documented cron interface or crontab editor.
  3. Run the request manually once and check its exit status and server logs.
  4. Set DISABLE_WP_CRON to true only after the scheduled request is running reliably.
  5. Run wp cron test and inspect Site Health. The test may still describe the disabled normal spawn; the important operational check is that the external requester reaches wp-cron.php and events are completing.
  6. Watch at least one known due event or scheduled task through its normal completion path.

Do not copy malformed examples into production. A line such as */ five * * * * is not valid cron syntax; use a numeric interval such as */5 * * * *. If your host uses a control panel, container scheduler, or another task system, apply the same requirement—an authenticated, reachable HTTP request to the correct wp-cron.php endpoint at the desired interval.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Verify that events are actually completing

Spawning and execution are related but separate checks. After repairing the trigger:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Refresh Site Health and confirm that the loopback or scheduled-event warning clears.
  • Run wp cron test when the configuration allows normal spawning, and preserve the output for comparison if the problem returns.
  • Check the specific scheduled post, update task, or plugin event that was late.
  • Look for repeated failures at the same timestamp, which can indicate a recurring component or host rule.
  • Confirm that a real cron scheduler is still enabled if DISABLE_WP_CRON remains true.

A one-time successful request does not prove that a long-running or resource-intensive event will finish. If the endpoint responds successfully but one task remains overdue, investigate that task’s owning plugin or theme rather than repeatedly changing global cron settings.

Symptom-specific troubleshooting branches

Scheduled posts are late, but wp cron test succeeds

Check traffic first. On a quiet site, WP-Cron may be waiting for the next request. Use a periodic external request or move to a server scheduler if the publication time matters. Do not disable WP-Cron unless the replacement requester is already configured.

Best Value
Sale
HUANUO FlowLift™ Dual Monitor Stand, Fully Adjustable Gaming Monitor Desk Mount for 13–32″ Computer Screens, Full Motion VESA 75x75/100x100 with C-Clamp & Grommet Base, Each Arm Holds 4.4 to 19.8 lbs
  • Compatible with Wide Screens - To ensure compatibility with the dual monitor mount, your each monitor must meet three conditions at the same time: First, computer screens size range: 13 to 32 inches. Second, screen weight range: 4.4 to 19.8 lbs. Third, the back of the monitor screen must have VESA mounting holes with a pitch of 75x75mm or 100x100mm.
  • Regarding the compatibility with desks - Your desk must meet three conditions at the same time: First, desk material: Only wooden desks are recommended, plastic or glass desks cannot be used. Second, desk thickness range: 0.59" - 3.54". Third, the bottom of the desk should not have any cross beams or panels, as this will interfere with installation. We recommend carefully checking that your desk and monitors meets all above conditions before purchasing.
  • Dual C-Clamp Hold - Worried your dual monitors might wobble or slip? Our upgraded base uses a larger platform plus a dual C-clamp structure to lock the dual monitor arm firmly to your desk. Each arm safely keeps your screens steady while you type, click and game—no shaking, no sliding, just a clean and secure setup you can trust every day. It also provides Grommet Mounting installation choice, both options ensure stable and secure fixation for your 0.59" - 3.54" desk.
  • Full-Motion Adjustment For Comfortable View - Pull the screen closer when you’re deep in a spreadsheet, push it back to watch videos, or rotate to portrait for coding — moving everything smoothly with just one hand. The monitor stand offers +85°/-50° tilt, ±90° swivel and 360° rotation. Raise your monitor up to 15.75″ to support a healthy sitting posture. Whether you’re working from home, gaming through the night, or switching between video calls and documents, getting the screens to your natural line of sight helps relieve neck, shoulder and back strain so you can stay focused longer with less fatigue.
  • Keep Your Desk Organized: By lifting both screens off the desktop, this dual monitor stand opens up valuable space for your keyboard, notebook, docking station or a simple, clutter-free work area. Built-in cable management guides wires along the arms, keeping cords out of sight and out of the way. Enjoy a tidy, modern workstation that looks as good as it feels to use.

Site Health reports a loopback error and WP-CLI shows a non-200 response

Deactivate plugins and switch to a bundled theme, including must-use plugins when possible, then test again. If the response remains non-200, provide the status, URL, timestamp, and command output to the host for firewall, DNS, SSL, and authentication checks.

The command says DISABLE_WP_CRON is true

Find the constant in wp-config.php and determine whether a system scheduler is supposed to replace page-load spawning. If no scheduler exists, either configure one or remove the intentional disable setting after taking a backup and confirming why it was present.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The command warns about ALTERNATE_WP_CRON

Do not treat the warning alone as proof of failure. Compare it with the HTTP result and Site Health message. The alternate path may have been introduced for a server-specific reason; change it only with a tested rollback plan.

Only one plugin’s scheduled task fails

Leave the global scheduler intact and focus on that component. Reproduce the problem with other plugins disabled, check the component’s own logs and settings, and give its maintainer the hook name, timestamp, and successful or failed loopback evidence.

Use this order when choosing the fix

  1. Observe: capture the Site Health warning, hook, status, and timestamp.
  2. Test: run wp cron test from the WordPress directory.
  3. Check configuration: inspect DISABLE_WP_CRON and ALTERNATE_WP_CRON in wp-config.php.
  4. Isolate software: deactivate plugins, must-use plugins where possible, and the active theme; then retest.
  5. Escalate infrastructure: ask the host to inspect firewall, DNS, SSL, and HTTP-authentication restrictions when the isolated site still fails.
  6. Select the scheduler: retain request-triggered WP-Cron for best-effort timing, or configure a dependable requester and disable normal spawning for low-traffic or deadline-sensitive sites.
  7. Verify: refresh Site Health and confirm that the previously late event completes.

This sequence avoids the two most common mistakes: treating low traffic as a loopback failure, and enabling DISABLE_WP_CRON without arranging the scheduler that must replace it.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More quests from Patch Notes

  1. How to Set Up a RedM (RDR2) Server in 2026: License Key, txAdmin and server.cfg, Step by StepBlog11min
  2. Best RedM (RDR2) Server Hosting in 2026: Comparing Four Hosts on Slots, Memory and PriceBlog10min
  3. How to Host a Mindustry Server in 2026: server-release.jar, Port 6567 and the Commands That MatterBlog7min
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Crashes, No Sound, or Screen Glitches?Free driver scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.