When looking at a single day, the summary numbers on the Dashboard location analytics page are hourly averages (over the 24 hour day), otherwise they are daily averages.
The discrepancy you see may simply be due to that.
For a single day, if you had 24 devices connecting, each for an hour, I'd assume the hourly average would be one.
Though I'd guess time connected is also part of the calculation, so if the 24 devices each connected for a total of two hours, the hourly average would be two.
Comparing what is seen in Dashboard to what is calculated using API data is not always straightforward. To get the same answer you would need to replicate how the Dashboard calculation is being made (which is not something that is documented).