As it is, the current review system may do the job for high volume apps such as Angry Birds, but for developers trying to eek out a living on low volume apps the current system is woefully inadequate.
To the uninitiated, the AppStore is currently divided into 155 separate stores representing different countries around the world. Users are able to either leave just a rating for an app or they can leave a rating and a review. These ratings and reviews are associated with the particular store that the user purchased the app from. Apps that have received at least 5 ratings in a given store will have the average rating show up next to the app throughout the AppStore. In any store in which an app has not received 5 ratings, no ratings will be shown for that app. Each time a new version for the app is released a new counter is started for that particular version. Once a specific version in a specific store gets 5 ratings all of the ratings for the previous versions in that store are dropped out of the apps average.
The system fails small developers in a number of ways. For example, my app, Oovium has only received the minimum 5 ratings in 8 of the 155 stores. Users in the remaining 147 stores have no idea what people think of Oovium. Of those 8 stores, only the US store has ever had any given version hit the 5 ratings limit. So, outside of the United States no users would ever know that Oovium has been rated 4.5 or 5 stars since 2010.
A week after I released Oovium in November of 2009 I made the dubious decision to reduce the price of that very early version to free. At that time anytime a user deleted an app from their iPhone, the iPhone would ask the user to rate the app then and there. The combination of a free app, aggressive rating request on delete and very early version of the app resulted in about 45 one star ratings throughout the world in 2009. Since, only the US has ever met the 5 rating limit, these ratings have never gone away. Even in the US, it can take a month or more for Oovium to hit the 5 rating limit. So, each time I release a new version, the app goes from a 4.5 or 5 star rating back down to a 3 star ratings which has a significant effect on sales and consequently my ability to pay rent and feed myself.
Furthermore, whatever the last review posted is, has an outsized effect on sales. The latest version of Oovium, 220.127.116.11 had received 15 ratings in the US store, 12 five stars and 3 four stars. From April 21st through May 21st sales had been relatively strong. On May 22nd a user named Sparky4life posted a 2 star review which said simply: "Eeh: I bought this app for 6 bucks expecting a lot more. Definitely wasnt worth it. Cool idea though." That review remained on top until June 5. From May 22nd through June 5 the per day average sales dropped 40% in the US store (from the April 21st through May 21st per day average).
But, is all of this just complaints? No, I come bearing solutions.
I am uniformed about the possible wisdom of segmenting ratings by country, but if I assume that there is some reason behind it, I put forth the following solution. Similar to the current solution, the ratings system should have buckets. The algorithm should slide back buckets until it hits the 5 rating limit. Once the limit is hit, that is the app's rating.
The first bucket is the current country and version. If a user is in the French AppStore and the current version has 5 or more French ratings than the average of those French ratings is that app's rating.
The second bucket is the current version worldwide. If the French AppStore does not have 5 ratings for the current version, than the algorithm should include all ratings for all stores for the current version. If there are 5 or more ratings for the current version worldwide than any store that doesn't have 5 ratings individually should revert to the worldwide average for that version.
The third through nth buckets are the previous versions. If the current version does not have 5 ratings worldwide; than the ratings from the previous version worldwide should also be added. If at that point there are still not 5 ratings, than the next previous version should be included until the 5 ratings limit is hit.
Only, if there are less than 5 ratings for all versions worldwide should an app not have a rating displayed. Similarly, to how iTunes works now, there should be a section for the current ratings calculation (whichever that may be), there should be a section for all ratings worldwide for all versions and possibly there should be a section for all ratings worldwide for the current version if the current country rating limit has been met.
In addition reviews should be segmented by language not country. A person in England should be shown American reviews and visa versa. As long as a user speaks the same language as the reviewer who cares about where they live.
Also, the order of the reviews shown should be reflective of the current proportion of ratings. If there are 12 five star ratings, 3 four star ratings and 1 two star rating, the five star reviews should be shown up top, not the two star review just because it was the last posted. The postings should represent the proportion of ratings. Since there is a 4 to 1 ratio of five star to four star; than 4 five stars should be listed than a four star, than 4 more five stars, etc and finally the 16th should be the two star and then repeat.
The system would solve all the problems mentioned above and help developers of quality apps and the users who are interested in purchasing them. It removes the artificial penalty to developer's for updating their app and increases their motivation for improving them. Ultimately, this helps developers and users find one another, which is the whole point of the AppStore to begin with. And maybe just maybe, this will allow some low volume apps to become high volume apps.
developer of Oovium