Docs

Android 17's Location Button: What It Does to Your Data

Android 17's one-time location button replaces persistent access for many features — split session-based grants or misread your location coverage.

Engagement

Android 17 ships a new UI element called the location button: a Jetpack-provided control that grants precise location for a single session — “until you close the app” — with no runtime permission dialog and no persistent grant. For any feature that only needs a one-off fix, like finding nearby places or tagging a photo, apps can now skip the full ACCESS_FINE_LOCATION request entirely. Google Play policy goes further: apps targeting Android 17 (API level 37) whose location features are all session-based are required to use the button rather than request the standing permission.

The problem for tracking is that this quietly changes what “has location access” means for a meaningful share of users. A cohort that grants the location button for a single session looks, in most event logs, identical to a cohort that granted ongoing ACCESS_FINE_LOCATION — until the second session, when the button-granted cohort has no location data and the persistent-grant cohort still does. Funnels, personalization logic, and location-based segments that don’t distinguish grant type will silently lose coverage on returning sessions and misattribute that gap to opt-out or churn rather than to a UX pattern the app itself chose.

Data Points to Track

  • Grant type per location event (session-based location button vs. persistent ACCESS_FINE_LOCATION vs. approximate-only), logged on every location-dependent event, not inferred after the fact
  • Session boundary at which a session-based grant expires, so a feature relying on location later in the same session can be distinguished from one that silently has none
  • Feature-to-grant-type mapping, tracking which in-app features were built against the location button versus the standing permission, since this is a product decision as much as a data one
  • Re-grant frequency for session-based users, showing how often a user re-triggers the location button across sessions — a proxy for whether one-time access is friction or is working as intended
  • Location-dependent feature usage split by grant type, so a drop in a location feature’s engagement can be checked against the possibility that more users are now on session-based grants rather than an actual feature regression

Setup Steps

  1. Tag every location read with its grant type at the point of capture, not derived later from permission state, since permission state can change between the read and any downstream analysis.
  2. Audit which features currently request ACCESS_FINE_LOCATION and identify which are genuinely session-based use cases that should migrate to the Jetpack location button ahead of the Play Store enforcement window.
  3. Update location-based segments and funnels to either combine both grant types explicitly or report them separately — don’t let a segment default to only picking up persistent-grant users.
  4. Add a re-grant event fired specifically when a user triggers the location button in a new session, distinct from the generic location-read event, so grant frequency is queryable on its own.
  5. Backfill a grant-type field on your existing location-event schema for the current reporting period so pre- and post-migration data stay comparable rather than creating a silent break in trend lines.

Actionable Insights

If a location-dependent feature’s engagement holds steady while the persistent-grant share among its users falls, the location button is doing its job — users are getting the functionality they want without an ongoing grant, and that’s a genuine UX win worth keeping. If instead the feature’s usage drops as session-based grants rise, that’s a sign the one-time flow is adding enough friction (a repeated prompt every session) to suppress usage that persistent access previously supported without cost — worth testing whether the feature actually needs session-based access or was migrated to comply with the Play Store’s default. Watching re-grant frequency over several weeks also flags features that are, in practice, being used every session anyway — a strong signal the feature belongs on a persistent grant with a clear value exchange, not a repeated one-time prompt.

Expert help

Need help tracking this in your app?

Our team sets up analytics pipelines for mobile and web teams every day. Talk to us and get your first events flowing in under an hour.

Talk to an expert