Product2026-04-2813 min read

Keyword Discovery for Indie Apps: Search, AI Summary, and Auto-Tracked Watchlists

You can't compete with apps you don't know exist. We added Keyword Search (top 50 apps for any keyword in 18 countries), AI Summary of the competitive landscape, App Detail panels, and a Pro Watchlist that takes daily snapshots so you can see leaders shift over time. Here's how it works.

You can't compete with apps you don't know exist.

Most indie developers pick their keywords by gut feeling. You write down a few terms, type them into the App Store on your phone, scroll a bit, decide they look reasonable, and add them to App Store Connect. Then you forget about it. Six months later you wonder why downloads stalled.

The problem isn't that you picked wrong keywords. The problem is that you never actually saw the competitive landscape. Your keyword field is fighting against the top 50 apps that already rank for that term — and you have no idea who they are, what they charge, or how strong their reviews are.

We built Keyword Search, AI Summary, and the Pro Watchlist into Apsity to close that gap. This post walks through what they are, when to use which, and how the underlying data flow works.

What "Keyword Search" actually does

Open /dashboard/keywords and you'll see a Search tab next to your existing tracked keywords. Type any keyword, pick a country, and you get the top 50 apps that rank for that term on the App Store right now. No setup, no waiting for cron jobs, no tracking commitment.

  • Top 50 apps, ranked by App Store search position
  • Country switcher — 18 countries supported (US, KR, JP, GB, DE, FR, CN, TW, BR, MX, IN, ID, RU, CA, AU, ES, IT, NL)
  • Per-row metadata: app name, developer, rating, review count, price (formatted in local currency), and genre
  • Free / Paid filter tabs with counts so you can isolate the monetization model you care about

Two extra signals are layered on top so the list isn't just a flat directory:

  • ⭐ Mine — if any app you've registered in Apsity appears in the result, the row is highlighted in indigo and labeled "Your app". You can immediately see your own position vs. the leaders.
  • + Track — every other row gets a one-click button that adds the app to your Competitor Tracking list. The same competitor system that runs daily metadata-change detection picks up the new app automatically the next morning.

What "AI Summary" tells you in 5 seconds

Reading 50 rows of names and prices is fine, but it doesn't answer the strategic question: is this keyword winnable for an indie?

On Starter and Pro plans, every search response is followed by a Claude-generated summary card. It looks at the actual response data — prices, ratings, review counts, genres — and writes one short paragraph in your locale (English or Korean). Typical outputs sound like:

  • "87% free, ratings cluster between 4.5–4.8. Top 3 led by mature apps with 100K+ reviews; newcomers face a steep social-proof gap."
  • "Genre is overwhelmingly Productivity (44/50). Two paid outliers at $4.99 — likely a niche signal that the keyword tolerates premium pricing in this market."
  • "Top 10 dominated by a single developer (5 of 10). Brand consolidation suggests this keyword is hard to break into without a clear differentiator."

The model the summary uses is claude-sonnet-4-6 with a token cap of around 1,000 — enough for a structured paragraph with one or two markdown headings, but not long enough to ramble. We deliberately keep the prompt narrow: describe distributions, flag outliers, mark speculation as "likely".

Why this is different from "just searching the App Store"

You could of course type the keyword into the actual App Store on your iPhone and scroll. You'll get a similar list. Three things you don't get from doing that:

  • Other countries. The App Store app shows you the storefront tied to your Apple ID. Switching countries means logging out and creating a new account. Apsity gives you 18 storefronts in one click.
  • Structured data. The App Store UI hides numbers like exact review count for non-leaders. Apsity surfaces them so you can compare entry barriers numerically.
  • Persistence. You can't bookmark a search. Apsity logs your recent searches automatically (5 for Free, unlimited for paid plans), and Pro users can pin searches into the Watchlist.

The Pro Watchlist: passive market monitoring

One-shot searches answer "what does this keyword look like today." The question that actually drives growth is "what is changing." Did the #1 app for "habit tracker" just shift? Is a new entrant breaking into the top 5 for "photo editor"? You can't answer those without a time series.

Pro users get a Watchlist tab. Save up to 20 searches and Apsity does this every day at 17:00 UTC:

  1. For each saved (keyword, country) pair, hit the iTunes Search API and pull the top 10 apps
  2. Store the result as a JSONB snapshot keyed by watch ID and timestamp
  3. Auto-clean snapshots older than 30 days so the table doesn't grow unbounded

The Watchlist UI then surfaces the changes:

  • 14-day sparkline showing the rank of the #1 app over time. If the leader keeps changing, the line jumps; if one app dominates, it sits flat at 1.
  • Leader-changed badge when today's #1 app is different from yesterday's
  • Per-app rank deltas when you expand a watch — every app in today's top 10 is annotated with ↑3 / ↓2 / NEW relative to yesterday

