I found the solution, attaching the full guide.
Nextcloud News: Feed auto-refresh not working even though Nextcloud cron is running
I ran into an issue with the Nextcloud News app where automatic feed updates were not working, even though the main Nextcloud cron system was working correctly.
Environment
- Nextcloud AIO
- Nextcloud version:
33.0.3
- News app version:
28.3.0
- Background jobs mode:
Cron
Symptoms
In the Nextcloud administration settings, the main background job status looked fine. The system cron was running normally, and Nextcloud reported that the last background job had run recently.
However, in the News app admin settings, I saw warnings like:
Logo purge has never been run.
No job execution data available. The cron job may not be running properly.
The News app was not automatically refreshing feeds.
Running the News updater check showed this:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ news:updater:job
Output:
Checking update Status
Last Execution was 1970-01-01 00:00:00 UTC
Checking the elapsed time also showed that the News cron job was considered broken:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ news:updater:job --check-elapsed
Output:
Checking update Status
Last Execution was 1970-01-01 00:00:00 UTC
6 hours, 10 minutes, 33 seconds ago
Something is wrong with the news cronjob, execution delay exceeded the configured interval.
So the main Nextcloud cron was working, but the News app itself had no valid job execution data.
First attempted fix: reset the News updater job
I tried to reset the News updater job:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ news:updater:job --reset
But this failed with the following error:
Checking update Status
Last Execution was 1970-01-01 00:00:00 UTC
Attempting to reset the job.
An unhandled exception has been thrown:
TypeError: OC\BackgroundJob\JobList::resetBackgroundJob(): Argument #1 ($job) must be of type OCP\BackgroundJob\IJob, null given
This was the important clue.
The News updater reset failed because the News app was trying to reset its background job, but the job object was null. In other words, the News updater job did not exist in Nextcloud’s background job list.
Confirming the cause
I checked whether any News-related background job was registered:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ background-job:list | grep -i news
There was no output.
That confirmed the actual problem:
The Nextcloud News app did not have its OCA\News\Cron\UpdaterJob registered in the background job list.
So this was not a broken system cron issue. The global Nextcloud cron was working, but the News app’s own background job was missing.
Solution
The fix was to disable and re-enable the News app.
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ app:disable news
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ app:enable news
Output:
news 28.3.0 disabled
news 28.3.0 enabled
Then I checked the background jobs again:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ background-job:list | grep -i news
This time the News updater job appeared:
| 84703545566900224 | OCA\News\Cron\UpdaterJob | 2026-05-17T06:13:01+00:00 | null |
After that, I manually triggered the Nextcloud cron once:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php -f /var/www/html/cron.php
Then I checked the News updater status again:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ news:updater:job
Output:
Checking update Status
Last Execution was 2026-05-17 06:13:01 UTC
At this point, the News updater job was working again.
Final working command sequence
For Nextcloud AIO, the full fix was:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ background-job:list | grep -i news
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ app:disable news
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ app:enable news
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ background-job:list | grep -i news
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php -f /var/www/html/cron.php
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ news:updater:job
Expected result
Before the fix:
Last Execution was 1970-01-01 00:00:00 UTC
After the fix:
Last Execution was 2026-05-17 06:13:01 UTC
Also, this command should show the News updater job:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ background-job:list | grep -i news
Expected output should include:
OCA\News\Cron\UpdaterJob
Conclusion
If the main Nextcloud cron is working but Nextcloud News still says:
No job execution data available. The cron job may not be running properly.
do not assume that the system cron itself is broken.
In my case, the real issue was that the News app’s own background job was missing from Nextcloud’s job list.
Disabling and re-enabling the News app re-registered the missing job:
OCA\News\Cron\UpdaterJob
After manually running cron.php, News started reporting a valid last execution time again, and automatic feed updates started working.