Frequently Asked Questions (FAQ)
Answers to the questions we get asked most. Every question can be linked to individually.
First questions
How does Cronjob.de work?
Cronjob.de automatically accesses the web pages you specify on your server at the times you set. When the page is accessed, it triggers a specific function on your web server. This could be, for example, automatically starting a newsletter dispatch, optimizing your database, or sending you an email. You have complete freedom and can execute any functions you want.
How many cronjobs are free?
The free plan lets you run up to 5 cronjobs in 5-minute steps with 45 seconds runtime per call. If you need more: Plus offers unlimited cronjobs, minute-precise execution and a call log from 1.49 EUR per month; Unlimited adds runtime statistics, error notifications and server monitoring from 3.99 EUR per month.
What happens after the 14-day trial?
Every new account starts with 14 days of Unlimited: minute-precise cronjobs, call log with output, runtime statistics and server monitoring, no payment details. Four days before the end we send a reminder by email.
If you do nothing, the account automatically switches to the free plan afterwards: up to 5 cronjobs, 5-minute steps, no call log. If you have at most 5 cronjobs on the 5-minute grid, they simply keep running. If you have more, we pause all of them and you choose in the cronjob overview which 5 should keep running. Minute-precise schedules are paused because they cannot run on the free plan; the schedule itself stays unchanged.
Nothing is deleted. If you book a plan later, we switch the paused cronjobs back on automatically.
How many cronjobs can I manage with Cronjob.de?
You can create unlimited cronjobs that can be started at intervals of up to 1 minute. In the free plan, up to 5 cronjobs are possible, started in 5-minute steps.
Can using Cronjob.de "harm" my server?
No! Cronjob.de accesses your URL as if a normal user were browsing your site. If anything goes wrong, it's not because of Cronjob.de.
What powers your servers?
Our servers are hosted at Hetzner Online GmbH in Nuremberg, Falkenstein and Helsinki. According to the operator, their data centres run entirely on electricity from renewable sources – hydropower in Germany, hydropower and wind in Finland.
We do not run the data centres ourselves, so we pass this on exactly as the operator states it.
Schedules
At what intervals can I schedule my cronjobs?
You can schedule your cronjobs to run as frequently as once per minute and as infrequently as once per year.
There is no limit to the number of calls. So you could have one or more cronjobs running every minute.
Is Cronjob.de precise to the second when calling my page?
Yes. Cronjob.de calls your cronjobs punctually at the start of the scheduled minute, usually within the first few seconds – never earlier.
This also applies at peak times such as the top of the hour or midnight, when a particularly large number of cronjobs are due at once. We call all due addresses in parallel instead of working through them one after another, and our servers have plenty of capacity for it.
How can I execute a cronjob on the last day of the month?
At cronjob.de, you cannot set a cronjob to run only on the last day of the month. The easiest way is to select days 28-31 for execution and then include the following PHP code in the script that is called:
if(date("d")!=date('t')) {
exit("Today is not the last day of this month");
}
This script snippet checks if it's the last day of the current month when called, and if not, it aborts.
Alternatively, you can create 12 cronjobs and always select the month with its corresponding last day. However, here you have to remember to manually adjust February every 4 years.
How long are the scripts executed?
In the free plan, each cronjob is executed for a maximum of 45 seconds. In the paid plans, the cronjob is executed for up to 60 seconds. However, if your script is not finished by then, you can let it continue running in PHP. To do this, insert the following at the beginning of your PHP script:
set_time_limit(0);
ignore_user_abort(true);
This is similar in other programming languages. Please check the respective documentation.
Setting up
How long does it take for a cronjob to be activated?
Your cronjobs are activated immediately. Creating a cronjob takes only a few seconds.
Do I have to verify my domain?
No, usually not anymore. New cronjobs in the free plan run immediately. Only if there are signs of abuse, for example the same server being called by a conspicuous number of accounts or a complaint, we ask once for a proof that you control the server. Until then the affected cronjobs are paused.
The proof works in one of three ways: a file cronjob_
The verification of the cronjob isn't working
There can be several solutions for this:
- If you entered the cronjob without "www." but your web server automatically redirects to a "www." address, then enter your cronjob with "www." as well. Then Cronjob will look for verification in the right place.
- Sometimes (especially with Swiss providers) you need to do the following for Cronjob.de to access your server:
Create a file named ".htaccess" (without quotes) with the content "SecFilterEngine Off" (without quotes) and place it in your web server's root directory. If a file named .htaccess already exists, simply add the corresponding text to the file.
My domain contains special characters. Does Cronjob.de work with it?
Yes. Simply enter the address with the special characters, for example müller-gmbh.de/cron.php. When calling it, we convert the domain name automatically into its technical form (punycode, xn--…), which the internet needs for lookups.
In your account the address stays exactly as you entered it. You can of course also enter the converted form yourself – both work.
Note: only the domain name is converted. Special characters in the path or in parameters are encoded like in any browser and passed through unchanged.
How do I call pages that are password-protected (for example via .htaccess)?
Enter username and password for the cronjob under “Credentials” – the two fields are right below the address. Cronjob.de then signs in via HTTP authentication, the way an .htaccess protection expects it (Basic or Digest).
The credentials no longer belong in the address itself. If an address like http://user:password@www.yoursite.com/page.php is entered anyway, we move username and password into the two fields automatically when saving. That way they are no longer visible in the address.
Is there an API for Cronjob.de?
There is no classic REST API. We speak MCP (Model Context Protocol) instead: you connect Claude, ChatGPT, Cursor or your own MCP client directly to your account and have it list, create, change, move, switch on and off or delete cronjobs – plus read the call log and find failed calls.
The advantage over a REST API: you manage no keys. Sign-in uses OAuth 2.1 with PKCE, you confirm once in the browser. For servers without a browser there is a fixed token as well.
Details: cronjob.de/ki-verbinden
Can I send cookies, custom headers or POST requests?
Yes, in all plans. Open the “Advanced” tab of the cronjob:
- Cookies: under “Custom headers”, add a line named Cookie with the value name=value. Separate several cookies with a semicolon: name=value; name2=value2
- Custom headers: up to 20, for example an API key in Authorization or X-Api-Key
- Request method: GET, POST, PUT, PATCH, DELETE or HEAD. With POST, PUT, PATCH and DELETE you can send a request body with a matching content type, for example JSON.
User name and password for .htaccess protection do not belong in a header but in the “Credentials” fields.
Do HTTPS addresses work with a self-signed or expired certificate?
Yes. Cronjob.de calls HTTPS addresses even if the certificate is self-signed, expired or issued for a different name. The call does not fail because of it, which is handy for test systems and internal servers, for example.
So that an expiring certificate of your website still does not go unnoticed, Cronjob.de warns you in good time on the Unlimited plan, see “Does Cronjob.de warn me when my SSL certificate expires?”.
When something does not run
My script isn't executed via Cronjob, but everything works when I enter it in the browser.
Cronjob.de stops the page request after 45 seconds in the free plan and after 60 seconds in the paid plans. If your script has not finished running by then, it needs to be set to continue running even after Cronjob.de stops loading. It is also common that a page has password protection, but you do not consider this because the browser saves the password and you rarely have to enter it yourself.
An overview of the most common causes – from firewalls and security checks such as Cloudflare to error codes such as 403, 404 or 500 – is in our troubleshooting guide.
Can outages be reported to Slack, Discord or Microsoft Teams?
Yes, in the Unlimited plan. Paste your channel's webhook address into the monitor and send a test message right away. You get one message when the outage starts and one when it is over – not every minute. In addition or instead, the alert goes out by email.
Does Cronjob.de access pages like a normal browser?
Cronjob.de accesses your pages like a browser, but with the following limitations:
- HTML objects are not loaded (such as: Flash, Objects, Iframes, Images, etc)
- Javascript is not executed
- Cookies set by your server are not kept. You can send your own cookies, though – see “Can I send cookies, custom headers or POST requests?”
- Meta refreshes are not followed
How quickly am I notified about an outage?
Usually three to five minutes after it starts. We only report once two checks in a row have failed and a second, independent server has confirmed the outage. That prevents false alarms from brief blips or problems on our side. If you need alerts to the second, a specialised service is the better choice – our strength is what gets checked.
Why is my cronjob switched off?
Cronjob.de only switches a cronjob off for a few fixed reasons. Nothing is deleted: schedule, settings and log are kept.
- Expiry date reached: the cronjob has an expiry date. Set a new date or remove the expiry to switch it back on.
- Plan ended: after the trial or a subscription, the free plan applies with up to 5 cronjobs. If you had more, we pause all of them and you choose in the cronjob overview which 5 keep running. If you book a plan again, all of them come back automatically.
- Schedule not executable on your plan: minute-precise schedules run from the Plus plan. On the free plan they are paused; the schedule itself stays unchanged.
- No confirmation: free accounts confirm every 3 months with one click that they still need their cronjobs. Without confirmation we pause the cronjobs after 21 days.
- Maintenance mode: you paused cronjobs for server maintenance. When the maintenance ends, we start exactly these cronjobs again.
The cronjob overview shows which reason applies to each cronjob. A failed call, on the other hand, switches nothing off: the cronjob keeps running, and we notify you if you wish.
From which IP addresses do Cronjob.de's calls come?
Currently(!) we use the following IP addresses:
94.130.182.11
94.130.186.237
159.69.100.137
88.99.37.158
95.216.197.33
116.203.93.182
195.201.42.154
65.21.158.228
2a01:4f8:1c0c:4205::1
2a01:4f8:1c0c:46ef::1
2a01:4f9:c010:34ef::1
2a01:4f8:1c17:52dd::1
2a01:4f8:c2c:81f7::1
2a01:4f8:1c1b:971d::1
2a01:4f9:c012:bdb1::1
Important: New servers may be added or replace other servers at irregular intervals and without notice! Therefore, we advise against IP restrictions!
All servers currently used by us are located exclusively in the European Union or directly in Germany.
Tip: You can always retrieve the current list of our IP addresses at IP list as a text file (ips.txt).
Better than an IP list: the user agent. Every call we make carries the fixed identifier Cronjob.de in the user agent – scheduled calls just like the Run now button. Unlike IP addresses, this identifier does not change when we swap servers.
If your host or firewall rejects our calls (usually error 403), ask them for an exception for the user agent Cronjob.de. That is the most reliable way to let us through. If only an IP-based rule is possible, give them the addresses above – and please re-check this list from time to time.
Setting up
How do I set up monitoring?
Enter the address and click “Set up checks with AI”. The AI fetches the page once and suggests how to tell that it works – “Add to cart” on a shop, for example. We verify every suggestion on your page first, and only what you tick is used. After that we just ask how you want to be notified.
When something does not run
I see calls from Cronjob.de in my server logs, but I have no account
Then someone else has created a cronjob with your address at Cronjob.de, for example a former service provider, a colleague or the vendor of a plugin.
Write to us via the contact form and tell us the called address as it appears in your logs. We will look into it and stop the cronjob if you do not want the calls.
Until then you can recognise our calls by the fixed identifier Cronjob.de in the user agent and block them on your server.
Are there statistics about the runtime of my cronjobs?
Yes. In the Unlimited plan Cronjob.de measures for every call how long your script takes to respond and how large the output is. In the call log of a cronjob you see both as a chart for the last 200 runs, with failed runs marked in red. This lets you spot, for example, a script that is getting slower over time or one that suddenly stops returning data.
The call log itself contains the last 20 runs with date, time, duration, output size, error status and up to 5,000 characters of your script's output. A call may take up to 60 seconds and return up to 1 MB.
From the Plus plan there is also the history of the last 30 days, in Unlimited of the last 90 days: the number of runs and errors per day, plus every error period with a plain explanation of what went wrong.
Does Cronjob.de warn me when my SSL certificate expires?
Yes, on the Unlimited plan. Every time we call your cronjob we see how long the certificate of that address is still valid. If you want, we get in touch in good time before it expires, by email – and again shortly before – to a different address than the cronjob alerts if you prefer.
You switch it on under "Notifications" in your account; it is off by default. The same page shows the remaining validity and the issuer of every certificate behind your cronjob addresses.
Worth knowing: we only check the expiry date, not the validity of the certificate chain. A cronjob is never aborted just because a certificate is self-signed or expired – it keeps running, you are only told.
Can Cronjob.de report errors via webhook?
Yes, on the Unlimited plan. In addition to the email, we send the same message as JSON via POST to an address of your choice – when a cronjob fails and again when it works again. The same settings apply as for the email, including bundling of several failures.
You can enter the address under “Notifications” in your account, with a button to send a test message. The address must start with . Every message is signed (header X-Cronjob-Signature, HMAC-SHA256) so your script can verify that it really comes from us.
This lets you pass messages on to your own systems, for example to Pushover, Telegram or Slack. An example script is shown right on the settings page.
Does Cronjob.de notice when my website stops working properly?
Yes, in the Unlimited plan. Our server monitoring checks your page every minute – and not just whether it answers. We detect empty pages, known error pages despite “200 OK” (PHP errors, WordPress without a database or stuck in maintenance, SQL errors, directory listings, web server default pages) and, if you like, texts that must or must not appear on the page.
Account
Why do I have to confirm every 3 months that I still need my cronjobs?
Many users never delete cronjobs they created, even when they have long stopped serving a purpose. So that we do not keep calling servers nobody is watching anymore, we ask free accounts every 3 months for a short confirmation.
You receive an email with a link. One click is enough, no login required. Without confirmation we send one reminder after 14 days; after 21 days the cronjobs are paused, not deleted. You can reactivate them at any time with the link from the email or after logging in.
Every login counts as confirmation as well. The Plus and Unlimited plans do not have this check.