Preventing iTunes Preview glossy app icon

I recently posted a question on Twitter that was left unanswered.

Multiple online searches also left me without a solution, so I decided to test a possible solution with a new update for an app in the App Store and it turns out I found the answer.

The problem I had can be seen with the Facebook app icon on iTunes Preview on the web:

iTunesPreviewBefore

The Facebook app icon on the iTunes Preview on the web shows the app icon with a glossy overlay, a trend that’s pretty much gone with iOS 7 – and I don’t recall the Facebook app icon having a glossy overlay for years either. If you look at the app in the iTunes App Store or on the App Store on your device it does not have a glossy overlay. Furthermore, the rounding of the icon is also different than App Store previews elsewhere (though my glossy-solution won’t solve that issue).

With Xcode 5 I had moved over to using Image Assets which lets you manage all images for app, including icons used in the app for example, as well as app Launch Images and App Icons:

XcodeImageAssets

With Image Assets you can supply various app icon sizes and you do not have to specify them in the app’s .plist and you are also able to specify whether an app icon is pre-rendered (telling Apple not to add a glossy effect for pre-iOS 7 apps). This setting does in fact ensure that you app icon won’t be rendered with a glossy icon on the App Store in iTunes and on devices, but it does not ensure that your app icon won’t have it on iTunes Preview on the web!

In order to get rid of the glossy effect on your app icon, you will have to re-add the UIPrerenderedIcon flag in your app’s .plist and set it to TRUE<. In Xcode this is converted to Icon already includes gloss effects and should be set to YES:

XcodePlistFlag

Once you add this flag to your app’s .plist the app icon in iTunes Preview on the web will new render without a glossy overlay! Tada!

iTunesPreviewAfter

App Store screenshots and the status bar

Two developers I follow on Twitter have asked pretty much the same question in recent memory: “Should I leave the status bar in iOS App Store screenshots or crop them out?” (link, link).

Crop out the status bar.

I replied to both on Twitter, but thought I’d write up a short post on it. A few people replied to the above tweets saying you should leave the status bar in the screenshots but take out the carrier. Someone even said they’d want to know what colour the status bar is for an app. Not sure customers would decide to buy an app based on the colour the the status bar to be honest.

Here’s what Apple says in the iTunes Connect Developer Guide, taken from the section Before you begin: Creating Assets with the Correct Specifications

The first screenshot you upload in iTunes Connect is used as the main screenshot. It is visible on your app product page on both the desktop App Store and the device App Store. For best results, do not include the iPhone or iPad status bar in your screenshots, and follow the requirements given below. Those dimensions allow you to remove the iOS status bar from screenshots so that you can showcase only the active app area, without distractions.

You can refer to Table 7-3 for screenshot dimensions for the various devices, both with and without the status bar.

But again: Crop out the status bar.

Use of status bar styles

On a related note, I strongly suggest going with a black status bar unless a status bar matching the colour of your navigation bar really enhances the UI.

The Keypad view in the Phone app shows a nice use of the default status bar where the top view seamlessly blends into the status bar. I also find that the status bar looks best when matched with the default navigation bar (blue). Other colours often don’t look right.

You can also mix and match throughout your app. The built in Clock app is a great example of this. The status bar compliments the navigation bar and background on the first two tabs, but the last two views are mainly black, so the status bar is black for these two tabs as well.

Introducing GiftKit – gifting made easy

I love Appirater and enjoy how simple and easy the process of letting users easily review apps in the App Store.

In a previous #idevblogaday post, I wrote about how to get your users to spread the word and their love for your app in a post entitled Assisted word of mouth: Get users to sell your app.

In this post, I wrote about App Store Gifting and how awesome it actually is. To recap: You’ve already sold your app, the user loves it and wants to share his/her love for it. Gifting is a great way to share the app, and once a user has spent $X.XX, they’re usually more apt to want to Gift your app to a friend or someone in their family. Read the post for more insight.

While Gifting was just one of the ideas I included in my post, Gifting really seemed to be the key idea that most people loved and many wanted to include in their apps.

So, today I am releasing GiftKit. It’s basically Appirater, but for gifting.

GiftKit is a small utility class that allows you to prompt your users to Gift the app via the App Store, spreading the love to their friends and family.

Simply add GiftKit to your iOS project and call one of the various methods to increment uses and launches and eventually prompt the user to Gift your app via the App Store.

Simply add GiftKit to your project and call one of the methods provided. Change days/uses/alert text in GiftKit.h to suit your needs.

Optionally, add a Gift this app to allow the user to Gift more times in the same version – or without having to wait for the prompt! Call [GiftKit giftApp] to jump directly to your App’s App Store page.

By default 5 days must have passed before the alert appears. Furthermore, either 15 uses and 25 significant events must occur before the alert appears.

Add -1 to significant events in the header file if you only care about the launch method calls.

