📱 App Store & Google Play Metadata Scraper — One Schema
Pricing
from $2.00 / 1,000 app records
📱 App Store & Google Play Metadata Scraper — One Schema
Scrape public Apple App Store and Google Play app metadata by app ID — title, developer, description, category, price, rating, rating count, version, icon, screenshots. Watch mode returns changed records. Public, logged-out.
Pricing
from $2.00 / 1,000 app records
Rating
0.0
(0)
Developer
NexGen Watch
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Share
ASO teams and analysts pay for one normalized app record across both major mobile stores — not two brittle scrapers with mismatched fields.
What you get
- Public catalog metadata from Apple and Google Play in one 17-field app-record schema
- Title, developer, description, category, price, currency, rating, and rating count
- Current version, last-updated date, icon URL, and screenshot URLs
- Store, country, source URL, and collection timestamp on every record
- Optional watch mode that emits only records that changed since the last run
Use cases by team
- ASO teams: Benchmark your listing's metadata against competitors across both stores at once.
- Analysts: Pull a clean cross-store app record for dashboards without normalizing fields by hand.
- Growth: Watch competitor price, rating, and version changes and react when they move.
- Data engineering: Get one contract for iOS and Android instead of maintaining two parsers.
Example inputs
Both stores in one run
{"app_ids": ["284882215","com.spotify.music"],"watchMode": false}
Apple only
{"app_ids": ["284882215"],"country": "us"}
Watch for metadata changes
{"app_ids": ["com.spotify.music"],"watchMode": true}
📊 Sample Output
{"store": "apple","app_id": "284882215","title": "Facebook","developer": "Meta Platforms, Inc.","category": "Social Networking","price": 0,"currency": "USD","rating": 4.1,"rating_count": 21500000,"version": "500.0","updated_at": "2026-07-15","icon_url": "https://.../icon.png","country": "us","source_url": "https://apps.apple.com/us/app/id284882215","collected_at": "2026-07-21T00:00:00Z"}
How it works
Pass a mix of Apple numeric IDs and Google Play package names in one app_ids list. It queries Apple's public Search/Lookup surface and Google Play, then normalizes both into a single app-record contract so downstream code never has to branch per store. Public catalog surfaces only.
Pricing
| Event | Price (FREE tier) |
|---|---|
Actor start (apify-actor-start) | $0.02 |
App record (app-record) | $0.00150 |
Watch check (watch-check) | $0.05 |
Flat list prices; Apify applies its automatic FREE→DIAMOND plan discount on top. Worked example: 100 app records = $0.02 start + 100 × $0.0015 = $0.17. Blocked or zero-result runs do not intentionally charge; watch runs with no delta charge only the watch check. New to Apify? Start free.
Run it — API, CLI, MCP
API:
curl -X POST "https://api.apify.com/v2/acts/nexgenwatch~app-store-metadata/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" -d @input.json
CLI:
$apify call nexgenwatch/app-store-metadata -i @input.json
MCP: expose nexgenwatch/app-store-metadata through Apify's MCP server, select it as a tool, and pass the same input object.
Related actors — App Intelligence cluster
| Actor | What it does |
|---|---|
| Review Sentiment Analyzer | Turn any review set into themes, complaints, sentiment % and trends. |
| Apple App Store Reviews | Scrape public Apple App Store reviews for any app. |
| Google Play Reviews | Scrape public Google Play reviews for any app. |
| App Rankings Tracker | Track Apple App Store top-chart rankings by country. |
| ASO Keyword Tracker | Track keyword rankings across App Store & Google Play. |
Compliance & honest limits
- Public catalog metadata only — no login, CAPTCHA, paywall, or access-control defeating.
- Fields reflect what each store exposes publicly; a field absent at the source is returned empty, not guessed.
- A source-confirmed empty result is
SUCCEEDED-0: GENUINE_EMPTY; exhausted retries fail and truncated runs arePARTIAL.
FAQ
Can I mix iOS and Android IDs?
Yes — that is the point. Put Apple numeric IDs and Play package names in the same app_ids list; both normalize to one schema.
Which fields come back?
17: store, app_id, title, developer, description, category, price, currency, rating, rating_count, version, updated_at, icon_url, screenshots, country, source_url, collected_at.
Does zero mean blocked?
No. A confirmed-empty lookup is GENUINE_EMPTY; only exhausted retries fail.
How does watch mode work?
Set watchMode: true. Later runs emit only records whose metadata changed since the baseline.
How is it priced?
$0.02 per run start plus $0.0015 per app record; watch checks with no change cost $0.05.
Can I get screenshots and icons?
Yes — icon_url and screenshots URLs are included where the store exposes them.
Does it pair with rankings and keywords?
Yes — it's the metadata anchor for the App Store Rankings Tracker and ASO Keyword Tracker.
Troubleshooting
- Missing fields? A store not exposing a field returns it empty by design — it is never fabricated.
- Wrong country's record? Set
country; it defaults to US. - Play app not found? Use the exact package name from the store URL's
id=parameter. - Watch mode emitting everything? The first run seeds the baseline; change-only deltas start on the second run.
- Need the reviews too? Pair with the Apple or Google Play reviews scrapers.
About
Part of the NexGenData App Intelligence cluster — the normalized cross-store anchor the ranking and keyword actors build on. Built by NexGenData. Questions or need a custom feed? Open an issue on the Actor page.