I just use Endomondo for that.
When you follow a route it will give you Ahead/Behind time based on the best time for a route (which will always be yours if the route is private).
The audio coach can then shout this info out every 1km (or definable period).
It’s not perfect though – I think it calculates your Ahead/Behind based on your current average speed (e.g. “you’re going at 20km/h so you’ll finish the route in 5 minutes time which is X ahead”) rather than a more sensible approach of looking at your split times (e.g. “after 45 mins you are now 18km into the route, on your best time it took you 43 mins to reach 18km so you are 2 mins behind”)