Scheduled Actions

Scheduled Actions manage background tasks in WooCommerce order notifications, and payment processing. Understanding and managing these can help your WooCommerce store run efficiently, preventing issues like missed order updates or delayed customer emails.

You can find scheduled actions under WooCommerce > Status > Scheduled Actions.

WP Cron

↑ Back to top

Before explaining how scheduled actions work, it is helpful to understand both Cron and WP Cron.

Cron is a time-based task scheduling tool commonly used to automate maintenance tasks on servers. WP Cron is WordPress’s way of handling scheduled tasks. WP Cron runs whenever someone visits your website, initiating when a page is requested. This allows WordPress to execute scheduled tasks in the background, minimizing impact on load times or site performance.

WP Cron handles tasks such as checking for theme or plugin updates, sending emails, and scheduling sale prices in WooCommerce.

However, because WP Cron depends on site traffic, if your site has low traffic scheduled tasks may be delayed, while very high traffic can lead to performance issues.

The free WP Crontrol plugin is a helpful tool for viewing, triggering, and troubleshooting Cron events.

Further reading on WP Cron:

Action Scheduler

↑ Back to top

Action Scheduler is a “scalable, traceable job queue” built for handling large sets of tasks within WordPress. It’s widely used to manage millions of payments for Subscriptions, webhooks for WooCommerce, and events or emails for other plugins. Action Scheduler sends tasks in batches of 20, preventing PHP memory exhaustion, and can handle multiple batches simultaneously—processing up to five queues at once.

How does Action Scheduler work in WooCommerce?

↑ Back to top

Action Scheduler uses a custom WordPress post type, called “scheduled-action,” to store details such as the hook name, arguments, and the scheduled time for future tasks. It runs by attaching itself as a callback to the ‘action_scheduler_run_schedule’ hook, which is triggered using WordPress’s built-in WP Cron.

Essentially, WP Cron activates Action Scheduler.

Once triggered, Action Scheduler looks for scheduled-action posts ready to run at the current time. By default, it relies on WP Cron, which means it is also dependent on site traffic. However, you can set up custom server-side cron jobs to trigger WP Cron independently, bypassing traffic dependency and making it more reliable.

WooCommerce Scheduled Actions

↑ Back to top

As mentioned, you can find scheduled actions under WooCommerce > Status > Scheduled Actions.

A screenshot of the WooCommerce Scheduled Actions tab

From here you can:

  • run a pending action,
  • view scheduled actions with a specific status, such as all actions which are in-progress, for example,
  • view log entries for why an action failed, and
  • Search scheduled actions by hook name, scheduled date, or group name.
↑ Back to top

The below links provide additional information on WP Cron, scheduled actions and troubleshooting some common WooCommerce issues with these tools:

Questions and support

↑ Back to top

Do you still have questions and need assistance? 

This documentation is about the free, core WooCommerce plugin for which support is provided in our community forums on WordPress.org. By searching this forum, you’ll often find that your question has been asked and answered before.

If you haven’t created a WordPress.org account to use the forums, here’s how.

  • If you’re looking to extend the core functionality shown here, we recommend reviewing available extensions in the WooCommerce Marketplace.
  • Need ongoing advanced support or a customization built for WooCommerce? Hire a Woo Agency Partner.
  • Are you a developer building your own WooCommerce integration or extension? Check our Developer Resources.

If you weren’t able to find the information you need, please use the feedback thumbs below to let us know.

Use of your personal data
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.