Google Play Store Scraper API
Our Google Play Store scraper takes any Android package id or play.google.com URL and returns the app's listing as JSON: title, developer, rating, review count, category, price, content rating, icon, and screenshots in a single request.
The hard part of Google Play Store data
Google Play has no public app data API, so the only source is the store HTML, where the numbers you need sit inside late-loading script blobs that shift position and break brittle scrapers. A datacenter IP hitting the page repeatedly also trips a consent or captcha interstitial instead of the listing.
Send one request to the Google Play Store Scraper API
curl "https://api.appstorescraperapi.com/api/v1/googleplay/product?id=com.spotify.music&api_key=$API_KEY" import requests
BASE = "https://api.appstorescraperapi.com"
API_KEY = "YOUR_API_KEY"
# Pass an Android package id or a play.google.com URL.
data = requests.get(
f"{BASE}/api/v1/googleplay/product",
params={
"id": "com.spotify.music", # package id or full Play URL
"hl": "en", # content language
"gl": "us", # storefront country
"api_key": API_KEY,
},
timeout=30,
).json()
print(data["title"], "by", data["developer"])
print(data["rating"], "stars across", data["reviews_count"], "reviews")
print(data["category"], "-", "free" if data["is_free"] else data["price"]) Parameters
| Parameter | Required | Default | Notes |
|---|---|---|---|
id | required | - | The Android package id, e.g. com.spotify.music. Accepts a bare package or a play.google.com/store/apps/details?id=... URL, from which we extract the package id. |
url | optional | - | A play.google.com app URL. Pass it as the id value and we read the package id from the id= query segment server side. |
hl | optional | en | UI and content language (Google Play hl). Defaults to en. Sets the language of the description and localized fields. |
gl | optional | us | Storefront country (Google Play gl). Defaults to us. Sets the region for price and availability. |
api_key | required | - | Your API key, passed as a query parameter. Get one free at signup. |
Reading the Google Play Store Scraper API response
{
"id": "com.spotify.music",
"package_id": "com.spotify.music",
"title": "Spotify: Music and Podcasts",
"developer": "Spotify AB",
"developer_url": "https://www.spotify.com",
"description": "Listen to songs, play podcasts, create playlists and discover music you'll love",
"category": "MUSIC_AND_AUDIO",
"operating_system": "ANDROID",
"content_rating": "Teen",
"price": 0,
"currency": "USD",
"is_free": true,
"rating": 4.334629058837891,
"reviews_count": 35848654,
"icon": "https://play-lh.googleusercontent.com/IzQgYCcnCFCD08GR-3bdtcT8xzOvrNkC84avGT5CwTX2VIqmTmKKJcP_Cd4JoBOdmCMlTndlOzV6hrthg2fOWA",
"thumbnail": "https://play-lh.googleusercontent.com/IzQgYCcnCFCD08GR-3bdtcT8xzOvrNkC84avGT5CwTX2VIqmTmKKJcP_Cd4JoBOdmCMlTndlOzV6hrthg2fOWA",
"screenshots": [
"https://play-lh.googleusercontent.com/xl04GurQer374yogi24hRkvUcXtMStMOcOo86Sprmrid9j6wQHF0d9xMh73CwUEg57lbsGIwpOXgrJ927Q",
"https://play-lh.googleusercontent.com/c1jnjL-9CIFlwlTMX3xNyeo8aEH39sNuC5zpTHhfW8keGxQE3TBMRX9Rm3VqM3E03Cyl9AqtnxuKvxJpcW0WCA"
],
"url": "https://play.google.com/store/apps/details/Spotify_Music_and_Podcasts?id=com.spotify.music&hl=en"
} | Field | Type | Description |
|---|---|---|
id | string | The Android package id. package_id mirrors it. |
title | string | The app's display name as shown on its Google Play page. |
developer | string | The developer name from the listing. developer_url points to their site. |
description | string | The app description text from the store page. |
category | string | The Google Play application category, e.g. MUSIC_AND_AUDIO. |
operating_system | string | The platform for the listing, e.g. ANDROID. |
content_rating | string | The app's content rating, e.g. Teen. |
price | number | Numeric price in the storefront currency. is_free is true when the price is 0. |
is_free | boolean | True when the listed price is zero, false when the app is paid, null when no offer is present. |
rating | number | Average user rating parsed from the listing's aggregate rating, as a full decimal. |
reviews_count | integer | Total number of ratings from the listing's aggregate rating. |
icon | string | URL of the app icon. thumbnail mirrors it. |
screenshots | array | Screenshot URLs harvested from the Play CDN, de-duped and in document order. |
url | string | The canonical play.google.com listing URL for the app. |
What you can ship with it
Cross-store app tracking
Competitor monitoring
App catalogs and directories
Rating and price alerts
Market research
Store listing sync
Why our Google Play Store Scraper API earns its keep
Pass a package id or a play.google.com URL and we return the parsed listing, with no store API to wait on and no proxy pool of your own to run. Every request rotates proxies, handles anti-bot checks, and retries across tiers, returning validated JSON with a stable schema in about 2.6 seconds.
Package id or URL input
Resilient parsing
Anti-bot and proxy rotation
Auto-retry across pools
Language and region control
Screenshots included
Google Play Store Scraper API vs official and roll-your-own
| Our API | DIY (requests / headless) | Official Google Play API | |
|---|---|---|---|
| App data access | Parsed JSON from one call | Parse the store HTML yourself | No public app-data API exists |
| Setup | API key only | Proxies, headless browser, parsers | Not available |
| Consent and captcha walls | Handled by proxy rotation | You solve them per request | Not applicable |
| Language and region | hl and gl parameters | You set them per request | Not applicable |
| Anti-bot and proxies | Built in | You build and maintain it | Not applicable |
| Output | Validated JSON, stable schema | Whatever you parse | Not applicable |
From free to high volume
| Plan | Price | Best for |
|---|---|---|
| Free | 1,000 requests | Testing and small jobs |
| Pro | $0.60 / 1k | Production workloads |
| Pay-as-you-go | $0.90 / 1k | Spiky or one-off volume |
Median response 2.6s. You only pay for successful requests.
FAQ
A Google Play Store scraper is a tool that reads a public app listing on Google Play and returns it as structured data. Our Google Play Store scraper API takes an Android package id or a play.google.com URL and returns the title, developer, rating, review count, category, content rating, price, icon, and screenshots as JSON from a single request.
No. Google Play has no public API that returns app listing data such as ratings, reviews, or descriptions. The Google Play Developer API covers publishing and managing your own apps, not reading arbitrary listings. That is why a scraper that parses the public store page is the practical way to get Google Play app data, which is what this endpoint does.
Send one GET request to our googleplay/product endpoint with id set to the package id, for example com.spotify.music, or a full play.google.com URL, which we parse for the package id. Add hl for language and gl for storefront country. We handle proxies, consent walls, and retries and return the listing as clean JSON.
Yes. The hl parameter sets the content language (default en) and the gl parameter sets the storefront country (default us). The description, price, and availability reflect the locale you request, so you can compare a listing across regions and languages.
No. You only need an appstorescraperapi key passed as the api_key query parameter. There is no Google account, no Play Console access, and no OAuth. The endpoint reads the public listing any visitor can see, and the free tier includes 1,000 requests per month.
Median end-to-end response is about 2.6 seconds, including proxy routing, anti-bot handling, retries, and parsing. Because Google Play serves a consent or captcha interstitial to repeat datacenter traffic, the proxy rotation and retries behind the endpoint are what keep listing requests returning the real page instead of a block.