Examples of how we can leverage APIs and scrapers in ASO:
Automate keywords research, fetch suggested search queries from Google, track required installs to rank in Top Charts etc
5. 5
Group of methods, classes often used to get data and automate tasks
Create applications based on 3rd party services or data.
E.g.: weather app using weather.com’s API
Requires - most of the time - programming skills and a development
environment
Application Programming Interface
6. 6
Scraper = bot crawling web pages
Extracting data
40-50% of internet traffic = Scraper bots
Requires - most of the time - programming skills
Different ways to scrape:
Develop your own scraper
Software & Web browsers extensions (Data Miner, Scrape Similar)
Scrapers
7. 7
Why using APIs & Scrapers
Automate manual data collection
Speed up analysis & reporting
1 - BE FAST
Create added value by combining different APIs
Create unique tools and reports adapted to your business (competitive advantage)
3 - INNOVATE
Collect & manipulate huge volumes of data
Extend your analysis
2 - GO LARGE
8. 8
What kind of data for ASO?
Search results
Search Volume / Difficulty
SEARCH APIs
Title & Subtitle
Descriptions
Store Assets (Icon, Screenshots)
Downloads & Revenue
Ratings & Reviews
Organic vs Paid
Top Charts
Featuring
Similar Apps
APP DETAILS APIs
APP PERFORMANCE APIs
LISTINGS APIs
ASO Tools APIs + Features: http://bit.ly/2VlzYfi
9. 9
STORES WEBSITES
ex: play.google.com
Free
Risk of IP ban
/ captcha
Limited data
Where to find them?
CHECK ASO TOOLS
Usually complete
Maintained
Documented
Number of calls
GO TO GITHUB
Free resources
Open Source
Technologies
(Python, NodeJS, PHP…)
Maintenance
Risk of IP ban
for scrapers
BUILD YOUR OWN
Customized to
your needs
Time consuming
Challenging
Maintenance
APIs Scrapers & APIs APIs Scrapers
10. 10
How it looks
var store = require('app-store-scraper’);
store.search({ term: ‘games’, num: 1, page: 1, country : 'us’}).then(console.log).catch(console.log);
11. 11
Results
Output in JSON
Result can be:
PARSED through a script
Pushed to a DATABASE
Sent to a GOOGLE SHEET
PROCESSED in the way you want
12. 12
4 ways to use APIs & Scrapers
1. Spy keywords from hundreds of competitors
2. Get thousands of keywords from Google Play suggestions
3. Track Similar Apps
4. Get amount of downloads per rank in Top Charts (need paid API)
14. 14
&
FACUNDOOLANO
http://bit.ly/2ZrRiOZ
Provides google play
and app store
scrapers
&
LUCKYAPE
http://bit.ly/2vhAYSW
Simple yet efficient
Keyword Density
script
Search API/Scraper Top Charts API/Scraper
App Details
Keywords Density Script
Visualization
Logic
Text / Description
15. 15
Number of times this
keyword has been found
How many times it
appears on average in
each description
How many times it
appears on average in
this particular game
description
200+ descriptions parsed in 1 click
17. 17
&
FACUNDOOLANO
http://bit.ly/2ZrRiOZ
Provides google play
and app store
scrapers
&
BRIANMCDO
http://bit.ly/2vhAYSW
ImagePalette is used to
extract a color palette
from a given image
Search API
App Details API
Extract colors from icons
Visualization
Logic
Text / Description
22. 22
You just found an API
https://market.android.com/suggest/SuggRequest?json=1&c=3&query=games&hl=en&gl=US
23. 23
Google play section Value for 'c'
Books 1
Music 2
Apps & Games 3
Movies 4
Home Page 13
Let’s have a look at the parameters
Category
Language CountryKeyword
json=1&c=3&query=games&hl=en&gl=US
25. 25
Connect to the API from Google Sheet
1. Create a new Google Spreadsheet
2. Tools -> Script Editor
3. 'Create script for Spreadsheet'
4. Copy paste the code from
https://github.com/bradjasper/ImportJSON
5. Use this function in a cell
=ImportJson ({URL})
http://bit.ly/2ICiZzC
26. 26
More possibilities through scripting
Get more results by relaunching the API for each letter of the alphabet added to
the seed keyword:
$data = [];
$seed = ‘games’;
$alphabet = [‘a’,’b’,’c’,…,’z’];
foreach($alphabet as $letter)
{
$data[] = GetGoogleSuggestions($seed.’ ‘.$letter);
}
28. 28
Make a nice GUI and make the tool available
to more stakeholders
Combine with ASO Tools APIs to add Volumes
and Difficulty scores
Find similar APIs on other platforms:
Google web
Amazon
Other applications
29. 29
Collect Similar Apps
To identify apps potentially driving organic traffic to your app
&
FACUNDOOLANO
http://bit.ly/2ZrRiOZ
Provides google play
and app store
scrapers
with
30. 30
Top Charts API
Logic
=
Similar Apps API Record result + Parent ID
Search for your apps !
Top 500 of each store
category Similar Apps DatabaseTop Charts Database
31. 31
Results
Identified 70 apps displaying our
game Operate Now in Similar Apps
Next steps:
Build a nice GUI
Use Crons to automate this
logic every day
Use another API to get
downloads
33. 33
Logic
1. Get Top Charts
• Top Charts API
• Get every day Top 100 in Games + Categories
• Record all games
2. Get Downloads
• For each game:
• Get App Downloads for that day (AppAnnie API)
• Record Date, Rank & Download
3. Pull data
• Average of downloads per rank
• Tips
• Separate weekdays and weekends (~20% difference)
• Monitor on a weekly basis
Top Daily Installs
10 7,841
20 7,261
30 4,652
40 4,738
50 4,581
Required avg installs per day for Simulation, US, iOS
34. 34
0
2
4
6
8
10
12
14
16
18
20
10 Top 20 Top 30 Top 40 Top 50 Top 60 Top 70 Top 80 Top 90 Top 100
Thousands
Min of downloads Max of downloads Average of downloads
Identify requirements per top
Use cases
Monitor evolution of requirements
Daily installs per rank, iOS, in Simulation, April 19 Daily installs per rank per month, iOS, in Simulation, 2019
0
2
4
6
8
10
12
14
16
18
1-12-2018 1-1-2019 1-2-2019 1-3-2019 1-4-2019 1-5-2019
Thousands
100+
20-29
30-39
40-49
50-99
Top 10
36. 36
Data classification is crucial
Outcome of your application depends on how you segment your market
In Gaming:
o Hundreds of game genres & sub-genres (Mahjong, Hidden Objects)
o Only 17 store categories which are very broad (The Sims & Fifa are in the same category)
o Game per theme: Hospital games, cooking games
Tagging Automation System
o Automatically assign tags to apps based on keywords found in meta data
o Launch automatic reports for specific a tag:
o Keywords research, market analysis
o Business-value beyond ASO (support product ideation and conception)
37. 37
How to build a tagging system
1. Define the objectives of the classification:
E.g.: Centralize competitors analysis per game genre, theme and art style
2. Define the classification structure
3. Define the classification criteria
Keyword Tag Type
Mahjong Mahjong Mechanic
Mahjong Puzzle Game Genre
Pixel art Pixel Art style
Idle Idle Mechanic
… … …
38. 38
Use Cases
Identify game mechanics that our players also play
Cross-App/Affinity API + Tagging
Monitor market trends (Downloads of Hyper Casual Games)
App performance API + Tagging
39. 39
Conclusion
• APIs and Scrapers give endless possibilities
• From automation to innovation
• Competitive advantage
• Increase business-value of ASO within an organization
2 lines of code to show the 2 first search results for the term 'games' in US:
Add a preview of the game (icon, title
Build a list of competitors to analyze
Top Charts API
Top 500 games in 15 categories (Action, Adventure, Arcade etc) + Games
Save data in a database
Deduplicate results
Get Similar Apps for each one:
For each game in Similar Apps:
Record results in Database
Record the parent app
Query the database:
Find your app by package name or title
69 apps displayed Operate now that day
Extensions:
Build a nice GUI
Use Crons to automate this logic every day
Use another API to get downloads