Here’s a screenshot of the UIAlertView in action:

Clone the repo here: https://github.com/runmad/GiftKit

Be sure to check for updates, as I might try and improve it a bit later. If you have any ideas feel free to comment or help out on Github :)

Follow me on Twitter: @runmad and be sure to say “hi” at WWDC next week if you’re there!

Assisted word of mouth: Get users to sell your app

You can spend lots of money and time advertising and promoting your app. Advertising your app through social network sites and Admob and the like is pretty well the most wasteful and ineffective way of spending your money, in my opinion.

Spend your money and efforts in developing an amazing and great-looking app that will naturally attract users to your app. Spend the money on hiring a graphic designer or other efforts that goes directly towards making your app better.

Most users find out about your app from friends

In this post, I will detail another great addition you can add to your app, which will help sell more copies, let’s call it: “Assisted word of mouth.”

While everyone strives to reach top App Store ranks and have their app featured on various lists, only a select number of apps reach the top rankings, and mostly only for a somewhat short period of time. The top ranks and featured lists are a great way of attracting new users, but these spots are mostly occupied by the same apps week after week.

Consider how often you have heard “Check out this app I just got!” or “Can I check out what apps are on your iPhone?”… That’s right, lots and lots of iOS users hear about apps from their friends, a reliable source they can rely on for input about the latest and greatest apps. A lot of users also get a kick out of being one of the first users of an app, or the one to discover a new great app. “Check out this app, I have discovered.”

Let’s assume your app is great, your users simply love it and you could potentially sell a lot more, if only more people knew about it.

Gifting

I suggest that you include an easy way for your users to to share the app and their experiences with the app via email, SMS, Twitter, Facebook and most importantly through gifting.

I have a feeling lots of App Store customers do not know about the gifting feature. Imagine if you’ve already convinced one person that your app is awesome, they’ll actually purchase your app again and give it to their friend/family. You’ve just saved yourself having to try and get that person’s attention and convince them why they should buy your – their friend and your current user just did!

While this isn’t factual, I actually think users find it much easier spending another $1.99 (or whatever your app costs) to give a great app to a friend, over buying the app without knowing anything about it. Once the user is hooked and love your app and want to share the experience with their friends, they’re more prone to purchase to app again for a friend.

Sharing options

Following in the footsteps of my previous #idevblogaday post, App support: What’s it worth?, I suggest that you place a simple link in your settings view, or perhaps on your main screen if your app is a game, calling it “Share [APP NAME] with a friend” or just “Share App” if you’re using a smaller button.

When tapping the button, bring up a UIActionSheet with your sharing options. In this example, I am not including Facebook, but add it if you want to. Note: Be sure only to display those options available on the device (so no “Email” option if the device doesn’t have an email account setup, and no “Text Message” option if the device does not support text messaging).

Custom, direct-to-App-Store URL

Create a custom bit.ly (or other) to your app, so it’s easily read and remembered. For example, I created http://bit.ly/NextTTC for my app Next TTC.

Make this link directly to the App Store, not your website. You can only assume that a user will share the link with someone they already know have an iOS device, getting them one step closer to a purchase when they don’t have to visit your website, however great it may be. When they open the link on their iOS device or desktop, it will automatically open the App Store (or iTunes preview site if iTunes isn’t installed).

Use the link in all the sharing options even use it for the gifting option, since it allows you to track clicks. Or use in-app analytics, or create several custom URL links for each option if you want to see stats for each.

Use a short and catchy tagline to use in text messages and Twitter, so it fits within a tweet and text. The users can add/erase text if they want. I use the following: “Get instant, location-based TTC streetcar arrival predictions with Next TTC for iPhone http://bit.ly/NextTTC”.

For the email sharing option, consider creating a nice template instead of just “Hey check out this app {link}”. Mike Piontek (@robotspacer) from June Cloud uses a beautiful template when sharing deliveries (and it’s also a great way to share a link to his app) in his app Delivery Status. MFMailComposeViewController takes HTML and CSS, so you can get pretty creative.

