Improve your App Store Rating
How to target app review prompts to increase your App Store rating.
This guide will walk you through using Critical Moments to prompt users to review your app at the optimal time to maximize your app store rating.
You can also read our blog post series on app reviews, which which discusses these topics in more depth:
Step 1: Install Critical Moments
Follow our quick start guide to integrate Critical Moments into your app.
Step 2: Instrument events
Instrument events in your app so your app review prompt can fire at the right moment, and target the right users.
This includes 2 categories of events:
Events that determine the timing of the app review prompt. For example, a Todo list app might want to ask for a review after a user completes a task, or a backup app might want to ask when the user completes a backup.
Events which impact if a user is a good candidate to ask. For example, have they used all the key features in your app? Have they hit a critical error that would make their experience less than stellar?
Instrument any event you might want to use. Even if you arenโt using them all in your first version, they may be useful later for iteration. By tracking them from the start youโll have more history to query, and more options to improve your targeting.
Step 3: Create your app-review targeting condition
Prompting the right set of users to review your app is essential to improving your app rating. You want to pick users who have had sufficient experience with your app, who arenโt experiencing any negative conditions (like low battery or no network connection).
With Critical Moments, you can create a conditional string checking for the right conditions, and push updates over the air, without code updates.
To quickly get started, here is a starter condition template we suggest for most apps. Read through each condition, remove any you donโt want to include. Uncomment any of the optional checks which make sense for your app.
Step 4: Add app specific logic to your conditional targeting
The template above only considers factors that apply to every app (low battery, is the user on a phone call, etc). Itโs also important to check the user has had adequate time to engage with your app's core features before asking for a review. This assures that they have a well-rounded experience to base their review on.
Some examples:
For a game:
max_level_reached >= 5
For a language learning app:
eventCount('picked_language') > 0 && eventCount('completed_written_lesson') > 2 && eventCount('completed_spoken_lesson') > 2
For a meditation app:
eventCount('completed_meditation') > 3
The events you instrumented in step 2 can be used here, as well as the properties built-in to Critical Moments like app_install_date.
Add this conditional logic to the contition you defined in step 3.
Step 5: Pick your trigger
Each app has a special moment where the user feels its value: reaching a streak in Duolingo, completing a meditation in Calm, or finishing backing up your photos in Google Photos. In that moment the user feels maximal appreciation for the app, and its place in their life. This is the best time to prompt for an app review!
To define your trigger consider:
Which event starts the trigger:
trigger.eventName
. In the example below itโs acompleted_task
event, a custom event from our hypothetical Todo list app.Add any count checks you want. In the example below the
trigger.condition
checks that the user has completed at least 3 tasks before firing the trigger. If you donโt want a count check, this can be excluded. If youโve already defined these in step 4, thereโs no need to add them here as well.
Here is an example trigger section to be added to your config file. It will fire the ask_for_review
action when these condition are met (we'll define this action in the next step).
Step 6: Setup your app review prompt action UI
Finally, decide what you want your app review prompt to look like. To do this weโll define an action named ask_for_review
in your config file. While you can change this name, be sure to update the references to it in your trigger and conditional targeting string from earlier steps.
Youโll include the condition targeting string from Step 3/4 as the actionโs condition. The action wonโt fire unless your condition passes.
Our blog post on app review UI has a longer discussion on how to format this prompt to best help users and maximize ratings.
The simplest option is to use the systemโs native review prompt. On iOS this is an SKStoreReviewController:
The action configuration for this option is as follows:
Alternatively, you can show a custom UI offering options to review or get help. Hereโs a visual example:
The action configuration for this option is as follows. Be sure to replace the app name and help page link with your own:
You can get creative here. Explore different text in your alert, trying a fully native modal UI, a less intrusive banner request, or an inline UI asking for a review which still checks the condition using a conditional feature flag. You can also change this UI over time, updating over-the-air without app updates!
Step 7: Bring it all together
Now that you have your targeting condition from step 3/4, your trigger from step 5, and your prompt action from step 6 defined, you can add them all to your Critical Moments config!
Try it out in your dev environment and ensure everything works as expected. At this point your app review prompt should be fully functional. All that's left is to deploy it!
Optional Next Step: Improve Targeting, and Iterate
Weโve written a blog post with additional ideas to improve the targeting and timing of your app rating prompt with the goal of improving your overall rating.
Read the full blog post here, or jump to a section that sounds relevant to your app:
Exclude older devices: for memory/cpu/gpu intensive apps
Last updated