Thursday, September 26, 2013

How to do discount pricing for App Upgrades in the App Store

Or as my brother Pete called it "Smurfberries for Business Apps".

We spent the better part of the summer working on iOS 7 updates.  We'd originally planned a different approach for updating our main apps for iOS 7. (An FTP Client and code editor.)  But in the end, a week before iOS 7 was scheduled to come out, we decided people would have to pay to get the upgrade.

One reason overruled everything:
If we go out of business, nobody would get any upgrades at all. *

Along with most other developers, we have wanted a way to charge an upgrade price to get a new major version of an app.  And we wanted to be nice to our existing customers and give them a discount. We're not just competing with other apps, the iOS7 update is competing with our previous version which is pretty damn good.  If asked to pay full price again, many people (including myself) might stick to the older version which already works great.

Apple hasn't added that option, so we had to figure out how to do it ourselves, while sticking within the published iOS SDK and App Store system.  (OmniGroup tried going outside the App Store so updates were from their website which I believe is why their way wasn't allowed.  Our method should work fine for Mac Apps too.)

It isn't as perfect as Apple could do it, all within a single app and not losing our thousands of 5 star ratings, but it works now.

Our particular apps are bit more complicated since we have both Regular and Pro versions of the app to deal with.  But the simple approach:

  1. You have MyTool in the App Store now, for $9.99.
  2. Create a new version of the app in the App Store, MyTool2, also for $9.99, and submit it.  Optional**
  3. Create a separate "MyTool2Upgrade" for free but with 2 or more In-App Purchases.  Everything in MyTool2 , but have some new features behind an In-App purchase.  (Exactly how to do new features depends on your app.  In our FTP Upgrade app, you can browse and view files, but can't edit.)
  4. In the 2Upgrade app, when they tap the locked feature, check if they have MyTool installed, if they do show an In-App purchase to unlock with the price $4.99; if they don't then show a 2nd In-App purchase item to unlock with the price $9.99.  All the In-App purchases unlock exactly the same things in the app, but with differing prices. 
  5. Once the 2Upgrade app is approved, you can decide what to do with the original MyTool.   Remove it for sale, drop the price, or even simply leave it full price (especially if the MyTool2  is iOS7 only and MyTool works on iOS6).***

Get our apps and see it in action (and support our continued staying-in-business-ness)!  

1st get the FTP On The Go Pro Upgrader for iOS7 mouthful app.  A quick way to get the Activate prompt is to switch to the Saved Files tab, tap the "About" file, then tap the up-arrow-in-a-circle in the bottom toolbar.  Tap to Activate and you'll get the full-price In-App purchase for $9.99.

Then on the same device, get FTP On The Go or FTP On The Go PRO, they've been discounted so are $3.99 and $6.99.  Once one of them is installed, go back to the Upgrader and do the Activate again.  You'll get the discounted prices; $6.99 if you have the standard, or $4.99 if you got the PRO (you'll save $1 if you get the Standard and upgrade that one.)  Buy the upgrade to help keep us in business!

* Not an idle threat about going out of business, if this doesn't do it we've got maybe 6 months before having to either have something work, start doing contacting, or downsize to just me full time.  Having to do that after nearly 17 years in business, and working with my brother Pete and friend Shawn for the past 15 years would be horrible and would greatly impact what sort of updates our apps would get in the future.

** You wouldn't even have to have the paid MyTool2, all the magic happens in the MyTool2Upgrade.

*** We are leaving the existing apps in the store with lower prices, so we can do bug fixes or security updates.  At the least you'd be smart to do an update that detected if they were using MyTool on iOS7 and showed a message about upgrading!

**** For the developers...
There are a variety of ways how 2Upgrade can detect if you have MyTool installed. 
  • Custom URL Schemes and detecting if an app handles a particular scheme are easy, but not very secure.  A developer making a simple demo app could get around this one--but only could get to the discounted price so not too bad.  (It could be made pretty safe if you pass data back and forth between the 2 apps, doing some sort of signing between them.)
  • iCloud key-values.  An excellent way since it can detect they had MyTool even if it isn't currently installed on the device.
  • Keychain.  Also a good way, nice and secure.
We started with the Custom URL scheme one; simple and works even with quite old existing versions of our apps.  We'll add better checks now that we know Apple is going to allow this whole system.

***** More for the developers...
App discoverability is really tough in the App Store anyway.  If you don't want people searching to stumble on the 2Upgrade app and want them to find the new MyTool2 Paid app, it should be pretty easy by giving few or no keywords to the 2Upgrade.  That won't help people searching using Google, but Apple seems to just use the name and keywords for their search results.


Unknown said...

Does this still work or have apple pulled the plug?

Michael said...

Its still live and has had several updates to the apps, and others have since done variations on the idea (OmniGroup apps are some I know about)