Skip to content

Cronjob.de › Guides › Joomla

Setting up a Joomla cronjob: web cron instead of the lazy scheduler

For a reliable Joomla cron job, go to System › Scheduled Tasks › Options, switch Web Cron on and the Lazy Scheduler off. Joomla then shows an address with a secret key, which you have called from outside every minute. This applies to Joomla 4.1 up to the current version 6.2 and works without a command line.

Updated:

Why at all

The lazy scheduler waits for visitors

Out of the box Joomla has the Lazy Scheduler switched on. According to the Joomla manual it relies on activity on your site: someone browsing the frontend or working in the backend. Its request interval is 300 seconds by default. On a low-traffic site that means: without a visit nothing happens, and a task scheduled for the night only runs with the next visit.

This affects every task you created under Scheduled Tasks, such as backups, sending mail or cleanup work by extensions.

Joomla advises using only one of the two triggers. According to the manual, otherwise both run tasks, and the Lazy Scheduler may still slow down visits now and then. With Web Cron and a call from outside you need neither a cron manager at your host nor access to the command line.

URL to call
https://ihre-domain.de/component/ajax/?plugin=RunSchedulerWebcron&group=system&format=json&hash=IHR-HASH
Recommended interval
every minute
Tested with
Joomla 4.1 bis 6.x
Sufficient Cronjob.de plan
Joomla recommends the one-minute interval, because each call starts one due task. That comes with Cronjob.de Plus. With only a few tasks the free plan in five-minute steps is enough, too.

Setup

Step by step

The AI does it faster

You do not have to transfer any of this by hand. Paste this guide – or the one for your own system – into the assistant, and Cronjob.de fills in address, method, schedule and headers. Where something is unclear it asks instead of guessing. At the end you see what was entered and create the job with one click.

Included in the free plan at no extra cost. You will find it after signing in under "Cronjobs" → "Create with AI".

  1. Switch on Web Cron

    In the administrator area go to System › Scheduled Tasks and open Options at the top. In the "Web Cron" section switch Web Cron on and save. Joomla generates the protection key when you save. The finished address then appears in the Webcron Link (Base) field, with a button to copy it.

    https://your-domain.com/component/ajax/?plugin=RunSchedulerWebcron&group=system&format=json&hash=YOUR-HASH
  2. Switch off the lazy scheduler

    In the "Lazy Scheduler" section of the same options set the Lazy Scheduler switch to disabled and save. Joomla itself states that it is recommended to disable the Lazy Scheduler when triggering with a cron.

  3. Open the address in a browser once

    Call the copied address yourself once. A short JSON response is correct. Error 403 means the key is wrong or Web Cron was not saved. Depending on your search engine friendly URL setting, the address may also start with index.php?option=com_ajax. Use it exactly as Joomla shows it.

  4. Create an account at Cronjob.de

    Registration takes a minute and is free. Five cronjobs stay free forever, the first 14 days run on the Unlimited plan, with the one-minute interval.

    Start for free 14 days of Unlimited included, no payment details

  5. Create a cronjob with that address

    Enter the full address including every parameter after the question mark. Choose every minute, by clicking or as a sentence for the AI assistant. The Joomla manual recommends this interval so that the task scheduler works to the minute.

    * * * * *

    You can enter this expression at Cronjob.de exactly as it is – the schedule field understands crontab notation. But you do not have to know it: simply click the schedule together instead.

  6. Switch on error notifications

    So that you notice when your site stops responding, enter an email address under Notifications. You will then be notified when a call fails. Failure notifications by email are included from the Plus plan, and free during the first 14 days.

What the five fields of an expression like */5 * * * * mean is explained in the crontab reference – with examples and the most common pitfalls. You can build the expression in the crontab generator. Whether you need an outside service at all is shown in the comparison of the three ways.

Verification

Is it actually running?

In the Cronjob.de call log you will see the first calls with status 200 within a few minutes. Inside Joomla the Scheduled Tasks list shows the last run and its result for each task.

FAQ

Common questions about Joomla

Which Joomla version has Web Cron?
Scheduled Tasks and Web Cron have existed since Joomla 4.1, and are also in Joomla 5 and 6. Joomla 3 did not have this scheduler; there the individual extensions handle it themselves.
Why should the Joomla web cron run every minute?
Because one call of the web cron address starts one due task, not all of them at once. If several tasks are due, they are picked up one after another on the following calls. With a call every minute the scheduler works to the minute, as the Joomla manual recommends.
Can I trigger a single task on purpose?
Yes. Append &id= plus the task's number from the task list to the address. That task then runs on every call, even if it is not due according to its own schedule. In that case your cronjob alone sets the interval.
Do I really have to switch off the lazy scheduler?
Joomla recommends it and so do we. According to the manual, otherwise both triggers run tasks, and the Lazy Scheduler may still slow down visits now and then.
Is the key in the address safe?
The key is what protects against outside calls; without it Joomla answers with error 403. Treat the address like a password. With "Reset Access Key" in the options you can generate a new one at any time, but then you have to update the address in the cronjob as well.
What if I do have a command line?
Then, according to the Joomla manual, you can also start the scheduler with php cli/joomla.php scheduler:run, with --all for all due tasks. For web space without a command line, Web Cron remains the documented way.
Is your server rejecting our calls? Error 403 almost always comes from a firewall, a security plugin or directory protection – not from your script. All our calls carry the fixed identifier Cronjob.de in the user agent. Ask your host for an exception for it; that is more reliable than allowing IP addresses, because ours can change. Addresses and details in the FAQ. Other errors such as 401, 404 or 500 are explained in the troubleshooting guide.

Create your cronjob now

Create an account, enter the address, click the schedule. Five cronjobs are free forever, the first 14 days run on the Unlimited plan.

Start for free See pricing

More guides

Official documentation of Joomla

The details about Joomla come from their own documentation, as of October 2026. Please check there whether anything has changed since. Joomla is a trademark of its respective owner. This guide comes from Cronjob.de and has no business relationship with that provider.

By Joscha Schultze, operator of Cronjob.de · Written with AI assistance, provider details checked against their official pages.