So what I think happened is for the days that reported 0, there was no activity at midnight which would trigger the job, and the next guest to view the site might have been 00:01 am when there would be 0 posts

"Server based trigger" can fix this but you need to add an entry in your cpanel or relevant panel's cron list