App Store SERPs Database
The App Store SERPs Database encompasses millions of App Store search result pages with related app data.
This database is available in JSON format only.
Click here to download a database sample for the US location, English language.
The database in JSON contains data structured like in the example below:
{ "keyword": "100 push-ups a day challenge", "location": 2840, "language": "en", "keyword_info": { "search_volume": 10, "time_update": "2022-06-07T18:14:49.5631353Z" }, "serp_info": { "check_url": null, "items_count": 7, "se_results_count": 8, "time_update": "2022-06-02T02:16:07.4999155Z", "serp": [ { "type": "app_store_search_organic", "rank_group": 1, "rank_absolute": 1, "position": "left", "app_id": "1478401895", "title": "30 Day Fitness Workout at Home", "url": "https://apps.apple.com/us/app/30-day-fitness-workout-at-home/id1478401895", "icon": "https://is2-ssl.mzstatic.com/image/thumb/Purple113/v4/c4/2e/40/c42e4054-9efd-3208-e1f1-6b67757f98f4/AppIcon-0-0-1x_U007emarketing-0-0-0-7-0-0-sRGB-0-0-0-GLES2_U002c0-512MB-85-220-0-0.png/512x512bb.jpg", "reviews_count": 2652, "rating": { "rating_type": "Max5", "value": 4.73492, "votes_count": 2652, "rating_max": 5 }, "is_free": true, "price": { "current": 0, "regular": null, "max_value": null, "currency": "USD", "is_price_range": false, "displayed_price": null } }, { "type": "app_store_search_organic", "rank_group": 2, "rank_absolute": 2, "position": "left", "app_id": "1533599989", "title": "30 Day Fitness - 100 Push-Ups", "url": "https://apps.apple.com/us/app/30-day-fitness-100-push-ups/id1533599989", "icon": "https://is2-ssl.mzstatic.com/image/thumb/Purple114/v4/6c/6c/9c/6c6c9cd6-057e-862b-9ece-a256c02ae789/AppIcon-1x_U007emarketing-0-6-0-85-220.png/512x512bb.jpg", "reviews_count": null, "rating": { "rating_type": "Max5", "value": null, "votes_count": null, "rating_max": 5 }, "is_free": false, "price": { "current": 0.99, "regular": null, "max_value": null, "currency": "USD", "is_price_range": false, "displayed_price": null } }, { "type": "app_store_search_organic", "rank_group": 3, "rank_absolute": 3, "position": "left", "app_id": "1117082507", "title": "Push Up Counter Trainer", "url": "https://apps.apple.com/us/app/push-up-counter-trainer/id1117082507", "icon": "https://is3-ssl.mzstatic.com/image/thumb/Purple124/v4/d5/a5/1d/d5a51dcb-f79a-3473-188c-1e94391bb29b/AppIcon-0-0-1x_U007emarketing-0-0-0-4-0-85-220.jpeg/512x512bb.jpg", "reviews_count": 11, "rating": { "rating_type": "Max5", "value": 4.72727, "votes_count": 11, "rating_max": 5 }, "is_free": true, "price": { "current": 0, "regular": null, "max_value": null, "currency": "USD", "is_price_range": false, "displayed_price": null } }, { "type": "app_store_search_organic", "rank_group": 4, "rank_absolute": 4, "position": "left", "app_id": "985834424", "title": "Pushups 100 - 30 days workout challenge", "url": "https://apps.apple.com/us/app/pushups-100-30-days-workout-challenge/id985834424", "icon": "https://is4-ssl.mzstatic.com/image/thumb/Purple7/v4/e5/ae/b1/e5aeb18e-cf20-4ccb-d34b-15fbd972cb8c/pr_source.png/512x512bb.jpg", "reviews_count": 5, "rating": { "rating_type": "Max5", "value": 3.4, "votes_count": 5, "rating_max": 5 }, "is_free": false, "price": { "current": 1.99, "regular": null, "max_value": null, "currency": "USD", "is_price_range": false, "displayed_price": null } }, { "type": "app_store_search_organic", "rank_group": 5, "rank_absolute": 5, "position": "left", "app_id": "1551689072", "title": "push ups plank arms push up", "url": "https://apps.apple.com/us/app/push-ups-plank-arms-push-up/id1551689072", "icon": "https://is1-ssl.mzstatic.com/image/thumb/Purple114/v4/37/50/7d/37507dec-4a7f-efd2-0390-b92c2fc13bca/AppIcon-0-0-1x_U007emarketing-0-0-0-7-0-0-sRGB-0-0-0-GLES2_U002c0-512MB-85-220-0-0.png/512x512bb.jpg", "reviews_count": 2, "rating": { "rating_type": "Max5", "value": null, "votes_count": 2, "rating_max": 5 }, "is_free": true, "price": { "current": 0, "regular": null, "max_value": null, "currency": "USD", "is_price_range": false, "displayed_price": null } }, { "type": "app_store_search_organic", "rank_group": 6, "rank_absolute": 6, "position": "left", "app_id": "1534230980", "title": "30 Day Fitness - 100 Sit Ups", "url": "https://apps.apple.com/us/app/30-day-fitness-100-sit-ups/id1534230980", "icon": "https://is4-ssl.mzstatic.com/image/thumb/Purple114/v4/c5/78/8e/c5788eab-e7d1-e76f-d115-97d473b705e7/AppIcon-1x_U007emarketing-0-6-0-85-220.png/512x512bb.jpg", "reviews_count": null, "rating": { "rating_type": "Max5", "value": null, "votes_count": null, "rating_max": 5 }, "is_free": false, "price": { "current": 0.99, "regular": null, "max_value": null, "currency": "USD", "is_price_range": false, "displayed_price": null } }, { "type": "app_store_search_organic", "rank_group": 7, "rank_absolute": 7, "position": "left", "app_id": "1121042545", "title": "Biceps & Triceps Arm Workout", "url": "https://apps.apple.com/us/app/biceps-triceps-arm-workout/id1121042545", "icon": "https://is1-ssl.mzstatic.com/image/thumb/Purple71/v4/02/e4/9b/02e49b47-86ee-3cf6-345c-e14ba00797a5/mzl.kfhiwrly.png/512x512bb.jpg", "reviews_count": 3, "rating": { "rating_type": "Max5", "value": 3.33333, "votes_count": 3, "rating_max": 5 }, "is_free": false, "price": { "current": 0.99, "regular": null, "max_value": null, "currency": "USD", "is_price_range": false, "displayed_price": null } } ] } }
Description of the fields in the database:
Field name | Type | Description |
---|---|---|
keyword |
string | keyword UTF-8 encoding applies |
location |
integer | location code unique identifier of the corresponding location example: 2840 corresponds to the United States |
language |
string | language code unique identifier of the language available for the corresponding location example: en corresponds to English |
keyword_info |
object | keyword data for the returned keyword |
search_volume |
integer | average monthly search volume rate represents the approximate number of searches for the given keyword on App Store |
time_update |
string | date and time when keyword data was last updated in the ISO 8601 format: “YYYY-MM-DDThh:mm:ss.sssssssZ” example: 2020-09-12T00:07:43.0733218Z |
serp_info |
object | SERP data available for the returned keyword |
check_url |
string | direct URL to search engine results you can use it to make sure that we provided exact results |
items_count |
integer | the number of results returned in the serp array |
se_results_count |
integer | total number of results in SERP |
time_update |
string | date and time when SERP data was last updated in the ISO 8601 format: “YYYY-MM-DDThh:mm:ss.sssssssZ” example: 2020-09-12T00:07:43.0733218Z |
serp |
array | contains data on the SERP elements found for the returned keyword |
‘app_store_search_organic’ element in SERP | ||
type |
string | type of element = ‘app_store_search_organic’ |
rank_group |
integer | position within a group of elements with identical type valuespositions of elements with different type values are omitted from rank_group |
rank_absolute |
integer | absolute rank among all the listed apps absolute position among all apps on the list |
position |
string | the alignment of the element in SERP can take the following values: left |
app_id |
string | ID of the returned app |
title |
string | title of the returned app |
url |
string | URL to the app page on App Store |
icon |
string | URL to the app icon |
reviews_count |
integer | the total number of reviews the app has |
rating |
object | average rating of the app |
rating_type |
string | the type of the rating can take the following values: Max5 |
value |
float | the value of the rating |
votes_count |
integer | the amount of feedback in this case, the value will be null |
rating_max |
integer | the maximum value for a rating_type the maximum value for Max5 is 5 |
is_free |
boolean | indicates whether the app is free |
price |
object | price of the app |
current |
float | current price refers to the current price indicated in the element |
regular |
float | regular price refers to the regular price indicated in the element |
max_value |
float | the maximum price refers to the maximum price indicated in the element |
currency |
string | currency of the listed price ISO code of the currency applied to the price |
is_price_range |
boolean | price is provided as a range indicates whether a price is provided in a range |
displayed_price |
string | price string in the result raw price string as provided in the result |