For Twitter either use have the user select their preferred app, or just link to Twitter (twitter://post?message=TEXT) or another app like Tweetbot (tweetbot://screenname/post/TEXT) or just the Twitter website (http://twitter.com/?status=TEXT).

Lastly, the gifting option. As I mentioned earlier, this feature is somewhat unknown to lots iOS users, so if the user selects this option, a brief description in a UIAlertView is probably a good idea.

Once all this is done, you should be all setup and hopefully see some additional sales without a lot of additional effort!

A few points from this post:

  • Traditional marketing and advertising efforts can be expensive and exhaustive
  • Word of mouth is the most effective advertising you can find!
  • Give the user several options/ways to share a link with their friends: Twitter, Text Message, Email, Facebook and App Store Gifting
  • Use a custom URL which links directly to the App Store, so you don’t create an extra step to your website where you potentially loose their interest
  • Consider tracking effectiveness of each option. If gifting is pretty effective, maybe place it in its own option right on your About/Main/Settings screen
  • If you got the time and skill, create a nice email template
  • For the gifting option, briefly explain to the user what will happen and what steps are required to gift your app, since gifting isn’t a widely known feature of the App Store

Hope you enjoyed this post! By the way, I’ll be at WWDC again. If you’ll be there too let me know. Follow me on Twitter (@runmad) and let’s meet up!

App support: What’s it worth?

Hello again! I previously wrote a number of entries for #idevblogday last year and am happy to be back (especially with the new bi-weekly format). Since I last posted I’ve released a new app, Next TTC, a location-based arrival prediction app for Toronto’s streetcars (soon buses). Check it out if you live in Toronto and ride the TTC :)

In this post, I’ll be talking about customer support/service and what it may mean to you, your customers and your sales. I had been drawing blanks for a subject, so it’s based on a suggestion after discussing this with a friend. Skip to the end if you’re pressed for time for a important-points-summary of today’s post.

In-App Support Emailer
I always add an in-app email feature to my apps, where my customers can easily and painlessly email me on a support email address I have set up for this purpose. When the user taps the feedback/support button, I display the following alert:

This generally help establish a purpose and set some general expectations for the feature. I also take the chance the automatically add some variables that may be of use if I need to debug a problem the user has, saving me and the user time emailing back and forth to establish which device the have, what version of the app and OS they run, etc.

While this feature is great for all apps, you may want to leave it out in a free app, depending on it’s features or purpose. If you have IAP, go for it, but if the app makes you no money whatsoever, perhaps reconsider adding the in-app emailer – because you will have to do some support work!

The reason for this is that you will get more emails than if you made it harder for the user to contact you (via support link in the iTunes App Store, etc.). However, in my experience, they’re often just short emails, asking for a specific feature, asking for help on something, and it often takes me very little time to answer them. Most of the time, I am able to copy a previously sent answer, since a user may have had the exact same question or issue. For example, in my app Next TTC, I’ve had more than 20 customers email and ask me why they cannot get arrival predictions for the streetcars that run at night. While this is stated in the App Store description, it is perhaps annoying to answer the same question over and over, but it’s easy if you can copy previously used answers, and I’ve had a lot of great feedback from customers who are genuinely happy about my prompt replies, even if it wasn’t exactly what they were hoping for (unfortunately data isn’t provided for the nightly streetcars at this time, if you were wondering).

In-App FAQ/Help article
Another quite helpful and fairly painless feature to add to an app is an “FAQ” or “Help” section. I won’t discuss the technical part of integrating this, but a solution could be local plist (or server-side) or through a UIWebView using jQTouch to make it look somewhat native.

While an FAQ or Help section is great and useful for anyone in the beginning, my suggestion is to not spend a lot of time on this feature (or the content) until you actually have an idea of the most frequently asked questions. If you combine it with the above in-app support email feature, you will quickly get an idea of what your users ask the most from the emails you receive.

This way you won’t be spending time on FAQ content that nobody will read anyway. I’ve seen apps with help sections that explain the most basic parts of the apps UI, such as how to go back in a UINavigationController stack (obviously without the technical terms), and other completely standard things that almost all iOS apps that use UIKit have. Even if you’re using custom UI or gesture-based UI interactions, consider whether it’s completely necessary to spend your time writing all that content. Besides, your UI and interaction with it should be intuitive and require no explanation at all, but come naturally at least after a few uses ;)

Once you have an idea of the most asked questions, comments, etc. through the in-app support email feature, put together some articles that your customers can read. If you still receive emails about a questions answered in an FAQ article, simply refer to the article in your app in a friendly manner and let them know they can email you back if they still have any questions or concerns.

Games should usually include a tutorial or guide, which does the job of Help articles. You can always add an in-app support emailer or help articles as well, of course.

How much support does $0.99 buy a customer?
Well, technically you only get 70 cents. Or 70% of however much your app costs.

It’s up to you to decide how much support you want to provide for your customers. If you’re finding you’re receiving a lot of emails regarding bugs or issues with your app, you’re definitely doing something wrong and you need to address the issue with your app. If your UI or a feature isn’t self-explanatory and easy to use and confuses your customers more than it helps them, remove it or change it.

In my experience, answering support emails can be done fairly quickly (for most devs, unless you have a best-selling app with huge amount of users). I usually take a small portion out of my day and answer all emails (if any, I may add) quickly and painlessly. If I only get one a day or so, I’ll just do it whenever I get a chance, on the streetcar, on the couch or during my lunch.

Be careful answering your support emails from your iPhone. Depending on the length and answer, answering it on your iPhone really does show in your language. Sitting down at your computer to type out a proper answer is always a better idea, and it also makes it possible to use signatures as a quick way to answer a frequently asked question.

