o
Why at all
Without a cron from outside, Contao attaches its scheduled tasks to a visitor page view. They only run when somebody drops by, and they cost that visitor waiting time.
This affects, among other things, cleaning up expired sessions and previews, delivery from form and newsletter extensions, and clearing caches.
The Contao documentation names one limitation explicitly: only the tasks designed for this route run through the address. The back end search index, for example, is still only built by a real cron on the command line. For everything else the call from outside is the documented route.
https://ihre-domain.de/_contao/cronSetup
Add the following setting to config/config.yaml. The _contao/cron address is unaffected and stays reachable.
contao:
cron:
web_listener: false In Contao 4 you find the setting under System, Settings, in the cron job settings section: disable the command scheduler there. Alternatively in the configuration.
contao:
localconfig:
disableCron: true Open https://your-domain.com/_contao/cron in a browser. An empty response with no content is correct, technically status 204.
Create the cronjob at Cronjob.de and select all minutes in the schedule.
* * * * *
Verification
The Cronjob.de call log shows status 204 and a very short runtime for every run. That is the correct response, Contao deliberately returns no content here. Whether the tasks actually get done is best seen in the extension you are running with it, for example the delivery log of a newsletter.
FAQ
Create an account, enter the address, click the schedule. Three cronjobs are free forever, the first 14 days run on the Unlimited plan.
Start for free See pricingMore guides
Official documentation of Contao
The details about Contao come from their own documentation, as of September 2026. Please check there whether anything has changed since.