I prefer running without my phone so I use a GPS watch instead - the Garmin Forerunner 10. This device is not equipped with bluetooth, so I upload my activity to Garmin Connect through Garmin Express then sync it across platforms with tapiriik. Set up as follows:
- Install Garmin Express, connect and add device: https://connect.garmin.com/en-US/start/forerunner/express
- In Garmin Express, select "view your activities on Garmin Connect" which will sync activity
- Hook up Garmin Connect to tapiriik which will provide the activity syncing across services
- Hook up any other services to sync to via tapiriik (I sync to Strava and Runkeeper)
- Activity will need to be synchronized manually via tapiriik (by selecting the "synchronize now" button) unless you pay for automatic synchronization (a trivial $2/year to cover costs, more for added support)
The major downside to this setup is that activity can only be synced to Garmin Connect (and from there across other platforms) when my watch is plugged into the computer. But hey it's sturdy, reliable, and distraction free so I'm okay with that.