What does great customer support buy you?
While support requires a bit of work on your behalf, one might wonder if it’s worth it. Basically you’re offering free support to customers who have already paid for your app. Your time spent developing the app is already more than what $0.99 should buy and I think many will agree.

From personal experience, a number of my support communication emails have lead to some great word of mouth and some great reviews from highly satisfied customers. I have even had customers where I have simply not been able to help them (it’s been an issue with the data, their device specifically or something else completely out of my hands), but because I have been honest, friendly and prompt, my customers have responded extremely positively and are generally always happy with my support, regardless of whether I was able to solve the issue immediately, or bring them good news about upcoming features.

I’ve also taken the opportunity a few times to tell the user they’re more than welcome to add a quick rating/review in the App Store. You’ll have to judge the situation and please don’t add it in your first response. If you’ve been emailing back and forth and the customer seems happy, go ahead and ask. Otherwise let the user judge and review/rate if they find it’s worth it.

A few points from this post:

  • You might be a developer, but you’re also expected to provide some level of support.
  • Remember, these people (usually) paid for your app. Regardless of the cost, you have their money and they deserve some support – especially if your app isn’t working as expected.
  • Don’t get cocky or disrespectful, no matter what the customer writes. If their email is hurtful and you cannot say anything nice, don’t reply. It’s not worth it, and you’ll piss them off even more and waste your time (the user can threat you with a bad reviews, or get upset and just do it anyway). I know you’ve spend weeks if not months and many long nights coding your app, but do not take it personally. Unfortunately the most happy customers and users are usually the least vocal majority. Move on and focus on all the positive things people are saying about your app!
  • Add an easy way for your customers to contact your for support within the app, and remember to add anything to the email body that may be useful for your debugging (without being intrusive and adding sensitive user data).
  • Based on FAQ through your in-app support emailer, add a FAQ/Help section.
  • Take your time to reply back to your support emails. Preferably use a computer (or an iPad with a bigger screen), because it may show in your writing style if you reply on your iPhone. Don’t let support emails sit for days. The longer you wait, the more time you give that user to submit a negative review as a way to report the bug, and they may not remove it even if you reply and resolve their issue.
  • In-app support email and FAQ section will increase your app’s rating score. If your customers cannot contact you easily to complain about bugs or issues with your app, they will definitely do it with a one star review, which can really hurt your App Store ratings!
  • On the other hand, if you provide great support, customers will return the favour (even if you don’t ask them to) and submit a positive review for your app and help spread the word to their friends on Twitter/Facebook.

Hope you enjoyed the post. Feel free to add your comments from your experiences dealing with your customers and app support. If you’ve got some great tips, even better!

Social game marketing

I’m not a game developer and was actually not planning on doing a game-related post for #idevblogaday, but I’m currently reading Game-Based Marketing about how marketers can use game mechanics to create and foster long term customer loyalty. Basically think frequent flyer programs, points cards and any other type of loyalty program out there.

As a marketer, the premise of the book is quite interesting, and today almost any major chain will have some sort of loyalty program – even in smaller businesses you will find sorts of loyalty program through which you can earn points, loyalty and status amongst peers (much like achievements, leaderboards, etc. that you’ll find in games).

It got me thinking a bit about how game developers should try and utilize the same kind of systems that are in place for loyalty programs. For example, a big part of loyalty programs is earning points, achievements and essentially status within a certain program. People love showing off and they love earning points and higher statuses – even if it doesn’t really get them anything in return.

So in this week’s post I’ll discuss various ways game developers can implement different strategies that are found in loyalty marketing. I’ll discuss features that are well known and quite common in most top 25 App Store games, but at the same time, I hope to bring to light some aspects of these features.

Leaderboards
If you’re currently reading this and have a game in which you do not have a leaderboard, stop right now and start integrating one immediately.

A great part of the fun of playing games are being able to share with your friends your scores, points, etc. Also, being able to compare yourself directly with other players or friends playing the game is an important part of the fun.

The best way to do this is through an integrated leaderboard system. This allows the player to easily keep track of their score and abilities and compare them with their previous scores and how they rank amongst their friends and other players worldwide (or perhaps even cities, states, countries, etc.).

Game Center, OpenFeint, etc. provide easy-to-implement and solid foundations for leaderboards. These are also awesome (and free) marketing tools. For example, I have found myself looking through my GC friends games lists to find new games to play. It has also kept me coming back to certain games because GC has provided an opportunity to indirectly challenge me to continue playing the game to beat certain friends scores. This in return provides you as a game developer to cross-advertise your new game releases or sales for your other games.

Although competition is great, I wish more developers would integrate GC or OF (which also offer built-in GC integration), instead of trying to roll their own or using a less popular social game network. For example, when GC was released, I found myself revisiting old games to beat my friends’ scores or earn achievements. Those games that still do not offer a widely-used system just doesn’t draw enough attention, and I cannot be bothered to find out my friends’ usernames on the not-so-well-known social game networks.

