How to Configure WordPress Cron Jobs on Hostinger (Complete Setup Guide)
WordPress uses a built-in scheduling system called WP-Cron to handle automated tasks such as publishing scheduled posts, checking updates, sending emails, running backups, and executing plugin tasks.
By default, WordPress does not use a real server cron job. Instead, it triggers wp-cron.php whenever someone visits your website. On low-traffic websites, this can cause scheduled tasks to run late. On high-traffic websites, it can create unnecessary server load.
A better solution is to disable WordPress’s default cron and configure a real Hostinger Cron Job.
This guide explains the complete setup.
Step 1: Disable WordPress Built-in WP-Cron
First, disable the default WordPress cron system.
Open:
Hostinger hPanel → Files → File Manager
Go to your WordPress installation folder:
public_html
Find and edit:
wp-config.php
Add this line before:
/* That's all, stop editing! Happy publishing. */
Add:
define('DISABLE_WP_CRON', true);
Your file should look like:
define('DISABLE_WP_CRON', true);
/* That's all, stop editing! Happy publishing. */
Save the file.
Step 2: Create a Cron Job in Hostinger
Go to:
Hostinger hPanel
→ Advanced
→ Cron Jobs
Click:
Create Cron Job
Step 3: Add the Cron Command
In:
Command to Run
add:
wget -q -O - https://yourdomain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Replace:
yourdomain.com
with your actual website address.
Example:
wget -q -O - https://suitepress.org/wp-cron.php?doing_wp_cron >/dev/null 2>&1
This command silently runs WordPress scheduled tasks.
Step 4: Configure Cron Schedule
Hostinger provides common settings and custom scheduling.
For most WordPress websites, use:
*/5 * * * *
Meaning:
| Field | Value |
|---|---|
| Minute | Every 5 minutes |
| Hour | Every hour |
| Day | Every day |
| Month | Every month |
| Weekday | Every day |
If Hostinger shows individual dropdowns:
Set:
Minute
Every 5 minutes (*/5)
Hour
Every hour (*)
Day
Every day (*)
Month
Every month (*)
Weekday
Every day (*)
Then save.
Alternative: Run Every Minute
For websites using:
- WooCommerce
- Membership systems
- Email automation
- Booking plugins
you can use:
* * * * *
This runs every minute.
Command:
wget -q -O - https://yourdomain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Step 5: Verify the Cron Job
Open:
https://yourdomain.com/wp-cron.php?doing_wp_cron
Example:
https://suitepress.org/wp-cron.php?doing_wp_cron
A blank page is normal.
wp-cron.php usually does not display a success message.
Step 6: Check Cron Execution in Hostinger
Go to:
Hostinger hPanel
→ Advanced
→ Cron Jobs
You should see something like:
*/5 * * * *
wget -q -O - https://suitepress.org/wp-cron.php?doing_wp_cron >/dev/null 2>&1
or:
* * * * *
wget -q -O - https://suitepress.org/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Step 7: Test Output (Optional)
Because the command hides output:
>/dev/null 2>&1
Hostinger may show an empty output.
For testing, temporarily change the command:
wget -O - https://yourdomain.com/wp-cron.php?doing_wp_cron
After testing, restore:
wget -q -O - https://yourdomain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Step 8: Check WordPress Cron Events
Install:
WP Crontrol
Then go to:
WordPress Dashboard
→ Tools
→ Cron Events
You can see:
- Scheduled tasks
- Next execution time
- Failed cron events
Recommended Cron Frequency
| Website Type | Recommended Schedule |
|---|---|
| Personal blog | Every 15 minutes |
| Business website | Every 5 minutes |
| WooCommerce store | Every 1–5 minutes |
| Membership website | Every 1 minute |
| News website | Every 1–5 minutes |
Common Problems
Cron runs but tasks are still delayed
Check:
define('DISABLE_WP_CRON', true);
exists in:
wp-config.php
Blank page when opening wp-cron.php
This is normal.
A blank response usually means:
- WordPress cron file loaded
- No visible output was generated
Cron runs too often
Check your schedule.
Example:
* * * * *
runs every minute.
Example:
*/5 * * * *
runs every 5 minutes.
Final Recommended Hostinger WordPress Cron Setup
wp-config.php
define('DISABLE_WP_CRON', true);
Cron Command
wget -q -O - https://yourdomain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Cron Schedule
*/5 * * * *
This setup gives WordPress reliable scheduled tasks with less server overhead and better performance.