Google Play Console

Get Store Listing Acquistions and Store Listing Vistors data from your Google Play Console

You can access Google Play Console metrics through 2 different endpoints:

Available history

We fetch historical data up to .

Update frequency

Based on the email AppTweak e-mail address that you have invited on your Google account you will have different update frequencies. Go to your Google Play Console and go on the section "Users and permissions" on the left menu to find back the AppTweak email address you've invited. You can refer to the following table to find the correspondance between the update frequency and the email address:

Email addressUpdate frequency
1 day
3-4 days
7 days

Delay in the Data

You may notice a couple of days' delay between today and the last registered data point. Two different reasons may cause this:

  • Google has not yet provided the data for the most recent date (most common), or
  • AppTweak has not yet fetched the data.

Delay due to Google
Google never provides the data until today, there is usually a 3-day difference between the last available data in the console and today. This delay can sometimes be longer.

Delay due to AppTweak

Extra delay can be expected depending on the email used for the integration (see Update Frequency).

Moreover for Goole Play Console - Organic Search we have seen that such data changes a lot over its first days. Therefore, we have decided to wait 6 days before tracking the data, giving it sufficient time to stabilize.

Google Play Console - Store Performance

The Google Play Console - Store Performance endpoint allows you to access:

  • Store Listing Acquisitions (All users)
  • Store Listing Acquisitions (New users)*
  • Store Listing Acquisitions (Returning users)*
  • Store Listing Visitors (All users)
  • Store Listing Visitors (New users)*
  • Store Listing Visitors (Returning users)*

"All users" include both new and returning users that visit your app page or installed your app. For each metric you can get the breakdown by channel of acquistion with the query parameter channel.

*Metrics marked with an asterisk may only be available from December 2024 if your integration was completed before that date. For integrations from January 2025, data is available from February 25, 2020 onward.

To get the equivalent values in your Google Play Console, go to Store performance > Store Analysis > Conversion Analysis. View by the country you want to analyse. See below for the view in your console.

2816

Store Listing Visitors and Acquisitions for Belgium in the Google Play Console. No "Traffic source" filter is applied on this view.

If you want to have the metrics with a breakdown by channel you need to add a filter by "Traffic source" in your console.

📘

Inconsistent data

Google regularly changes the data in the console retrospectively. This can lead to inconsistencies between the data we show in AppTweak and the data shown in the console for the most recent dates. The inconsistencies are updated when we next fetch the data on the console.

Input parameters

The different sources can be accessed using the query parameter channel in the Google Play Console - Store Performance endpoint. You can pass one or multiple channels in the query parameters. In the table beneath you can find the equivalence between the channel name and Google Play Console source name.

channelGoogle Play Console equivalent
searchGoogle Play search
exploreGoogle Play explore
referralsThird-party referrals
allAll channels together

Response format

The response for the playstore performance report request will be a JSON which contains all the info related to the google play console, without pagination. This information is organized by app, country and then channel. Both "Store Listing Visitors" and "Store Listing Acquisitions" are returned in the response.

{
  "content": {
    "dummy.app.com": {
      "us": {
        "all": { // Channel of the traffic source
          "start_date": "2021-01-01",
          "end_date": "2021-01-31",
          "visitors": [ // List of Store Listing Visitors. First entry corresponds to start date
            5,
            2,
            ...
          ],
          "visitors_new": [ // List of Store Listing Visitors. First entry corresponds to start date
            3,
            1,
            ...
          ],
          "visitors_returning": [ // List of Store Listing Visitors. First entry corresponds to start date
            2,
            1,
            ...
          ],
          "acquisition": [ // List of Store Lisiting Acquisition. First entry corresponds to start date
            0,
            1,
            ...
          ],
          "acquisition_new": [ // List of Store Lisiting Acquisition. First entry corresponds to start date
            0,
            1,
            ...
          ],
          "acquisition_returning": [ // List of Store Lisiting Acquisition. First entry corresponds to start date
            0,
            0,
            ...
          ]
        }
      }
    }
  },
  "metadata": {
    "request": {
      "path": "/accounts/8555cca4-2fbb-401e-893d-41fc9230cdc5/android/store_analysis.json",
      "params": {
        "start_date": "2021-01-01T00:00:00+00:00",
        "end_date": "2021-01-31T00:00:00+00:00",
        "app_ids": "dummy.app.com",
        "channels": "all",
        "countries": "us",
        "id": "{api-account-id}",
        "format": "json"
      },
      "performed_at": "2021-04-28 12:27:04 UTC"
    },
    "content": {}
  }
}