Achievements
Achievements are also a great way to provide a leaderboard-type system in your game. It also helps prolong the experience and fun with your game.

A few examples of use of achievements in games:
• Achievements provide an opportunity to easily reward the player throughout the game. Levels, new upgrades, etc. This helps create a path for your game and a path for completion.
• Think of achievements that would require more practice or more time playing, basically ones that would prolong the game for players for after they’ve finished all levels. For example, Cut the Rope could use a timer and an achievement for finishing certain levels in certain amount of time, instead of just the three stars. You do earn more points for finishing a level fast, however this isn’t apparent, and after finishing the levels I cannot see how much faster I should have been in order to earn more points. Another example of achievements is Trainyard, which could give an achievement for finishing all stations in one city by using only X amount of tracks. These two examples provide a way to challenge the more hardcore players since they’re considerable more difficult than pure completion of a level, and it also does not hinder the completion of the game for the more casual players.
• Be careful not to make achievement nearly impossible to obtain. For example don’t make an achievement for “Played 100 hours” if your game basically takes an hour or two to finish all levels. Unless there’s a lot more to your game after having finished it, you can’t expect anyone to want to spend so much time playing it – even if they love going for those achievements.

Again, Game Center and OpenFeint provide great frameworks for integrating achievements as well as achievement leaderboards and friending systems. Use one or both of the solutions and think of ways to achievements into your game to make it more fun and challenging. They’re completely free and helps save you a ton of work instead of trying to roll your own.

Small side-note to leaderboards and achievements: Add a button somewhere in your games’ menus that let’s the user see their scores and/or achievements. Both GC and OF offer modal views for these. This way the user doesn’t have to leave the game to check an achievement or whether they’ve now trumped their friend’s top score, and you also help bring them right to the information they’re seeking – not leaving them to go to GC via the app itself, for example, and drill through the view hierarchy in order to find what they’re looking for.

Social Sharing
Sharing high scores, achievements, etc. is great opportunity to advertise your game and something that players love to do!

However, instead of just providing a Facebook and Twitter button for sharing a score or achievement, why not go a littler further and help the player out with deciding when it’s appropriate to do so? For example, what might seem like a low score to one player, may turn out to be in the top 5% of the leaderboards. After completion of a level or game, the developer could integrate a system that looks up the score and based on various factors it may say something like “Holy shit, your score was super high, you’ve just entered the top 10%, you should totally brag about it on Twitter and/or Facebook!” – or something like that. This helps the player realize the worth of their skill and score and may actually be more effective than just having a button that enables sharing of a score on social networks.

Also, don’t just tweet a score plus a link. Players will look through this as a pathetic attempt from you to get some free advertising out of them. They already paid you money, why should they help you out more, even your game is the most awesome one ever made?

I realize you don’t have a lot of characters to work with on Twitter, but including more than just the score is important. If I see “John just scored 13,453 in [some game]!”, I don’t really know whether it’s a good score and it doesn’t provide me with a way of relating this score to my own skills (unless I have played it). However, if I see something like “John just placed in the top 5% in [some game] with 13,453 points!” I would be more interested and perhaps more inclined to try out the game and beat John’s score if I know we have similar skill and scores in most games. It also gives both John and his friends a better understanding of just how awesome getting 13,453 points is. Without relating the points to anything, no one can see whether it’s actually a good score if they don’t know the premise of the game and the value of those points. John might actually be tweeting a super low score (compared to his friends’ scores), so helping John decide when it’s an appropriate time to share his score helps him save the embarrassment of tweeting a humiliatingly low score.

Basically, adding more substance to your sharing feature gives you more respect from your user (surprise and delight) and also makes them more likely to actually indirectly want to help you advertise (which you have to admit; you’re adding this feature more for yourself to advertise than actually just scoring some random score).

Another great way of sharing content from your game is something like Matt Rix‘s Trainyard solution sharing system. It works both as a way for players to show off their skills, but also helps more casual players progress through the game. Hardcore players love showing off and it also provides a way to prolong the game for hardcore players as they may try and find new solutions that haven’t yet been done. Linking this with the previous paragraph, one thing the game could do was to provide a small notification if a solution is 100% unique by saying “You have created a unique solution not yet available on Trainyard.ca, would you like to share with the community?” This helps the player realize their skill compared to others and again provides the more hardcore gamers with replay value, as they may go back to some levels in order to make new solutions, not yet seen by the community. That in itself could create a separate leaderboard for players which shows the top 50 players who have come up with and shared unique solutions, again improving the experience and loyalty further for those committed to the game and the community that surrounds it.

Game save syncing
This is as much of an idea as it is a request to all game developers out there.

