Last tested: May 27, 2020
Let's say an alert is being triggered and met in the Alert panel, but the alert email that was supposed at, for example, 10AM is instead being sent out at 10:50AM, so there is a 50 minute delay.
One likely reason for this is possibly a backed up alert or render queue. The rest of the instance is probably backed up with schedules/renders as well.
Right now the default is 10 threads per instance for schedules and 3 for alerts as you can see on this documentation.
You'll need to balance the resources and adjust as needed, so instead of scheduling the reports/ alerts at the same time, space them out evenly.