Typically when it comes time for me to upgrade something, I dive into a military like procurement process trying to define which features I need and finding the best deal. In the end I went with the Garmin Edge 500, but in order to get a heart rate strap, I had to bundle with some speed and cadence sensors I never used and eventually sold for $20. I am not at all interested in attaching speed and cadence sensors to my bike: the GPS does a good enough job of measuring distance and speed and my Stages power meter measures cadence.
The Garmin Edge 500 ticked all of the boxes for me. GPS, compatibility with ANT+ powermeters and heart rate, and a barometric altimeter for accurate elevation profiles all at around $250. I'm pretty sure it was the price of this device that put it on the bikes of many cyclists and allowed Strava to become what it is.
Unfortunately, Garmin discontinued the 500, and instead offers the very basic Edge 20 and 25 (no power meter compatibility or barometric altimeter) and the Edge 520, which like the Suunto watches costs almost as much as my personal computer.
I am told that Bluetooth LE will be replacing ANT+ for power meter and heart rate compatibility. While my Stages power meter is compatible with both I had an existing ANT+ heart rate strap. I would have to factor in a heart rate strap purchase (and useless speed/cadence sensor bundle) if I wanted the Polar M450, which I believe is another good replacement of the Edge 500.
The new kid on the block is Lezyne. They offer GPS cycling computers in 2 sizes, and either with or without sensor compatibility. I decided that the smaller Micro GPS offered all of the features I wanted from the Edge 500 with some nice additional features all for $190:
-Much improved GPS accuracy. Less waiting to acquire satellites. For better or for worse, this ads more honesty to your Strava!
-Connects with my phone via Bluetooth to let me know if I am receiving text messages or calls, navigate, and even upload rides. Strava live segments for those with a premium account.
-Bluetooth LE and ANT+ compatibility so I can use my existing HR strap and power meter and don't have to buy a bundle with speed/cadence sensors I don't want. Maximum compatibility with past, present, and future sensors.
-Excellent customer support, I believe that they have fixed the issue recording indoor trainer rides without a speed sensor.
-"breadcrumb" map shows a trace of your ride on the screen. Pretty neat.
With a few limitations:
-Lezyne app does not provide nearly the same data metrics and functionality as Garmin Connect. I have been using a combination of Strava, basic Training Peaks and Golden Cheetah for analyzing rides.
-I haven't gotten auto sync to work with Strava.
-Smaller size makes it harder to read.
-uses its own proprietary mounts.