Inconsistent times all over the place

Not sure if this is just me, or whether it’s a bug or a feature…

When I finish an event, I notice that there are huge inconsistencies in the times shown in various places in Zwift. Sadly, I don’t have a screenshot to share.

On the main timer (top of screen), it will show one time. On the results screen, it will show a different time.

On my Garmin - when I click ‘start’ as soon as the event begins - I get a totally different time.

The times seem wildly inconsistent. For example, when I cross the line of an event, my official ‘result’ on screen will often by 20 seconds MORE than the timer at the top of the screen. The timer at the top of the screen begins counting as soon as the event starting gun goes off, so I don’t get how they can be so far out of sync. How can I have taken 50 minutes to complete an event when the timer at the top of the screen shows only 49 minutes have elapsed since the start?

When I do a workout, let’s say the workout is 50 minutes, often when the workout finishes it’s 49 minutes 40 seconds. Again, why is there a difference?

Clearly, this is not a big issue, but it’s just confusing as to why it exists. Surely Zwift just takes the device clock and so how can it be out of sync all the time? If you do a 1 hour workout, it would be nice for it to be 1 hour rather than 59 minutes 45 seconds.