Google Play Scraper — Apps, Search & Reviews avatar

Google Play Scraper — Apps, Search & Reviews

Pricing

from $0.06 / 1,000 results

Go to Apify Store
Google Play Scraper — Apps, Search & Reviews

Google Play Scraper — Apps, Search & Reviews

Every Google Play dataset behind one mode picker: the full app record for a package ID or link, ranked keyword search, a developer's public portfolio, or public reviews with developer replies. Each mode takes its own input and returns that dataset's fields.

Pricing

from $0.06 / 1,000 results

Rating

0.0

(0)

Developer

The Netaji

The Netaji

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

13 days ago

Last modified

Share

Google Play Scraper

One Actor for the whole Google Play surface. Pick a mode with scraperType and the run produces app records, ranked search results, a developer's portfolio, or public reviews — same dataset, same schema, one product to install.

scraperTypeWhat a row isWhat you supply
appDetailOne complete app listingpackage_ids
searchAppsOne ranked app card per resultqueries
developerAppsOne app from a publisher's portfoliodeveloper_ids
reviewsOne public reviewpackage_ids

The form is grouped to match. Fill in the section for the mode you picked and leave the others alone; language, country, and maxItems apply to every mode.

App details

{
"scraperType": "appDetail",
"package_ids": [
"com.spotify.music",
"https://play.google.com/store/apps/details?id=com.duolingo"
],
"language": "en_US",
"country": "US",
"maxItems": 0
}

Package IDs and Google Play links can be mixed in one list. Rows carry package_id, title, description, summary, developer_name, developer_id, rating, ratings_count, installs, content_rating, category, released, updated, contains_ads, in_app_purchases, icon_url, and screenshots.

A real US lookup for Spotify returned:

{
"package_id": "com.spotify.music",
"title": "Spotify: Music and Podcasts",
"developer_name": "Spotify AB",
"developer_id": "6523013212965523194",
"rating": 4.314022,
"ratings_count": 34006997,
"installs": "1,000,000,000+",
"content_rating": "Teen",
"released": "May 27, 2014",
"updated": "Aug 18, 2026",
"contains_ads": true,
"in_app_purchases": "$6.99 - $203.88 per item"
}
{
"scraperType": "searchApps",
"queries": ["spotify", "weather radar"],
"language": "en_US",
"country": "US",
"maxItems": 100
}

Each entry in queries is searched separately and every row keeps the search_query that produced it, so several searches can share one dataset. Search rows are the compact card: package_id, title, developer_name, rating, installs, category, description, and icon_url.

Developer portfolio

{
"scraperType": "developerApps",
"developer_ids": ["Spotify AB"],
"language": "en_US",
"country": "US",
"maxItems": 100
}

The developer value can be the displayed name or the developer_id found on an app record. Rows are the same card shape as search, with source_developer_id recording which input produced each one.

Reviews

{
"scraperType": "reviews",
"package_ids": ["com.spotify.music"],
"language": "en_US",
"country": "US",
"maxReviews": 100,
"sort": "newest"
}

maxReviews applies to each app and accepts 1–1,000, so three apps at 100 can save up to 300 rows. sort accepts newest, helpful, or rating. A review row carries review_id, author, avatar_url, score, text, timestamp, helpful_count, developer_reply, app_version, and the sort used:

{
"package_id": "com.spotify.music",
"review_id": "87d30857-a229-4cdb-bf58-d77c08c04768",
"author": "Jacob Gaynor",
"score": 3,
"text": "laggy",
"timestamp": 1787335892,
"helpful_count": 0,
"developer_reply": null,
"app_version": "9.1.76.2055",
"sort": "newest"
}

Things worth knowing before the first run

Why is maxItems 100 rather than 0? The four modes disagree about the right default — reading a supplied list of package IDs wants no cap, while a keyword search wants one — so the combined form ships the shared default of 100. Set it to 0 when you are feeding a long package_ids or developer_ids list and want the whole thing.

Does maxItems cap the reviews mode? No. Reviews are bounded by maxReviews, which is a per-app limit rather than a run total.

One mode per run, or several? One. scraperType selects a single dataset, and the other sections are ignored for that run. Chain runs when you need to search first and read details second.

What happens when a lookup fails? A package that is unknown or unavailable in the chosen language and country is skipped and the rest of the batch continues. A developer with no apps in that storefront, or an app with no public reviews, finishes successfully with no rows rather than failing. Fields Google Play does not publish come back as null or an empty list.

Does raising maxItems return deeper search results? No. Google Play decides how many apps a ranked search page lists; the cap can only reduce what is saved, never manufacture results the store stopped listing.

Prefer a narrower form? Each mode also ships on its own: Google Play App Scraper, Google Play Search Scraper, Google Play Developer Apps Scraper, and Google Play Reviews Scraper.