Universal games are starting to become more common, now with iPhones, iPods touches and of course iPads selling like crazy. I own both an iPhone and an iPad and love when developers take a bit of extra time to release their game as a Universal game – even if the iPad is pretty much the same as the iPhone game, just larger. Of course, not all games scale as easily from iPhone to iPad in terms of the experience with the extra space, but for games that I play both on my iPhone and iPad, I would love to see server-based game save syncing or whatever you want to call it. However, this doesn’t just go for Universal apps, since many people have several devices. If they have the same game installed on both their iPhone and iPod, why not make the game experience more fluid?

The premise of this idea is dead simple: I play a game on my iPhone on the subway home from work. When I get home and hit the couch later that night, I want to reach for my iPad on the coffee table and play the exact same game, from the exact point I left off. I don’t want to start over from level one. I don’t want to have to earn the exact same achievements I just unlocked four hours ago (especially since they’ll appear as unlocked just fine if I head into Game Center).

Again it might be something 80% of users wouldn’t need. You may never have had to bring your game saves on your Wii controller to your friend’s place or transfer your PS3 game saves to your buddies PS3 so you can show of your collection of sweet cars in GT5. But it’s something we have now seen in console games for well over a decade now. As much as it may be a less used feature, it’s something I just don’t understand why is missing on such a portable platform.

It could be somewhat simple, depending on what your game exists of. When you start adding stuff like specific amounts of bullet ammo left, percentage of health left, points in each cleared level, etc. we’re getting a bit more advanced, but it’s definitely possible, regardless.

Game saves could be saved on a server and retrieved using an email and password. I don’t know the exact workings of GameKit, but maybe a successful login to Game Center could prompt a “It appears you have a game save available in the cloud based on your GC username, would you like to sync this device and keep your progression in sync?”. (If anyone at Apple is reading this or if you know someone working on GameKit, please let them know to consider adding game save-syncing to Game Center :))

Or even something like bluetooth sharing of game save states, bumping devices, or sharing via a unique code displayed on one device and entering the code on the other device would retrieve whatever was just uploaded to the server.

Just a few ideas of how you may be able to work it out, but seriously, this is such a great feature that would really set your game apart from others (apart from being a unique experience in itself, of course) and your users will love it.

I have yet to come across a single iOS game that does this, so if you know of one, please do share it in the comments, so other developers can check out and perhaps get some ideas for their own game.

Wrapping up
I hope I have sparked some ideas into your head as to what you can do to enhance the experience with your game and creating some loyalty amongst your customers. Some of the above ideas definitely will enhance and prolong the game experience, adding value to your game from what is actually very little work in most cases, implementing GC or OF or enhancing score-sharing on social networks.

Thanks for reading and please do leave a comment!

How updating apps could multiply sales

This will be my first #idevblogaday post, so I’ll just briefly introduce myself and then get on with my post. Follow me on Twitter: @runmad, by the way :)

I’m writing this on a flight from Toronto to Copenhagen on an iPad so hopefully it’ll turn out alright. I was afraid my turn for #idevblogaday was going to be exactly when I was going away on vacation, and sure enough @mysterycoconut tweeted @ me the day I was leaving that I’m up, so here we go.

I’ve done development for about 1.5 years now, Objective-C is the only programming language I know. I have a degree in marketing and management communication and years of experience in graphic design. I love experience marketing and sensory branding. I got into iOS development because I loved how (then) iPhone OS brought to life an amazing UX through great hardware, UI and functionality. A great iPhone app is a mix of marketing, design, experiences, sensory triggers and of course, code. So I started learning the coding part and have found that knowing all the rest really does help and benefit you!

I work for online retailer and I have built an iPhone app that allows you to browse our products, purchase them, check orders, etc. You can check it out here.

They’re not “users,” they’re your customers
In developing apps (games included) for iOS devices there’s always a question of doing updates. You’ve released a rock solid 1.0 and then comes the mandatory point update(s) with nasty bug fixes.

Your app sold a few hundred copies (or thousands, congrats) after first releasing it and has since then steadily not sold very well. Should you care to do actively pursue further development and thereby bring more features and goodness to your customers who already paid for your app? Let me try and convince you to do just that.

I’ve read a bunch of posts on IAP and how this has revitalized sales for a game. Noel Llopis’ (@snappytouch) Games From Within blog to read a few posts on his experiences with using IAP to boost sales for his game Flower Garden. IAPs are definitely awesome, and I guess this post will be more of a idea that would compliment IAP in certain instances (depending on what kind of app you have).

I had no Internet connection while writing this, so I have no links for facts and figures but go by general knowledge and my perception of scenarios. Trust me, it’ll be awesome anyway, facts are hugely overrated, right?! You might not agree with me, but feel free to leave a comment and we’ll talk ;)

Joking aside, let’s have a look at why I think you should create and submit meaningful app updates, somewhat regularly.

