App Ratings via requestReview()
By Mike Irving - Published: 4/3/2020

As an app developer it is easy to get disgruntled by bad store reviews, and to feel insignificant against a rival app with hundreds or thousands of reviews / ratings.

However, your application can easily have great ratings too, simply by prompting users to choose a rating. In fact, this is likely what competitor apps are doing.

Whilst it is important to address the issues of those who leave bad reviews, those users are more than likely in the minority, and you could have many more happy customers out there, untapped for their opinion.

Having an app popup a 'please rate my app' type prompt used to involve integrating a third party library, like iRate. These were clumsy, as they'd pull up the App Store, try and start the review process, and force the user to leave the app.. likely resulting in most users not bothering.

However, from iOS 10.3, Apple provided a way to prompt for a stars rating the user whilst still within your app.

iPhone and iPad users will have no doubt seen this many times in apps over the last few years.

Another advantage of this quick and easy prompt is that it is merely for a rating. It does not ask for review text.

Adding this popup could easily get you a massive number of good ratings, easily outweighing the small number that actually go to the store and give negative, textual, reviews.


When to prompt?

It is important to pick an appropriate time to show the prompt, and not just to do so immediately on load of an app.

If your app has a login, be sure to make sure the user is logged in. Prompting a user who has failed to authenticate, and you will likely incur their wrath!

Maybe think about an action that makes the user happy. Something that happens in your app which is a good / nice feature. This could be a level end on a game, or viewing of some particular data.

Count each time that event happens, and perhaps on the 10th such occurrence, fire the code.


Implementation is super easy

If you are only supporting versions of iOS (or iPadOS) newer than 10.3, then you can negate the OS Version Check if statement.


Swift example

import StoreKit

if #available(iOS 10.3, *) {
    SKStoreReviewController.requestReview()
}


Xamarin example

using StoreKit;

if(UIDevice.CurrentDevice.CheckSystemVersion(10, 3)) {
    SKStoreReviewController.RequestReview();
}


If you are still using iRate, great. Update it to the latest version of the code, and it'll use requestReview() if available, otherwise defaulting to it's legacy code to show it's own prompt / redirect you to the App Store.

Recently I updated an app with about half a dozen mainly negative reviews, and added requestReview() for the first time. It now has hundreds of reviews, with an average rating of 4.8★, the 5★ Presses easily outweighing the poor reviews.

Remeber: Reply to the reviews you get, Apple and Google Play let you do this easily. Address the issues raised, and you may convert those users into positive reviewers too!

Similar 'Rate My App' libraries are available on Android.


View Blog Entries...
Page: 1, 2, 3, 4, 5, 6, 7, 8