Skip to content

Scheduled tasks

Cron jobs run a command for a website on a schedule: every few minutes, every night, once a month. Open the website and go to Hosting › Cron jobs.

  1. Click Add cron job.
  2. Under Command, type what to run, for example php artisan schedule:run.
  3. Under Interval, pick Every minute, Every 5 minutes, Every 15 minutes, Every hour, Every day, Every week or Every month.
  4. For anything else, pick Custom and fill in Minute, Hour, Day of month, Month and Weekday. You can use *, ranges, lists and steps such as */5.
  5. Click Add cron job.
  • Each command runs as the website’s own user, from the website’s files.
  • The website’s PHP version comes first on the path, so php is the same version the website uses.
  • Output is added to cron.log in the website’s logs folder. You can read it in the file manager.
  • Keep each command under 700 characters.
  • While a website is disabled, its cron jobs don’t run.

The list shows each job’s schedule in words (for example “Every day at 03:00”), the raw schedule, and the command.

  • Click the pencil to change the command or the interval, then Save changes.
  • Click the bin and confirm Delete task to stop a job.

WordPress has its own list of scheduled tasks, used by core and plugins for things like publishing scheduled posts and sending emails. Open WordPress › WordPress cron to see it.

At the top is the Server cron switch:

  • On: the server runs WordPress’s due tasks every 5 minutes, whether or not anyone visits. Schedules hold on quiet websites.
  • Off: WordPress runs its tasks only when someone loads a page.

With Server cron on, a row tagged Server cron appears under Hosting › Cron jobs. You can change how often it runs, but not its command, and it can’t be deleted there. Turn the switch off instead.

The list on WordPress cron shows each task’s hook, schedule and next run. Click the play button to run a task now. An overdue next run usually means nothing is triggering the tasks; turning Server cron on fixes that.