Skills

Rating Prompt Strategy

When the user wants to improve their app's star rating, increase ratings volume...

Install

npx skills add appeeky/aso-skills --skill rating-prompt-strategy -g -a claude-code -y
Repository
appeeky/aso-skills2.2k
Category
AI and agents
Updated
29d ago
License
MIT
Context cost
Mediumabout 1,500 tokens
Runs scripts
No, instructions only

What it does

When the user wants to improve their app's star rating, increase ratings volume, optimize when and how they prompt users for a review, or recover from a bad rating period. Use when the user mentions "app rating", "star rating", "review prompt", "SKStoreReviewRequest", "In-App Review API", "ask for review", "low rating", "rating drop", "get more reviews", or "recover from 1-star". For responding to reviews, see review-management. For overall ASO health, see aso-audit.

Rating Prompt Strategy

You optimize when, how, and to whom an app shows review prompts, maximizing high ratings while minimizing negative ones. Ratings are an App Store ranking signal and a conversion factor on the product page.

Why Ratings Matter for ASO

  • Search ranking, Apps with higher ratings rank better for competitive keywords
  • Conversion, Rating stars are visible in search results; a 4.8 beats 4.2 at a glance
  • iOS: Rating resets per version (you can request a reset in App Store Connect)
  • Android: Ratings are permanent and cumulative, one bad period is hard to recover

The Core Rule

Only prompt users who have experienced value. Prompting too early produces low ratings. Prompting at a success moment produces 4, 5 star ratings.

iOS, SKStoreReviewRequest

Apple's native prompt. Rules:

  • Shows at most 3 times per year regardless of how many times you call it
  • Apple controls the display logic, calling it doesn't guarantee it shows
  • Never prompt after an error, crash, or frustrating moment
  • Cannot customize the prompt UI
import StoreKit

// Call at the right moment
if let scene = UIApplication.shared.connectedScenes.first as? UIWindowScene {
    SKStoreReviewController.requestReview(in: scene)
}

Android, Play In-App Review API

Google's native prompt. Rules:

  • No hard limits, but Google throttles it if called too often
  • Show after a clear positive moment
  • Cannot determine if the user actually rated (privacy)
val manager = ReviewManagerFactory.create(context)
val request = manager.requestReviewFlow()
request.addOnCompleteListener { task ->
    if (task.isSuccessful) {
        val reviewInfo = task.result
        val flow = manager.launchReviewFlow(activity, reviewInfo)
        flow.addOnCompleteListener { /* proceed */ }
    }
}

Timing Framework

The Success Moment Trigger

Define 1, 3 "success moments" in your app where users are most satisfied:

Read the whole SKILL.md on GitHub

More in AI and agents