01 / THREE GROUNDED NUMBERS PER KEYWORD

How Searchbop evaluates App Store keywords without fabricated search volume

Apple never publishes raw monthly search counts (such as “14,200 searches/month”) for the App Store. When third-party ASO tools display exact monthly search numbers, those figures are synthetic extrapolations. Searchbop refuses to invent search volumes. Instead, every keyword in your iOS workspace is evaluated using three transparent, verifiable metrics:

Metric Scale Data Source & Exact Formula Require API Key?
Popularity 1–100 Read directly from Apple’s official searchPopularity1to100 (country genre insight) or /suggestions/keywords/query endpoint via your Apple Ads account. Optional (Free read-only Apple Ads API user; $0 ad spend)
Difficulty 0–100 Calculated from the live top 10 iOS App Store results for that exact query and storefront: 55% logarithmic rating count strength (mean(log10(1 + ratingCount)) / 6), 30% rank-weighted title match (1 / rank), and 15% average rating quality above 3.0 stars. Requires at least 3 store results. No key needed (Uses Apple’s public Store Search API)
Opportunity 0–100 Combines popularity, inverse difficulty, and AI semantic relevance: sqrt(popularity × (100 - difficulty)) × relevance, with a 1.15× striking-distance boost when your app already ranks between positions #4 and #30, and a 0.5× dampening when popularity is below 20. Shown automatically whenever Popularity and Difficulty exist

If either Popularity or Difficulty has not been measured yet, Searchbop leaves the Opportunity cell blank rather than displaying a fake placeholder score. Built-in filters let you isolate Quick Wins (high opportunity, moderate difficulty), Striking Distance (ranks #4–#30), and Long-Tail Targets in one click.

02 / HONEST APPLE ADS DATA

Why Searchbop separates country popularity from worldwide suggestion scores

When you connect your Apple Ads account in Searchbop, the app generates an elliptic-curve (prime256v1 / ES256) key pair locally on your computer. You paste only the public key into your Apple Ads account settings; your private key never leaves your device. Searchbop uses the searchadsorg scope strictly to read keyword insights—it never creates campaigns, modifies bids, or touches billing.

More importantly, Searchbop exposes a technical nuance of Apple’s API that many tools hide:

Instead of silently mixing both numbers into a single column and misleading your localization strategy, Searchbop labels the exact source (Country Insight vs. Global Suggestion) next to every popularity reading.

03 / MULTI-STOREFRONT DISCOVERY & RANKS

Researching competitor terms and tracking daily ranks across 91 countries

Adding an app takes five seconds: paste any apps.apple.com link or numeric App Store ID (trackId) and choose any of the 91 Apple Ads-supported App Store countries. You can discover keyword candidates from four distinct sources without polluting your main tracking table:

04 / DETERMINISTIC METADATA VALIDATION

Writing listings that respect Apple’s 30-char, 30-char, and 100-byte limits

When you select the target keywords you want to rank for and click Draft Listing, your connected AI model writes all six App Store Connect metadata fields while Searchbop runs deterministic validation rules in real time:

APPLE APP STORE METADATA VALIDATION RULESpackages/core/src/aso/rules.ts
1. Title:             Max 30 characters   (Indexed by Apple — highest ranking weight)
2. Subtitle:          Max 30 characters   (Indexed by Apple — secondary ranking weight)
3. Keywords Field:    Max 100 UTF-8 BYTES (Indexed by Apple — measured in bytes, NOT characters!)
4. Promotional Text:  Max 170 characters  (Not indexed for keyword search; editable anytime)
5. Description:       Max 4,000 chars     (Not indexed by Apple search; drives conversion)
6. What's New:        Max 4,000 chars     (Version release notes; shown to returning users)

Automatic Warnings Checked Before You Push:
- Spaces after commas in Keywords ("budget, tracker") -> Wastes 100-byte budget
- Words repeated inside Keywords ("habit,daily habit") -> Wastes bytes; Apple combines words
- Overlap with Title or Subtitle -> Words already in Title/Subtitle don't need repeating
- Review Rejection Triggers -> Flags "#1", "best", "top rated", "free", "discount" in Title/Subtitle

Notice the critical technical distinction on row 3: Apple measures the hidden Keyword field in 100 UTF-8 bytes, not 100 characters. In English ASCII, 1 character equals 1 byte. In Turkish, German, French, Spanish, or Cyrillic/Arabic/CJK storefronts, accented and non-Latin characters take 2 to 3 bytes each. Searchbop measures new TextEncoder().encode(keywords).length so App Store Connect never rejects your payload on save.

05 / REVIEWABLE APP STORE CONNECT PUSH

Pushing drafts to an unsubmitted App Store Connect version

If you optionally connect an App Store Connect API key (.p8 private key, Key ID, and Issuer ID with the App Manager or Admin role), Searchbop can write your approved listing directly to App Store Connect:

  1. Never touches your live version unexpectedly: Searchbop inspects your app’s iOS versions (`GET /v1/apps/{id}/appStoreVersions`) and looks for an editable version state (PREPARE_FOR_SUBMISSION, DEVELOPER_REJECTED, REJECTED, or METADATA_REJECTED).
  2. Automatic version creation when needed: If your latest version is already READY_FOR_SALE (live on the store) and no draft version exists, Searchbop automatically increments the patch number (for example, 1.4.2 → 1.4.3) to open a clean PREPARE_FOR_SUBMISSION draft.
  3. Before/after snapshot and human submission: Searchbop records a snapshot of your previous metadata before patching the localization fields (`title`, `subtitle`, `keywords`, `promotionalText`, `description`, `whatsNew`). It never attaches a binary build or submits your app to Apple Review—you stay in 100% control of the final submission inside App Store Connect.

Honest boundaries & platform scope

iOS App Store only: Searchbop’s ASO module is built specifically for iOS apps on the Apple App Store across the 91 storefronts where Apple Ads operates. Google Play Store is not supported.

Public search pace & personalized ranks: Apple’s keyless iTunes Search API allows roughly 20 requests per minute (`3,000 ms` pacing between calls). Searchbop scores up to 25 keywords immediately when you add a batch and finishes remaining terms via the local background worker while the app is open. Displayed ranks reflect Apple’s unpersonalized storefront search API and can differ slightly from personalized results on an individual iPhone. No tool can guarantee App Store rankings or downloads.

Research context & search queries covered on this page ASO Workflow · P0

Cluster & intent: aso-workflow (Commercial / Product Workflow · P0) · Target queries: App Store Optimization tool, ASO software, iOS keyword research tool, Apple Ads keyword popularity, App Store rank tracker, AI App Store listing generator.