Apple App Store Search & App Metadata Monitor
Pricing
from $1.20 / 1,000 saved observations
Apple App Store Search & App Metadata Monitor
Discover iPhone apps by keyword or app ID across storefront countries. Export prices, ratings, versions and metadata changes with source links and saved comparisons.
Pricing
from $1.20 / 1,000 saved observations
Rating
0.0
(0)
Developer
Brandt May
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Features
Share
Turn a keyword or app watchlist into structured app-market observations. Discover competitors across storefronts, follow release and price changes, and feed app research into spreadsheets or AI workflows with clear source evidence.
Start with a keyword. The default run searches the US storefront for budget and returns up to 10 iPhone app observations. No Apple account, API key, proxy or setup step is required.
| Use case | Choose | What you receive |
|---|---|---|
| Find competing apps | Keyword search | Apple Search API results in returned order, with product metadata |
| Compare markets | Multiple countries | Country-specific metadata, prices and API discovery windows |
| Track selected products | Known app IDs | Prices, ratings, rating counts, versions and release dates for your watchlist |
| Send meaningful updates downstream | Saved comparisons | New/changed/unchanged status, previous values and numeric differences |
Quick start
- Pick What to discover and a two-letter storefront country such as
us,gborde. - Enter search keywords, or paste numeric app IDs or Apple app links.
- Set your source window and maximum saved records. Run the Actor, then open the dataset or readable run report.
Each record includes a stable recordId, Apple app URL, source endpoint, country, source context and observation time. Download JSON or CSV, call through the Apify API, or schedule the same input for ongoing monitoring. Use a private saved task when your keyword/watchlist is commercially sensitive.
Three ready-to-run inputs
Budget app competitor discovery
{"mode":"search","queries":["budget"],"countries":["us"],"resultsPerSource":5,"maxResults":5}
UK fitness app competitor discovery
{"mode":"search","queries":["fitness"],"countries":["gb"],"resultsPerSource":5,"maxResults":5}
ChatGPT and Spotify release watch
{"mode":"lookup","countries":["us"],"appIds":["6448311069","324684580"],"maxResults":2}
Output you can use
| Fields | Meaning |
|---|---|
appId, appName, title, bundleId, developerName, sellerName | Source app and publisher metadata; title aliases appName for integrations |
country, sourceType, sourceKey, position, positionKind | Storefront and exact keyword/lookup context; lookup positions are null |
price, currency | Observed storefront price; a free download can still contain paid features |
averageUserRating, ratingCount | Source-reported overall rating and rating count, not review text |
currentVersionRating, currentVersionRatingCount | Current-version metrics where Apple provides them |
version, releaseDate, currentVersionReleaseDate, minimumOsVersion | Published release and OS metadata |
genres, languages, contentAdvisoryRating, description | Product context; description text is normalized and capped at 16,000 characters |
descriptionHash, descriptionTruncated | SHA-256 of the full whitespace-normalized description and whether displayed text was truncated |
url, sourceUrl, observedAt | App link and auditable collection evidence |
comparisonStatus, changedFields, previous, previousObservedAt | Comparison with the last saved observation for the same app/context |
positionChange, priceChange, ratingCountChange, ratingChange | Observed numeric differences; positive positionChange means movement toward position 1 in the API response |
Unreported source fields stay null. Zero is retained only when the source actually reports zero. Price differences require the same known currency; no currency conversion is attempted. There are no estimated downloads, revenue figures, AI scores or invented fallback apps.
Understand the discovery window
Keyword positions describe the order of the Apple Search API response. They are not a claim about personalized search in the App Store app, a universal ASO ranking, official chart positions, or historical positions before this Actor observed them.
One row is one app in one source/country context. An app matching two keywords creates two useful contextual rows and two row charges. Repeated identical contexts are deduplicated. Search can return fewer apps than requested. The first-page search window is limited to 100 results per keyword/country and has no hidden pagination. This is bounded discovery, not an exhaustive App Store catalog.
Lookup mode requests all selected IDs, up to 100 per country. An app URL supplies its numeric ID; the selected countries determine the storefronts queried. Every emitted Apple URL must match both the requested storefront and app identity.
Saved comparisons that respect incomplete runs
Enable comparePrevious, keep the same scope and choose a snapshotName. The first complete run establishes history; later runs report changes. Enable onlyChanges to save only new or changed rows.
History is scoped to mode, countries, keyword/app-ID selection and search-window size. It is committed only after all selected sources were parsed and every intended row was processed. A source failure, timeout, access refusal, charge limit or output cap that cuts a window leaves the previous baseline untouched. Concurrent writers are detected before commit; run the same named comparison serially.
An app missing from a later bounded search is not classified as removed or delisted. Lookup IDs not returned by Apple are listed in SUMMARY; they are not fabricated output rows. The last stored observation may predate the immediately preceding run if that run was incomplete or skipped unchanged records.
Coverage and operating limits
- Up to six keyword-country combinations, or up to 100 known app IDs across three countries.
- Up to 100 apps per keyword, up to 1,000 saved rows, and a 30–120-second run budget.
- At most six main requests for search or three for ID lookup, plus one shared retry for a transient HTTP 502/503/504 response, request timeout, connection reset or temporary DNS failure. The same URL is retried only when at least 25 seconds remain; the overall deadline is never extended.
- Request starts, including the retry, are spaced at least 3.1 seconds apart within each run, below Apple's approximate 20-request/minute guidance. Avoid overlapping schedules; separate runs do not share a global throttle.
- Fixed documented public Search/Lookup API routes only. No login, authentication token, private endpoint, proxy rotation or retries around 401/403/429 access/rate refusals. Those responses stop subsequent requests. Use supported Apple storefront codes; unsupported codes can fail or return no usable observations.
SUMMARY.sourceAttemptsrecords each response status or transport error and whether the shared retry was used. Coverage distinguishes complete selected windows, partial work, empty matches, unchanged observations and limits. Platform success alone does not prove exhaustive coverage.
These are documented integration APIs, separate from webpage crawling. Source schemas and availability can change. Apple can omit or delay metadata. This Actor does not collect chart feeds, reviews, private analytics, paid content, purchase history, app binaries, installs or sales estimates.
Pricing and cost control
The intended Store price is $0.002 per saved app observation, plus $0.00005 per Actor start. A five-row run is $0.01005 at those rates. The live Pricing tab is authoritative. Set the run's maximum charge and maxResults before running. Unchanged rows skipped with onlyChanges, source errors, coverage summaries and the HTML run report do not create dataset-item charges. Runtime/platform fees depend on your Apify plan.
Sources and related tools
- Apple Search and Lookup API documentation
- Mayd It data tools and workflow recipes
- For individual review records, use our separate Apple App Store Review Monitor.
Need help? Open an issue on this Actor with the run ID, selected country/mode and expected result. Never include credentials. Apple and App Store names identify the data source; this Actor is independently operated by Mayd It.