Google Play Console: listing and Android reviews

Connecting Play Console gives Appwin the Android side of ASO: store listing, reviews, ratings and history.

It is the counterpart of App Store Connect. The two are set independently: you can connect only one, and ASO then shows the single connected platform.

Access goes through a Google Cloud service account that you then invite into Play Console. Two consoles, then, and that is the source of just about every configuration error: the key is created on one side, the rights are granted on the other.


Play Console → Settings → API access.

If no Google Cloud project is linked, link it now. Without that link, the service account created in the next step can never be invited.

2. Create the service account

In the Google Cloud console:

  1. IAM & Admin → Service accounts → Create service account
  2. Name it ("appwin"), confirm
  3. On the created account: Keys → Add key → Create new key
  4. Format JSON → the file downloads

The JSON contains a private key. It cannot be downloaded again: if you lose it, you create a new one and delete the old one.

The file looks like:

json
{
  "type": "service_account",
  "project_id": "my-project-1a2b3",
  "private_key_id": "…",
  "private_key": "-----BEGIN PRIVATE KEY-----\n…\n-----END PRIVATE KEY-----\n",
  "client_email": "appwin@my-project-1a2b3.iam.gserviceaccount.com",
  "…": "…"
}

The two fields Appwin requires are client_email and private_key. A truncated or hand-copied JSON is rejected on save, with the missing field named.

3. Grant access to your app

Back in Play Console → Users and permissions → Invite user, with the service account's client_email address.

Restrict access to your app, with at least:

PermissionWhy
View app informationStore listing, ratings, statistics
Reply to reviewsReading reviews, and replying from Appwin

Stay with those two. A service account with publishing rights can push a release: that is not what we are asking of it.

Play Console permissions sometimes take several minutes to propagate. A 403 right after the invitation does not mean the configuration is wrong - try again a quarter of an hour later.

4. Collect the package name

com.yourstudio.yourapp: it is the applicationId from your build.gradle.

You find it in Play Console under the app name, or in your Play listing URL: play.google.com/store/apps/details?id=com.yourstudio.yourapp.

5. Enter them in Appwin

Settings → Projects → your app → Integrations → Google Play Console.

FieldValue
Package Namecom.yourstudio.yourapp
Service Account JSONThe entire contents of the file

The Import a file button reads the downloaded JSON and fills the field: more reliable than a copy and paste, which tends to leave one line break too many.


What it unlocks

DataWhere it appears
Android store listing (title, description, assets)ASO → Store listing
Google Play reviewsASO → Reviews and ratings
Rating historyASO → Reviews and ratings
Android listing auditASO → Performance

Android downloads and revenue do not go through here: on the revenue side, RevenueCat is the source of truth, across all platforms.


Troubleshooting

SymptomLikely cause
"Google Play incomplete"Missing package name or JSON - both are required
"Service Account JSON unreadable"File truncated on copy and paste: use the import
"Service Account JSON invalid"client_email or private_key missing from the file
403 right after the invitationRights not propagated yet on the Play Console side
Persistent 403The service account has no access to this app
Empty reviewsThe app has no reviews yet on the markets queried
Decryption errorDatabase restored from another environment: enter the key again

Next