Ertori

Your Android apps from Google Play, without the Console tabs

Play Console is built around one app at a time, and its most useful numbers don't come through an API at all. Installs, store listing visitors, estimated sales and reviews live in monthly CSV files in a Cloud Storage bucket, and the reviews API forgets anything older than a week. For an indie with three Android apps, a quick check turns into three slow dashboards.

Ertori reads the bucket with one service account that has read-only Play permissions. Every app becomes a row with installs, listing visitors and estimated sales, and when the same app is also on the App Store, both platforms sit in one project with combined totals.

Connect Google Play free

What you get

  • Downloads: daily user installs from the Installs report.
  • Views: store listing visitors from the Store performance report, comparable with App Store product page views.
  • Revenue: the charged amount from the Estimated sales report, converted from each buyer's currency to USD.
  • Rating: average stars of reviews received, and every written review in the shared feed with app version and language.
  • Report files, reviews included, read every 6 hours. With the optional Reply to reviews permission, new reviews also arrive hourly.
  • History back to the app's launch in Google's monthly files; the first sync pulls every review and 90 days of numbers.
In ErtoriFrom Google Play
DownloadsInstalls report: daily user installs
ViewsStore performance report: store listing visitors
RevenueEstimated sales report: charged amount, converted to USD
RatingReviews report: average stars of written reviews received

Good to know

Reviews arrive a few days late without Reply to reviews

Google's reviews API returns only the past week, and only to accounts with the Reply to reviews permission, which also allows replying. Ertori doesn't need it: reviews come from the monthly review files in the reports bucket, which hold the full history but land a few days late. Grant the permission anyway and new reviews also arrive hourly. Ertori never replies.

Numbers land 3 to 7 days late

Google captures stats daily but posts them into monthly CSV files 3 to 7 days later, and rewrites the current month's file as days are added. Expect the newest Android days to fill in after the App Store ones.

New Google Cloud organizations block service account keys

If your Google Cloud organization was created on or after May 3, 2024, creating JSON keys is blocked by default by the iam.disableServiceAccountKeyCreation policy. An Organization Policy Administrator can exempt a single project. Personal Gmail accounts without a Cloud organization aren't affected.

Questions

Why a service account and not Sign in with Google?
Google Play's API has no read-only sign-in scope; the consent screen would ask to view and manage your developer account. A service account invited with View app information and download bulk reports (read-only) and View financial data can read reports but can't publish or change anything.
I invited the service account and get permission errors. What now?
Wait. Google can take up to a day to apply new Play Console permissions, and errors in that window usually mean the invite hasn't propagated yet. Old tutorials that send you to a Setup, API access page are out of date: no project linking is needed.
My iOS and Android apps share a name. Will they merge?
Usually on their own. Apps with matching bundle IDs, or names that match once store suffixes are stripped, are grouped into one project, and you can move an app if the guess is wrong. Two Android apps are never merged with each other.
Can I use the estimated sales figure for accounting?
No. Google calls it estimated: it is per order in each buyer's currency, before the monthly earnings report settles fees and exchange rates. Ertori converts it to USD so you can follow the trend.

Related