Skip to main content
A listing change is a guess until you know what the apps around you do and how your own numbers move. These commands write competitors, your category rank and your analytics and revenue into the repo, so you and your agent decide from files instead of from memory.

What needs a key

Find competitors

discover lists apps like yours in the first storefront under targets. --store google-play looks on Google Play instead. --add 3 writes the first three you do not have yet into the spec:

Pull competitors

Each competitor gets one file, per store: Every pull compares with the one before and adds what changed to appeeky/competitors/changes.md, newest first:
A change is a new title, a new version, a rewritten description, or a climb into the top 10 for one of your targets. status warns when a competitor changed something while one of your releases was being measured, because their move can explain yours.

Category rank

category pull adds one row a day per store and storefront to appeeky/category.csv. On the App Store the category and chart come from the app (a paid app is read from top paid), with no key. Google Play needs APPEEKY_API_KEY and the category:
Charts list the top 100. Below that, the rank is empty. The rank is public, so the file is committed with the spec. verify reads it as category_rank (lower is better) once there are two days of history in a window, and when no target moved and there are no analytics, the category rank decides a release. Run it daily so there is a history before each push; the daily workflow does.

Analytics and revenue

Each source comes from the connections in Appeeky: connect your stores, Search Ads, RevenueCat, Meta and TikTok there first. A source that fails is listed with its error; the rest are still written. --days sets how far back (default 90, up to yesterday). Daily files are merged by date on every pull, so a scheduled pull keeps one growing file per source. A README.md index next to them says what each file holds and which dates it covers. These are your private business numbers, so they stay in the gitignored .appeeky/data/ unless you set data: { commit: true }, which writes them to appeeky/data/, for example in a private repo.

Keyword popularity

With APPEEKY_API_KEY, coverage ranks your targets by search popularity and difficulty, and suggest adds keyword opportunities for the app with their popularity. Results are cached for 7 days in .appeeky/cache/. Competitor files carry popularity for the searches they rank for, so an agent can compare them with your targets. See Listing.

How agents use them

Agents read these files before they propose anything. The appeeky-aso specialist reads competitors and the category chart, the appeeky-reviews specialist reads competitors’ low ratings, and the ads specialist reads the data files. No CI is needed: an agent runs competitors pull or data pull when it needs fresh numbers. Related: Reviews · Attribution · On your own keys