Case 1: A user might have set their browser to automatically allow Geo Location to be sent to websites making a request to obtain it.
Case 2: A user might have set it to "ask for permission" i.e. when a site tries to get the user's geo data he gets a pop-up.
In Case 1: A user would never know the website recorded his geo-location, while in Case 2: A user would always know when his geolocation is being requested.
So a Case 1 user might benefit from automatic, but if you choose to use "initiate it themselves" feature then it's an undesired interaction for Case 1 users and they might not notice the UI that triggers it.
Case 2 users would always look for a button to initiate it themselves
Which brings us to:
We're debating automatically asking v they initiate it themselves
We did some testing around this, particularly user's reaction when a web site asked for their geo-data and when a website took their geo data without a prompt (because we changed their browser config) and then showed their location on a map with a push-pin.
The theme was "Meet a stranger on the internet".
This is what we found:
27/30 participants allowed the site to use their location when a user interaction triggered the prompt.
20/30 participants allowed the site to use their location data when it was automatically prompted.
7/30 participants did not close the browser when we tricked them into obtaining their geo-location.
Popular sites like Facebook, Google, Foursquare etc. obtain geolocation of the user only when the user clicks a button / triggers an event. Some of these sites make an extra prompt like take the user's consent to allow this site to access their geolocation data in the next visit and thereafter.
The answer is: Let the user initiate it. Automatic doesn't score as high on trust scales as user initiated does.