I only use a smart phone app on my commute, it is a Moto G. And it seems accurate. The only time I get inaccurate readings are spikes in speed on downhills. But lately it has been seemingly accurate. All distances and times and speeds are as expected.
I only check everything at the end of the ride, it is stashed in my bag otherwise. I am not sure if it does real time speed and what not.