We all know that App Store customers are greedy. You give them a free app, they want an arm. You sell your game for less than a buck and they complain about there only being 150 levels which meant they finished it in a day because it’s so good (telling you they’ll reward the last, fifth star when you release an update with a billion levels).

Let’s stick with that dollar. How much are you as a developer, as the seller, willing to put into your work after it’s out of the door and the first point updates are released to fix those nasty bugs? I know developers generally hate when customers complain about a one dollar app in a review, but look it this way: They paid you money. They bought something from with their money. They feel entitled as your customers. I bet many indie developers didn’t expect to have to deal with customers when they started iOS development, and are unfortunately surprised by it. It might just be a buck, but this dollar can lead to much more money if you take care of your customers. Give them more than what they came for and they’ll help your sales grow by spreading the love through word of mouth.

The dilemma you have is whether, once a customer has paid for an app, should they receive more? Sure, you can sell level bundles or other objects related to a game with IAP, but perhaps you could also just give this to your customers for free… Or if you have a non-game app, it’s not easy to sell app features as IAP, and I’ve never personally been a fan of apps that have a “Pro” version.

Spreading the love
When was the last time you told your friends not to miss out on a dinner at that restaurant where the waiter treated you like shit? And how many times have you been back to that awesome bar where they tend to free-pour rather generously?

Let’s look at free-pouring. Angry Birds. I would say it’s probably the most popular app ever. It rival sales numbers (not profits mind you) of major console franchises and why wouldn’t it, it’s a buck! Buying this game is a no-brainer for most people, even the greedy ones. You get so many levels it’ll take you days if not weeks to finish. Once you’ve finished they throw more free levels at you in a free update for that one dollar you spent two months ago. They’re clearly insane, right?!

In my opinion (even if this isn’t their intention) it’s a quite clever marketing move. Every single time Rovio releases an update to Angry Birds you’ll tap open that game while riding the subway with hundreds of other people seeing you play this game. You’ll remember how much you love that game and be sure to tell your friends with iPhones (and now other platforms) to download it. You haven’t left a review yet, but feel that now is the time to do so. You’ve had so much fun playing this game – and still do with new levels! – that they deserve that quick 5 star review.

App update sales multiplier
Let’s say Angry Birds has sold 1,000,000 copies (it’s sold a lot more but let’s stick with a nice, huge, round number). Of this 1m downloads, 95% still have it installed and have played it within the last two months. (It’s my belief that a paid app actually stays on a users home screen way more permanently than a free app. It’s like throwing out a dollar and it doesn’t take up any physical space in your life even if you don’t use it. Apps that stay on the device (not just iTunes) are way more likely to receive attention when updated in the App Store.) Angry Birds gets an update with fixes but, more importantly, a new world and 30 new levels or so. Of these 950,000 active customers, let’s say most will update at some point. 10% of these people will tell their friends. On average these 10% tell two friends about the game. Of these 190k people who now know about Angry Birds, just over half will go to the App Store and download Angry Birds for a dollar (it’s a no-brainer price).

So now, from a free update, Angry Birds just made another $100,000 (before a 30% cut) on top of that 1 million copies already sold. Of course I was using the highest grossing game, but I still believe it this ripple effect holds true for your apps. If you reward your customers and exceed their expectations, trust me, they will reward you back by word of mouth, which lead to more sales.

You’ll always have those vocal, annoying customers with horrible reviews and ridiculous expectations, but don’t forget the people who often are the least vocal to you are often really vocal about your app/game to their friends. Who do you trust most for advice on awesome apps, people who are clearly idiots from app reviews or your real life friends or people you follow on Twitter? My guess is the latter two. Just like the restaurant example earlier. You’re probably more likely to visit a restaurant based on a great review from a friend who recently went there compared to a review in a newspaper.

Active development
You may not be selling millions of copies of your app like above, but it doesn’t mean you shouldn’t pursue active development if your app has something going for it. Updates will remind your customers about your app. They’ll revisit the app and it’ll be first in their mind been their friends asks what new stuff they’re using on their iPhone, or which apps they should get within X category.

I know this comparison may sound insane, but it’s rather valid: Coca-Cola technically doesn’t need to advertise. It’s not like we don’t know what it is, where to buy, how it tastes and how it makes you feel, right? True, but when Coca-Cola spends millions and millions of dollars to advertise, they’re reminding you of the brand over and over and over. If you hadn’t just read the first part of this paragraph, I would bet money that you would have said “Coca-Cola” if I asked you to name a soda brand. This is because you have seen so many Coca-Cola advertisements and heard the brand name so many times over the years that it’s imprinted in your brain!

Same goes for your app. Remind customers about your app and be the first thing to come to mind when they think of awesome apps within your apps category/core functionality.

