Is there a way to get average queuing time?

Hello, everyone.

I need to find out if adding more machines for self-hosted runners is going to appreciatively decrease the queuing time for our PRs. Is there a way to get the average queue time so, I can use this as a metric?


@daniocean ,

Currently, we have no easy and available methods to calculate the the queue time of a workflow run.

Typically, the queue time of workflow run includes the following operations:

  1. Verify the workflow YAML file.
  2. Search the suitable runner, according to the runner labels set for “runs-on” on the job.
  3. If all the suitable runners are in use, wait for a runner to be idle.

So, in theory, when you have multiple workflow runs are triggered in the same time, it will decrease the queue time of the runs if you have added more runners. Every job in the runs needs a runner, so more runners also will decrease the queue time of the jobs, especially the jobs run in parallel.
Of course, it does not mean you can add runners as many as you want. You also should understand the usage limits on GitHub Actions.