Cronjob.de › Guides › Drupal
Setting up a Drupal cronjob: calling cron reliably from outside
Drupal ships a built-in scheduler called Automated Cron that piggybacks on page views. This guide shows how to switch it off and have the cron address triggered from outside at a fixed interval instead.
Why at all
Automated Cron depends on your visitors
At the end of a page request Drupal checks whether cron is due and then runs it within the same request. On a low-traffic site that means: if nobody drops by, cron does not run either. Tasks slip by hours.
This affects everything Drupal does in the background: the search index, clearing out old logs and caches, scheduled publishing, update checks, and with Drupal Commerce the processing of orders.
On a busy site it is the other way round. There the cron run hangs off a random visitor who then waits noticeably longer for their page. A fixed interval from outside solves both cases and makes the timing predictable.
- URL to call
https://ihre-domain.de/cron/IHR-SCHLUESSEL- Recommended interval
- every 5 minutes
- Tested with
- Drupal 8, 9, 10 und 11
- Sufficient Cronjob.de plan
- The free plan is enough. With Drupal Commerce the one-minute interval from Cronjob.de Plus makes sense.
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".
-
Find the cron address
Sign in as an administrator and go to
Configuration › System › Cron(path/admin/config/system/cron). The full cron address including its key is shown there, ready to copy. You can also find it underReports › Status reportin the cron maintenance tasks section.https://your-domain.com/cron/YOUR-KEY
-
Switch off Automated Cron
On the same page there is a setting called
Run cron every. Set it toNever. Cron then runs exclusively through the call from outside and no longer alongside page views. -
Open the address in a browser once
Call the copied address yourself once. It is correct if you end up back on the front page or get an empty response. An error page usually means the key is wrong or something is blocking access.
-
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.
Start for free 14 days of Unlimited included, no payment details
-
Create a cronjob with that address
Enter the address and select minutes 0, 5, 10 and so on in the schedule. If you know crontab syntax, type the expression directly instead.
*/5 * * * *
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.
-
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 Drupal, Reports › Status report shows when cron last ran. That timestamp should never be older than your interval.
FAQ
Common questions about Drupal
- Where do I get the cron key?
- Drupal generates it during installation. You will not find it as a setting but as part of the finished address under Configuration > System > Cron. Copy the address as a whole.
- Is the cron address a security risk?
- The key inside the address is the protection. Anyone who does not know it cannot trigger cron. Treat the address like a password and do not pass it around openly.
- Do I really have to switch off Automated Cron?
- No, but it makes sense. Otherwise both run in parallel and the timing stays unpredictable. Drupal does use a lock to stop two runs working at once, but the extra check on every page view remains.
- Is the free plan enough?
- For most sites yes. Every five minutes is enough for the search index, cleanup work and update checks. With Drupal Commerce we recommend the one-minute interval.
- My call ends with error 403.
- Then the key is wrong or has been regenerated. Fetch the address again from the cron settings page. Directory-level password protection or a rule in .htaccess can also cause this.
- What about Drush?
- On your own server "drush cron" is the usual way. This guide is for hosting without a command line. If you can use Drush, you do not need the call from outside.
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 pricingMore guides
- Webspace
- Windows
- WordPress
- Nextcloud
- Contao
- Joomla
- All-Inkl (KAS)
- STRATO
- IONOS
- Matomo
- Dolibarr
- phpList
- Firefly III
- Host Europe
- Gambio
- Shopware
- JTL-Shop
- Moodle
- WooCommerce
- Doofinder
- GitHub Actions
Official documentation of Drupal
The details about Drupal come from their own documentation, as of September 2026. Please check there whether anything has changed since. Drupal is a trademark of its respective owner. This guide comes from Cronjob.de and has no business relationship with that provider.