With all this said, don’t just release meaningless “bug fix” updates. People will see straight through this after several of seemingly pointless updates and only get annoyed that your app apparently is full of bugs. As @Jury said in a tweet the other day:

“… Compiled software is not the web. Don’t push every minor issue you fix immediately to your users. Plan discrete releases.”

Obviously, if you have a severe bug in your app, get it fixed asap, so your customers won’t grow resentful of the fact your app doesn’t work as expected.

So in review:
– Free updates help increase awareness about app.
– Awareness leads to re-discovery which helps keep your app “immediate” for users.
– Think of users as customers. You’re not doing them a favour by releasing an app. They’re doing you one by giving you money in return.
– Give your customers more than they expect and they’ll return the favour with a review or other kinds of word of mouth.
– Updates help provide value and helps your app exceed your customers expectations, regardless of the cost of your app.

Note:
– “Bug fixes” are not directly seen as value for your customers. Sure you fixed bugs, but what value does this bring other than just fix something that should have been working in the first place?
– In my opinion, too many “bug fix”-only updates that talk about “improvements,” etc. just become annoying and doesn’t show customers that you (the developer; or seller) is focused on building new features.

I hope you enjoyed my first #idevblogaday post. I hope it was insightful and invoked some thoughts as to what you could do with your app, even if I didn’t provide a single line of code :)

I do hope I surprised some people with how marketing blends in with being an iOS developer and provided some insight into what kind of relationship you have with the users of your apps.

Thanks for reading, sharing and please do leave a comment!

Have a wonderful Monday!

Linking *directly* into your app’s reviews in the App Store [UPDATED]

UPDATED 10/3:

I have received some feedback regarding this post that I thought I would share:

One developer implemented this feature in a UIAlertView pop-up, asking users nicely if they’re enjoying the app and whether they would like to be taken to the App Store to review the app. This UIAlertView happens after the 10th app launch, so you’re already dealing with people who have used your app enough that they must be liking it. It’s a $0.99 app by the way.

In just two short hours after implementing this, he had received 6 new app store reviews, all with positive feedback along with 4 or 5 stars, nothing less!

What can we learn from this?

1. People are, by nature, lazy. Consider the steps required to actually reviews an app that you like: You have to actively find it again in the App Store, scroll down and go to the review page. Then tap the button to submit your own review, login, etc. Unless someone’s super excited or very pissed off about your app, you will only see a small percentage of people taking their time to go through all those steps to review and rate your app. By asking users, who’ve been using your app more than just a few times nicely for a review, then linking *directly* to the App Store, they’re already skipping many of the above steps and rating and reviewing your app becomes a quick activity related to an app they’re enjoying.

2. Reviews are generally positive. Ratings on the other hand tend to be more black and white. Either people hate your app, delete it and quickly give it 1 star. I doubt a lot of people give apps 4-5 stars when they delete an app. They’re deleting it for a reason; either they didn’t like it, or it just wasn’t what they needed/expected. If they like the app, chances are they’d never delete it, and you wouldn’t be getting those great 4-5 star ratings (refer to #1). I have seen reviews that have pointed out several wrongs about apps, but they’re still adding a 4-5 star rating with the review. It may seem there’s a difference in people’s mind about a review and a rating. I think a lot of users think of reviews as a way of communicating to the developer that there’s an issue with the app, or they want this or that added, but they still use and love the app regardless (giving it a high rating).

3. You’re asking the right users. When deleting an app, Apple has implemented a horrible UIAlertView asking the same people who just got rid of your app to rate it. I think we all agree this is ridiculous (refer to #2). With a UIAlertView inside your app for 10+ launches linking into the reviews of your app in the App Store, you can pretty much assume these people are enjoying the app, especially if they agree to review it. If they’re don’t like it that much or don’t have time, it’s just a simple tap to dismiss the UIAlertView.

ORIGINAL:

Today @coffeeandiphone we briefly discussed ratings/reviews for apps, and one person mentioned he’d like to show some of the users who have used his app more than X amount of times an alert where he’d ask them to review his app in the app store.

So here’s a link that will take people directly to the review section of your app in the App Store. Note, though, they won’t be able to go “Back” to the actual page for your app in the App Store (when on a device), so they can’t really see that they’re on the review page for your app. Therefore, you probably want to make it veryclear where your linking to and before sending them out of your app, into the App Store.

http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=341136260&pageNumber=0&sortOrdering=1&type=Purple+Software&mt=8

See where is says “?id=341136260” ? That’s the only thing you need to change. Just insert your own app ID there and you’re good to go. Don’t get confused by “type=Purple+Software&mt=8”, because if you change that, it won’t work for some reason. I am not quite sure why it has to say Purple Software, but I don’t really care as long as it works :)

Combine it with something like this (“Fighting Back Against The App Store’s Negative Rating Bias”) and you’re good to go!

Edit: I can’t remember where I got this info from, but credit goes to whoever/wherever, of course.