personally, I use RaceChrono app on my mobile, and I'm very happy of the result (I tried many other app for that purpose in the past, and this is really the most efficient for my point of view)
+1 on the RaceChrono app. I have the NEXT GPS Lap timer. It does a great job recognizing tracks and keeping time, but knowing that there are cheap phone apps that are way better, I kinda feel like I wasted my money.