Use case: you're considering shipping into a new vertical. Pin the three keywords you'd target. Two weeks later, you have 14 daily snapshots of how stable that market actually is, what the price distribution looks like over time, and which competitors keep showing up. That's real research, not vibes.

App Detail panel: the full metadata in a click

Clicking any result row (Starter+) opens a right-side slide panel that pulls the full metadata from the iTunes Lookup API. You get:

  • Icon, name, developer
  • Rating + review count (overall and current version)
  • Price + content rating
  • Version, last update date, original release date, file size
  • Genre tags + supported languages list
  • Release notes ("What's New") for the current version
  • Full app description
  • Direct link to the App Store listing for screenshots and reviews

This was the missing piece for competitor research. Until now, every time you wanted to compare your subtitle, version cadence, or supported languages against a competitor, you had to leave Apsity and open the App Store on your phone. Now it's one click away from your search results.

How rate limits and abuse prevention work

Apple's iTunes Search and Lookup APIs are technically public and don't require a key, which means it's on us to prevent abuse. The control surface:

  • Daily search caps: Free 20/day, Starter 100/day, Pro unlimited. Counted from KeywordSearchHistory rows since UTC midnight.
  • Country whitelist: 20 supported ISO codes; anything else returns 400
  • Keyword length cap: 100 characters max
  • Plan gates: AI Summary and App Detail are STARTER+; Watchlist is PRO with a 20-watch limit
  • Cron pacing: the daily watch refresh sleeps 500ms between iTunes calls to stay under any soft rate limits

On the storage side, both KeywordSearchHistory and KeywordWatch/ KeywordWatchSnapshot have Postgres Row Level Security enabled — even though Prisma writes via the postgres role (which bypasses RLS), the policies are there as defense in depth in case any client-side Supabase access ever ships.

What it costs us per search

Honest numbers. Each search:

  • iTunes Search API call: free
  • Postgres write (history row): negligible
  • App lookup on row click (Starter+): free
  • AI summary call (Starter+): roughly $0.001–$0.003 in Anthropic credits per response

The cron-driven Watchlist refresh adds one iTunes call per pinned watch per day. For a Pro user with 20 watches, that's 20 calls/day = 7,300/year. iTunes Search is free, so the only ongoing cost is database storage for snapshots, which we cap at 30 days.

That's the whole reason we can offer keyword search on the Free plan at 20/day: the marginal cost is essentially zero, and giving away the search UI is the most natural funnel into AI Summary (Starter) and Watchlist (Pro).

How to actually use it next week

A practical workflow if you're shipping a new app or expanding an existing one:

  1. Brainstorm 10 candidate keywords on a notepad — broad terms you think describe what your app does
  2. Run them through Search — for each, check the top 50, scan the AI Summary, look for: total free vs. paid mix, the rating gap between #1 and #20, and whether the same 2–3 developers dominate the top 10
  3. Drop the obviously hopeless ones — if every top-10 app has 50K+ reviews and you're launching from zero, that keyword is a 6–12 month project, not a launch keyword
  4. Add the survivors to your tracked keywords for your app, so the daily rank cron starts measuring
  5. Pin the borderline ones to Watchlist if you're Pro — two weeks of snapshots will tell you whether the market is stable enough to commit, or whether new entrants are breaking in (a sign there's movement you can ride)
  6. One-click Track any app in the results that looks like a real competitor — the daily metadata-change detection picks it up the next morning and pings you when they update their subtitle or release notes

What's next

The roadmap pieces we're looking at on top of this:

  • Multi-keyword side-by-side comparison — pick 2–3 keywords, see overlapping apps + rank deltas across them
  • Competitor gap analysis — when you're registered in Apsity but don't appear in a search result, surface that as "you're missing from this keyword" with AI suggestions on whether to target it
  • MCP exposure — let your Claude / Cursor agents call the search endpoint via the MCP API key system, so you can ask "which keywords have new entrants this week" in natural language and get a live answer

If any of these would be especially useful for your workflow, thesupport page has my email — let me know what you'd use first.

Try it

Free plan gives you 20 searches/day, the country switcher, and the "Mine" / Track features. Starter unlocks AI Summary and the App Detail panel. Pro adds the Watchlist with daily snapshots. Sign up free, connect your App Store Connect API key in two minutes, and you'll have the first wave of keyword rank data by the next morning.

Try Apsity for free

Track rankings, revenue, and competitors. Set up in 2 minutes.

Get Started Free