WordPress "Missed Schedule": Scheduled Posts Not Publishing

You scheduled a post in WordPress, the time came and went, and the post list now says "Missed schedule" instead of published. The post is fine — WordPress's built-in task scheduler, WP-Cron, simply did not run on time.

Common signs of this issue

Safe checks you can do yourself

None of these require sharing passwords with anyone.

What this usually means

WordPress does not have a real alarm clock. Its scheduler, WP-Cron, works by piggybacking on visits: each time someone loads a page, WordPress checks whether anything is due and, if so, fires off a background request to itself to run it. On a busy site that works well. On a quiet small business site it is unreliable, because at 6 a.m. on a Sunday there may be no visitor to trigger it. When the request does run but fails, or when too much time passes, the post is labeled Missed schedule.

The other common causes all stop that background request from happening. DISABLE_WP_CRON set in wp-config.php without a replacement server cron job. A loopback request blocked by a security plugin, host firewall, Cloudflare rule, or HTTP password protection, so WordPress cannot call itself. Full-page caching that answers every visitor without running WordPress at all. And sometimes a heavy or broken plugin task at the front of the queue that errors out and holds up everything behind it.

The reliable fix is to stop depending on visitors. A real server cron job — set up in your hosting panel to call WordPress's scheduler every five or fifteen minutes — runs on time regardless of traffic, and many hosts recommend it. The same scheduler handles WooCommerce emails, backups, and security scans, so fixing it often clears up several quiet problems at once. Plugins that promise to fix missed schedules usually just retry the publish; they help, but they treat the symptom.

What not to do

When to get help

If publishing manually works but scheduling keeps failing, and you are not comfortable editing wp-config.php or adding cron jobs in a hosting panel, this is a good small job to hand off. A misplaced line in wp-config.php can take the whole site down, and a badly configured cron job can quietly burn through your hosting resources. It is especially worth getting help if Site Health shows a failing loopback or events that are days overdue, because that usually means backups and automated emails have also stopped — something you want to know about before you need a backup. Someone experienced will check the scheduler, set up a proper server cron, and confirm that overdue tasks actually run.

Glenn, who runs WebsiteSelfHelp, sorts out missed schedules and stalled WP-Cron for small business sites, including the backups and emails that tend to break alongside them. Describe what is not running and when it started, and he will tell you straightforwardly what it will take to make scheduling reliable. Nothing sensitive is needed to begin.

Not sure what to do next?

Answer a few short questions and we'll point you to the safest next step — DIY, a freelancer, or a direct review. No passwords required.

Is this a business website? If this issue may be costing you leads, sales, or trust, you may want a direct review instead of trial and error.

Frequently asked questions

What does "Missed schedule" mean in WordPress?

It means the post reached its scheduled time but WordPress's task scheduler, WP-Cron, did not run to publish it. The post and its content are safe; it just never went live.

Why are my scheduled posts not publishing?

Usually because WP-Cron only runs when someone visits the site, and nobody did at the right time — or because it has been switched off, blocked by a firewall, or bypassed by caching. A real server cron job fixes most cases.

How do I publish a post that missed its schedule?

Open the post, change the publish date to now or a moment ago, and click Publish. It goes live immediately. Then fix the scheduler so the next one does not miss.

Is DISABLE_WP_CRON bad?

Not by itself. Many developers switch off WordPress's built-in scheduler on purpose and replace it with a server cron job, which is more reliable. It only causes problems when it is disabled and nothing replaces it.

Can caching cause missed scheduled posts?

Yes. If a CDN or static cache serves pages without WordPress running, visits never trigger the scheduler. Low-traffic sites with heavy caching are the most likely to see missed schedules.

Does a missed schedule mean other things are broken too?

Often. The same scheduler runs backups, security scans, update checks, and store emails. If posts are missing their schedule, check that those are still happening.

Can I fix WP-Cron myself?

If your hosting panel has a Cron Jobs section and your host has instructions for WordPress, many owners can. If it involves editing wp-config.php or tracing a blocked loopback, it is worth having someone do it once, correctly.

Related free guides

WordPress site down?

Seeing “There has been a critical error on this website”?

Our guided repair tool logs in over secure FTPS and fixes the most common WordPress failures — safely, with every change backed up and reversible. Start with a free scan, no password needed.

Fix My WordPress Site → Free scan · No download of your site · Reversible