# Google Play Store Scraper — Apps, Installs, Ratings & Charts (`intelscrape/google-play-store-scraper`) Actor

Google Play Store Scraper: Android apps by keyword, package name, URL, developer or Top Free/Paid/Grossing chart. Exports installs, rating, rating count, star histogram, price, in-app purchases, ads, version, last update, developer email and website. No API key. Pay per app.

- **URL**: https://apify.com/intelscrape/google-play-store-scraper.md
- **Developed by:** [IntelScrape](https://apify.com/intelscrape) (community)
- **Categories:** Developer tools, Marketing
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Google Play Store Scraper — App Details, Installs, Ratings & Charts

![Google Play Store Scraper — App Details, Installs, Ratings & Charts](https://api.apify.com/v2/key-value-stores/hRabN9WfDGrT4nSvV/records/google-play-store-scraper-banner.png)

🇨🇳 **Google Play 应用数据采集器**：按关键词搜索、按包名/链接查询、按开发者列出应用，或抓取免费榜、付费榜和畅销榜。导出安装量、评分、评分数、星级分布、价格、应用内购买、广告、版本、更新时间以及开发者邮箱和网站。无需 API 密钥，按应用付费。

🇸🇬 **Pengikis Google Play Store**: cari aplikasi Android mengikut kata kunci, nama pakej atau pembangun, atau dapatkan carta teratas. Eksport pemasangan, penarafan, histogram bintang, harga, pembelian dalam aplikasi, versi, tarikh kemas kini serta e-mel dan laman web pembangun.

#### 🤖 NEW: Connect This To Your AI!

Use this actor from Claude, ChatGPT, Cursor or any MCP client through the **[IntelScrape MCP Server](https://apify.com/intelscrape/skip--trace)**, or call it directly over the Apify API.

#### 🏆 Featured Bots by IntelScrape

- [Skip Trace Pro](https://apify.com/intelscrape/skip-trace-pro)
- [TruePeopleSearch Scraper](https://apify.com/intelscrape/truepeoplesearch-scraper)
- [TikTok Email Scraper](https://apify.com/intelscrape/tiktok-scraper)
- [Amazon Product Reviews Scraper](https://apify.com/intelscrape/amazon-product-review-scraper)
- [Website Contact Scraper](https://apify.com/intelscrape/contact-info-scraper)
- [Skip Trace MCP Server](https://apify.com/intelscrape/skip--trace)

⚡ Works with n8n, Make, Zapier, Google Sheets and the Apify API.

![price](https://img.shields.io/badge/price-%241.50%20per%201K%20apps-blue) ![billing](https://img.shields.io/badge/billing-pay%20per%20app-green) ![API key](https://img.shields.io/badge/API%20key-not%20required-brightgreen) ![login](https://img.shields.io/badge/login-not%20required-brightgreen)

**Android app data in bulk: installs, ratings, star histograms, prices, IAP and ads flags, versions, update dates and developer contacts.**

> **Honest coverage & billing:** Install counts are ranges published by Google, not exact downloads. You pay only for results actually delivered, and a built-in cost guard stops the run at your max-charge limit.

🌍 Built for teams in the **US, China and Singapore**, and anyone who needs this data in a spreadsheet or pipeline.

⭐ Found it useful? Please leave a review; it helps others find it.

⚖️ **Lawful business use only.** Collect public data only, and comply with the source site's terms, copyright and data-protection laws (GDPR, CCPA, China PIPL, Singapore PDPA).

*Examples below are illustrative; names and values may be fictional or out of date.*

### What is Google Play Store Scraper?

Google Play shows install ranges, ratings and developer contact details on every app page, but offers no bulk export. **Google Play Store Scraper** collects that data for any keyword, package name, developer or top chart and returns one clean row per app, ready for spreadsheets, BI dashboards, CRMs or AI agents.

### What does it do?

- **Keyword search** with the Google Play search rank
- **App lookup** by package name (com.spotify.music) or Play Store URL
- **Developer catalogs** by developer name or developer page URL
- **Top charts**: Top Free, Top Paid and Top Grossing, optionally for a category (e.g. GAME_PUZZLE)
- **Full details (on by default)**: installs and min/max installs, rating, rating and review counts, 1–5 star histogram, price, in-app purchases and price range, contains-ads flag, content rating, version, Android version, last update, recent changes, description
- **Developer contacts**: developer email, website, address and privacy policy when published
- **Any market**: country and language parameters for localised data

### Why choose us over cheaper scrapers?

- **Honest output**: limits are documented, missing data is labeled, never invented
- **Clean, consistent schema** ready for Excel, Sheets, BI tools or an LLM
- **No account risk**: no logins, no cookies, no API keys
- **Pay per result** with a built-in cost guard; no subscription, failed items are never charged
- **Fast and light**: no browser, no residential proxy, so runs finish in seconds and stay cheap
- **Maintained by IntelScrape** and fixed fast when the source changes

### Who is it for?

- **ASO and competitor tracking**: monitor rivals' installs, ratings, update cadence and changelogs
- **Lead generation**: build lists of Android developers with their published support emails and websites
- **Market sizing**: compare categories and countries by installs and ratings
- **Mobile ad networks and SDK vendors**: find apps that show ads or sell in-app purchases
- **Investors**: spot fast-growing apps in top charts
- **AI and analytics pipelines**: feed structured app data into LLMs, dashboards or warehouses

### How to use it

#### In Apify Console (no code)

1. Click **Try for free** / **Start**. The form is prefilled with a working example.
2. Change the inputs (see examples below).
3. Click **Start**, then export the results as **JSON, CSV, Excel, XML or HTML**, or open them in Google Sheets.
4. Optional: **Schedule** the actor to run hourly, daily or weekly.

#### Via API

```bash
curl -X POST "https://api.apify.com/v2/acts/intelscrape~google-play-store-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["budget planner"], "country": "us", "language": "en", "maxResultsPerSearch": 20}'
```

Or use the official [Apify JavaScript](https://docs.apify.com/api/client/js/) and [Python](https://docs.apify.com/api/client/python/) clients:

```python
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("intelscrape/google-play-store-scraper").call(run_input={"searchTerms": ["budget planner"], "country": "us", "language": "en", "maxResultsPerSearch": 20})
for item in client.dataset(run["default_dataset_id"]).iterate_items():
    print(item)
```

#### With AI agents (MCP)

Add Apify's MCP server (`https://mcp.apify.com`) or the [IntelScrape MCP Server](https://apify.com/intelscrape/skip--trace) to Claude Desktop, Cursor, ChatGPT or any MCP client, then ask in plain language, e.g. *"Run intelscrape/google-play-store-scraper with the default input and summarise the results."*

### Input examples

**Keyword search (default)**

```json
{
  "searchTerms": ["budget planner"],
  "country": "us",
  "language": "en",
  "maxResultsPerSearch": 20
}
```

**Specific apps**

```json
{
  "appIds": ["com.spotify.music", "https://play.google.com/store/apps/details?id=com.notion.id"]
}
```

**All apps from a developer**

```json
{
  "developers": ["Spotify AB"]
}
```

**Top Grossing puzzle games in the UK**

```json
{
  "topCharts": ["top-grossing:50:GAME_PUZZLE"],
  "country": "gb"
}
```

### Output fields

| Field | Description |
|---|---|
| `appId / name / url` | Package name, app title and Play Store link |
| `developer / developerId` | Developer name and ID |
| `developerEmail / developerWebsite / developerAddress / privacyPolicyUrl` | Published developer contact details |
| `installs / minInstalls / maxInstalls` | Install range shown on Google Play |
| `rating / ratingCount / reviewCount / histogram` | Average rating, counts and 1–5 star distribution |
| `price / currency / isFree / offersIAP / iapRange / containsAds` | Monetisation |
| `genre / genreId / contentRating` | Category and age rating |
| `version / androidVersion / released / updated / recentChanges` | Release info |
| `summary / description` | Short and full description |
| `iconUrl / headerImageUrl / screenshotUrls / videoUrl` | Media |
| `searchTerm / searchRank, chart / chartRank, developerQuery` | How the app was found |

#### Sample output

```json
{
  "appId": "com.raha.app.mymoney.free",
  "name": "MyMoney—Track Expense & Budget",
  "developer": "Ananta Raha",
  "developerEmail": "contact.ananta.raha@gmail.com",
  "rating": 4.78,
  "ratingCount": 67857,
  "installs": "1,000,000+",
  "minInstalls": 1000000,
  "price": 0,
  "isFree": true,
  "offersIAP": false,
  "containsAds": false,
  "genre": "Finance",
  "contentRating": "Everyone",
  "version": "6.6-free",
  "updated": "2026-07-31T19:15:16.000Z",
  "searchTerm": "budget planner",
  "searchRank": 1
}
```

### Pricing (pay per event)

| Event | When it is charged | Price |
|---|---|---|
| **Actor start** | once per run | $0.005 |
| **App** | per app row | $0.0015 |

#### Cost examples

| Run | Cost |
|---|---|
| Default run: 1 keyword, 20 apps | $0.035 |
| Top Free 100 | $0.155 |
| 50 keywords × 100 apps | ≈ $7.51 |

Platform usage is included in these prices. Set **Max charge per run** in the run options to cap spend; the actor stops cleanly when the limit is reached and keeps everything collected so far.

### FAQ

#### Do I need a Google account or API key?

No. The actor reads public Google Play pages with the open-source google-play-scraper library. No login, no key.

#### Does it include reviews?

No; this actor exports app details. For review text use our [Google Play Reviews Scraper](https://apify.com/intelscrape/google-play-reviews-scraper).

#### Are installs exact?

Google Play only publishes install ranges such as 1,000,000+. minInstalls is the lower bound; we never invent an exact number.

#### Why is version "VARY"?

Some apps ship different builds per device. Google Play then shows "Varies with device", and we return that as-is.

#### Can I turn off full details?

Yes. Set fullDetails to false for faster, lighter rows from search and chart listings only.

#### Which countries and languages work?

Any Google Play country code and language code. Prices, ranks and descriptions follow the market you choose.

#### Are developer emails verified?

They are exactly what the developer published on Google Play. We do not guess or generate emails.

#### How often should I run it?

Daily or weekly schedules work well for tracking ratings, installs and updates over time.

### Honest limits

- Install counts are ranges published by Google, not exact downloads.
- Top chart contents come from Google Play's public chart listings and can differ from what a signed-in device shows.
- Google may rate-limit very large runs; the actor retries with back-off.
- Fields a developer leaves empty (website, address) stay empty.

### Related IntelScrape bots

- [Apple App Store Scraper](https://apify.com/intelscrape/apple-app-store-scraper): iOS app details, ratings & charts
- [Google Play Reviews Scraper](https://apify.com/intelscrape/google-play-reviews-scraper): Android review text & ratings
- [App Store Reviews Scraper](https://apify.com/intelscrape/app-store-reviews-scraper): iOS review text & ratings
- [Google Autocomplete Scraper](https://apify.com/intelscrape/google-autocomplete-scraper): keyword suggestions from Google, YouTube, Amazon & Bing
- [Website Contact Scraper](https://apify.com/intelscrape/contact-info-scraper): emails, phones & socials from sites
- [Skip Trace MCP Server](https://apify.com/intelscrape/skip--trace): IntelScrape tools for AI agents

### Legal

This actor collects publicly available data only. You are responsible for using the results lawfully and in line with the source's terms and applicable privacy laws (GDPR, CCPA, PIPL, PDPA). Process personal data only with a legitimate purpose. IntelScrape is not affiliated with, endorsed by or sponsored by the data source; all trademarks belong to their owners.

# Actor input Schema

## `searchTerms` (type: `array`):

Google Play search terms.

## `appIds` (type: `array`):

e.g. com.spotify.music or https://play.google.com/store/apps/details?id=com.spotify.music

## `developers` (type: `array`):

e.g. Spotify AB or https://play.google.com/store/apps/developer?id=Spotify+AB

## `topCharts` (type: `array`):

top-free, top-paid or top-grossing, optionally :size and :CATEGORY, e.g. top-free:50:GAME_PUZZLE

## `country` (type: `string`):

Two-letter country code: us, gb, de, in, br…

## `language` (type: `string`):

Two-letter language code.

## `maxResultsPerSearch` (type: `integer`):

1–250 apps per search keyword.

## `fullDetails` (type: `boolean`):

Fetch each app page for installs, histogram, developer email, version and more (recommended).

## Actor input object example

```json
{
  "searchTerms": [
    "budget planner"
  ],
  "country": "us",
  "language": "en",
  "maxResultsPerSearch": 20,
  "fullDetails": true
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchTerms": [
        "budget planner"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("intelscrape/google-play-store-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "searchTerms": ["budget planner"] }

# Run the Actor and wait for it to finish
run = client.actor("intelscrape/google-play-store-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchTerms": [
    "budget planner"
  ]
}' |
apify call intelscrape/google-play-store-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,intelscrape/google-play-store-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/uYGw6QWFAhOjf0U3E/builds/Mut0kWLymqEV2tlCC/openapi.json
