For the complete documentation index, see llms.txt. This page is also available as Markdown.

Scheduled tasks

Most of what Cashback Tracker does, it does quietly in the background: fetching shop lists, importing coupons, downloading new orders, expiring coupons that have run out, refreshing currency rates, and keeping the sorting on your shop directory correct.

None of that happens while you watch. It happens on a schedule.

Why this page exists

WordPress does not have a real clock. Its scheduler only runs when somebody visits your site, and many hosts switch it off entirely and replace it with a proper server cron job.

When that arrangement breaks — and it does break — WordPress says nothing. Your site keeps working, pages keep loading, and in the background absolutely nothing runs. The first sign is usually data quietly going stale: no new orders for a fortnight, a shop list that has not moved for a month.

Cashback Tracker now notices and tells you.

The warning

If scheduled tasks stop running, a warning appears at the top of every admin page:

Cashback Tracker: scheduled tasks are not running on this site.

It is not an emergency. Your site and the data you already have are unaffected — nothing is lost, nothing is broken, and visitors see no difference. What has stopped is everything that updates on a schedule.

You can dismiss it for a day. If the problem is still there tomorrow, it comes back.

The two causes

Almost always one of these.

1. WordPress' own scheduler has been switched off. Look in wp-config.php for:

define( 'DISABLE_WP_CRON', true );

That line is not a problem in itself — it is the recommended setup on busy sites — but it is only half of it. The other half is a server cron job that runs the scheduler on a timer. If that was never set up, or was removed, nothing runs.

2. The server cron job has stopped. It was set up once, and something changed: the hosting plan, the server, the path to PHP. Your host's support can tell you whether it is still running, and this is the fastest way to find out.

Fixing it

If you have shell access, a cron job every five minutes is the standard arrangement:

Replace example.com with your own domain. Many hosts offer this as a "Cron jobs" panel in their control panel, and some set it up for you on request.

If you do not have DISABLE_WP_CRON set and the warning still appears, the likely cause is a site with very little traffic — WordPress' scheduler needs visitors to run. A real cron job fixes that too, and is worth setting up regardless.

Checking what has and has not run

  • Networks shows each network's last shop refresh and how it went, per network.

  • Coupons shows when coupons were last imported.

  • Cashback TrackerLogs records what the background jobs did, and what they complained about.

  • WordPress' own ToolsScheduled Actions screen lists every queued and completed background job, newest first. It is technical, but it answers "did anything run at all" definitively.

What runs, and how often

Task
How often

Checking your networks for new orders

Your choice in Settings → General, from every 15 minutes to daily

Re-checking orders that are still waiting

Daily

Refreshing shop lists

Daily or weekly — your choice, in Settings → General

Importing coupons

Hourly, if coupon import is on

Expiring coupons that have run out

Daily

Refreshing currency rates

Daily

Tidying the postback log

Daily

Tidying the plugin log

Daily

Work you start by hand — Refresh shops on a network, a bulk AI run, creating shop pages in bulk — also goes through the same schedule. That is why those jobs need it working too.

Last updated