RespectASO scores App Store keywords without sending your research anywhere
Free, open-source ASO keyword research tool for macOS. No API keys, no accounts, and your research stays on your Mac.
At a glance
- What is it?
- RespectASO is an AGPL-3.0 macOS application for App Store keyword research that pulls data from Apple's public search APIs on your own machine and keeps every query in a local database. It suits an iOS developer who wants popularity, difficulty and competitor data without an account, and its scores are estimates unless you connect Apple Ads.
- Who is it for?
- RespectASO is worth installing if you ship iOS apps and want to check keyword difficulty and competitor rankings without a paid subscription or an API key, because the free edition works against Apple's public search API and stores every query in a local database under your own home directory.
- Can I use it commercially?
- Yes, with strict conditions. AGPL-3.0 is a network copyleft licence: if people use a modified version over a network, for example as a hosted service, you must offer them its source code under the same licence.
- Is it still maintained?
- Yes. The repository last received commits 1 day ago.
- What is it written in?
- Mainly Python, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
The privacy claim is architectural, not a policy
The distinction the project draws is between a tool that could send your data and one that cannot. The stated approach is that App Store data comes from Apple straight to your computer, never through a server of theirs, and that the app reports nothing about you or your research to anyone, with no telemetry and no analytics. The reason that is credible is the data path. RespectASO uses the public iTunes Search API, and when Apple's search API fails it reads the same search on Apple's public App Store search page instead, takes only the list of apps in Apple's order, and looks up their details through the iTunes Search API as usual. No private APIs and no paid data services are involved. The application is a native Mac app built on a Django core, and it stores its keywords, search history and settings locally. So the promise is not a promise, it is a consequence of there being no server component in the desktop edition to send anything to.
The scores are estimates, and the documentation says which ones
The scoring section is where a potential user should read carefully, and the documentation is unusually clear about the difference between the two sources. RespectASO uses the public iTunes Search API plus, when you choose to connect it, the official Apple Ads Platform API with your own free API key. The Popularity Score from 1 to 100 estimates how frequently a keyword is searched by analysing multiple signals from the iTunes Search results, including the number and quality of competing apps, keyword relevance patterns and market depth. The Difficulty Score from 1 to 100 estimates how hard it would be to rank for a keyword by evaluating competition strength across factors like existing app ratings, market dominance, publisher diversity and content relevance. The difficulty comes with named tiers, Very Easy under 16, Easy from 16 to 35, Moderate from 36 to 55, Hard from 56 to 75, Very Hard from 76 to 90, and Extreme from 91 upwards. The free edition's popularity number is a built-in estimate calibrated against Apple's official search-popularity data, while connecting Apple Ads gives Apple's own weekly values. That is the honest framing: the numbers are useful for relative comparison and are not Apple's numbers unless you supply your own key.
Ranking tiers and download estimates are the parts with a model behind them
Two features go beyond listing competitors. The first is the ranking tier breakdown, which is a separate difficulty analysis for the Top 5, Top 10 and Top 20 positions, with the reasoning given in one line: breaking into the top 5 is different from reaching the top 20. So a keyword can be reachable at position 20 and effectively closed at position 5, and a single difficulty number hides that. The second is download estimates, which are estimated daily downloads per ranking position based on search volume, tap-through rates and conversion rates. Together these give a rough revenue-per-position model, which is the number an ASO decision usually turns on, and it is a model rather than a measurement. The competitor analysis feature fills in the picture for a keyword by showing the top 10 apps ranking for it with ratings, reviews, genre, release date and direct App Store links. The Country Opportunity Finder scans all 175 App Store storefronts, or the ones you pick, to find which countries offer the best ranking opportunities for a keyword. Multi-keyword and multi-country search let you run several of those at once.
The Docker edition runs the free features in a browser
There is a second distribution and it is a different product, which the documentation is clear about. Docker provides the free edition of RespectASO, covering keyword research, difficulty scoring and ranking tracking, and the AI-powered Pro features require the native macOS app. The prerequisites are Docker installed and running, and the install is three commands:
git clone https://github.com/respectlytics/respectaso.git
cd respectaso
docker compose up -dYou then open `http://localhost` in the browser. The compose file in the repository is small and shows the shape: a single `web` service built from the Dockerfile, port 80 mapped to 8080, a named volume `aso_data` mounted at `/app/data`, a restart policy of unless-stopped, and one environment variable, `SECRET_KEY`. The container image is Python 3.12 slim, installs the pinned requirements, runs `manage.py collectstatic`, and starts gunicorn against `core.wsgi:application` with one worker and two threads, behind an entrypoint script. The single worker is worth noting, since it means the Docker edition is not a multi-user server.
Moving from Docker to the native app is a script and a volume
The two editions share a data format, and the migration path is documented as a one-time step. Your existing data carries over, and the migration is run with a single command:
curl -fsSL https://raw.githubusercontent.com/respectlytics/respectaso/main/desktop/migrate-from-docker.sh | bashYou then install the native app and verify your data is intact, and once that is confirmed you tear the container down. The order in the documentation is deliberate, because the second command removes the volume:
docker compose down # Stop the container
docker compose down -v # Also remove the volume (only after confirming native app works)For the native app, the data location is a plain directory in the user's home:
~/Library/Application Support/RespectASO/That location is what makes updates painless, since the documentation says the data lives there, separate from the app bundle, and survives app updates and deletions. Deleting the folder is the way to start completely fresh.
The native app is a .dmg, notarized, with a one-time security dialog
The native distribution is a normal Mac app. The download is `RespectASO.dmg` for macOS 12 and above on Apple Silicon, taken from the releases page, and installation is opening the disk image and dragging the app into Applications. The first launch has a documented wrinkle: if macOS shows a security dialog, you right-click the app, choose Open, then Open again, and this is only needed once because the app is code-signed and notarized by Apple. Updates work through a banner on the Dashboard that carries the release notes and a Download Update button, after which you download the new `.dmg`, drag it to Applications replacing the old version and relaunch. The repository layout reflects a hybrid application rather than a pure desktop binary. There is a `desktop/` directory for the native app, an `aso/` directory for the web application, a `core/` directory for the Django project that both share, plus `manage.py`, `tailwind.config.js` and a `docker-compose.yml`. The `core/` naming is the clue: the Docker edition and the desktop app are two shells around one Django core.
The feature list has a Pro tier sitting inside it
The features table is worth reading with the licensing in mind, because some rows are limited by edition. Multi-Keyword Search allows several keywords at once, comma-separated, with 3 per search in the free edition and up to 1,000 with Pro. The ASO Targeting Advice row describes automatic keyword classification into Sweet Spot, Good Target, Supporting, Worth Climbing and Low Volume, based on opportunity scoring, and that feature belongs to the Pro side. The rest of the table is available in the free edition: popularity and difficulty scores, the three ranking tiers, download estimates, competitor analysis, the country opportunity finder, multi-country search, app rank tracking, search history with sorting and filtering and expandable detail views, and CSV export for taking the research into a spreadsheet. The project also publishes RespectASO Pro on its own site alongside the docs and the scoring methodology, so the open-source project and the commercial tier are two halves of one product rather than an open-core replacement.
Where a local keyword tool is the wrong shape
Two limits are visible in the documentation rather than inferred. The first is that the scoring is a model. Popularity, difficulty and download estimates are all inferences from the search results, and the popularity figure in the free edition is explicitly a built-in estimate calibrated against Apple's official data rather than Apple's data itself. That is fine for ranking one keyword against another and for spotting an opportunity before you spend money, and it is not fine for a forecast in a business case. The second is the edition split. The Docker edition is free features only, so the AI-powered analysis is unavailable there, and the Docker container runs gunicorn with a single worker and two threads, which is a configuration for one person rather than a team. The alternative to weigh against is a paid ASO subscription that supplies the official figures directly, which costs money and sends your keyword list to a third party, and the trade is exactly that. RespectASO wins on cost, on privacy and on the fact that the source data is public in the first place, and it loses on the accuracy of the derived numbers. A developer doing weekly keyword research on a budget will get more out of it than a marketing team building a forecast will.
Editorial conclusion
RespectASO is worth installing if you ship iOS apps and want to check keyword difficulty and competitor rankings without a paid subscription or an API key, because the free edition works against Apple's public search API and stores every query in a local database under your own home directory. It is a poor fit if you need Apple's official popularity numbers out of the box, since the built-in score is an estimate calibrated against Apple's data and the official weekly values require connecting your own Apple Ads account, and a poor fit if you need the AI features, because the Docker edition is documented as the free edition only. Before adopting it, decide which edition you want, because the native application and the Docker stack are separate installations with a one-time migration script between them, and note that the last push to the repository was on 2026-10-14 with release v3.1.2 published the same day.
Frequently asked questions
Does RespectASO need an API key or an account?
No. It works out of the box with the public iTunes Search API, and connecting Apple Ads for official popularity data is optional. The app requires no accounts, and the documentation states that no telemetry, analytics or tracking is reported to the developer or anyone else.
How do I install the Docker edition of RespectASO?
With Docker installed and running, clone the repository with git clone, change into the respectaso directory and run docker compose up -d, then open http://localhost in your browser. The Docker edition provides the free edition features only, since the AI-powered Pro features require the native macOS app.
How accurate are the RespectASO popularity and difficulty scores?
The popularity score from 1 to 100 is a built-in estimate calibrated against Apple's official search-popularity data, and Apple's own weekly values are available only if you connect Apple Ads. The difficulty score estimates competition strength from existing app ratings, market dominance, publisher diversity and content relevance, and it is broken into tiers from Very Easy under 16 to Extreme at 91 and above.
Can I move my RespectASO data from Docker to the native app?
Yes, with a one-time migration using the migrate-from-docker.sh script, after which you install the native app and verify the data is intact. The native app stores everything in ~/Library/Application Support/RespectASO/, separate from the app bundle, so the data survives updates and deletions. Only remove the Docker volume with docker compose down -v after confirming the native app works.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/respectlytics-respectaso)Was this useful?