Google Play Console - Organic Search

Using the Organic Search endpoint, you can retrieve a list of keywords that generated organic traffic for any connected app within the specified date range. You will also get the breakdown of Store Listing Visitors & Store Listing Acquisitions per keyword.

Input parameters

You can find all the required and optional query parameters in the "QUERY PARAMS" section of the definition of the endpoint, accessible here.

Response format

The response for the playstore performance report request will be a JSON which contains all the info related to the google play console, without pagination. This information is grouped by app, country and then keyword.

{
  "result": {
    "dummy.app.com": {
      "BE": { // country code, ordered alphabetically 
        "puzzle game": [ // keyword for which you're getting SLV & SLA
          {
            "start_date": "2023-05-09",
            "end_date": "2023-05-10",
            "visitors": [
              23, // List of Store Listing Visitors. First entry corresponds to start date.
              19],
            "installs": [
              3, // List of Store Lisiting Acquisition. First entry corresponds to start date
              4]
          }],
        "word game": [
          {
            "start_date": "2023-05-09",
            "end_date": "2023-05-10",
            "visitors": [
              103, 
              69],
            "installs": [
              23, 
              14]
          }]
      },
      "FR": ...
    },     
  "metadata": {
    "request": {
      "path": "/api/public/integrations/accounts/android/organic-search.json",
      "params": {
        "start_date": "2023-05-09",
        "end_date": "2023-05-10",
        "id": "{api-account-id}",
        "apps": [
          "dummy.app.com"
        ],
        "countries": [
          "be",
          "fr"
        ]
      },
      "cost": 1,
      "max_credit_cost": 1,
      "status": 200
    },
    "response": null
  }
}

FAQs

How do I fetch Store Listing Visitors and Acquisitions for an app from Google Play Console via API?

You can pull both metrics with AppTweak's Google Play Console - Store Performance endpoint (GET /accounts/android/store-analysis), which returns visitors and acquisition as daily arrays per app, country, and channel, plus visitors_new/visitors_returning and acquisition_new/acquisition_returning splits for new versus returning users. Required parameters are id (the integrated account) and apps; countries, channels, start_date, and end_date are optional and default to all countries, all channels, and the 90 days ending yesterday.

How do I break down Google Play store visitors by acquisition channel?

You can filter by channel with the channels parameter on the Store Performance endpoint, passing one or more of search (Google Play search), explore (Google Play explore), referrals (third-party referrals), or all. Each requested channel comes back as its own key in the response, nested under app and country, with its own visitors and acquisition series — so a single call can return search and explore side by side without needing separate requests per channel.

How do I retrieve which keywords are driving organic installs on Google Play via API?

You can pull the organic keywords driving traffic with AppTweak's Google Play Console - Organic Search endpoint (GET /accounts/android/organic-search.json), which groups results by app, then country, then the keyword itself, returning visitors and installs as daily arrays for each keyword over the requested date range. Required parameters are id and apps; countries, start_date, and end_date are optional, with start_date defaulting to 90 days ago.

What's the difference between the Store Performance and Organic Search endpoints?

Store Performance returns overall visitors and acquisitions per channel; Organic Search breaks the organic channel down further, per keyword. Store Performance's channels parameter separates traffic into search, explore, referrals, or all, but only at the channel level. Organic Search only covers organic (Google Play search) traffic, and instead of one number per channel it returns one visitors/installs series per keyword — useful for seeing which specific search terms brought visitors, not just how many came from search overall.

Who can pull first-party Google Play Console data through the API?

Google Play Console data is available only on AppTweak's Unlimited API plans, not on the low-touch Small, Medium, or Large tiers. This applies to both the Store Performance and Organic Search endpoints. Within Unlimited, the Unlimited Analytics API (tied to an ASO Enterprise subscription) covers reporting and monitoring use cases; building software on this data, or reselling it, requires the separate, higher-tier regular Unlimited API.