Post-Mortem: The Mac App Store’s Get Productive Promotion

Get Productive Mac App Store Banner

From January 21st to January 28th, Apple ran a promotion on its App Stores: Get Productive.
I was lucky enough to be asked to participate on the Mac App Store with Yoink, my app that improves and simplifies drag and drop on the Mac.

I thought I’d share my experience with this promotion and some of the stuff that went on behind the scenes.

Getting Invited

It started at the beginning of January, when I received an eMail from a very nice person at Apple, asking if I was interested in putting Yoink on sale for a promotion to happen later in January. I didn’t think too much before responding that I would love to participate – after all, when Apple asks you to participate in a promo, you participate in that promo, there’s no question about it.

It’s not the first time the app partook in a promotion.
In February 2013, Yoink was part of a three-weeks-long productivity promotion on the Mac App Store called “Get Stuff Done” (Yoink was part of the third week – “Utilize”):

Get Stuff Done Week 3 - UtilizeYoink in the Mac App Store’s 2013 Promotion “Get Stuff Done – Utilize” (image credit:

Thankfully, Yoink did pretty well in that promotion and I think that may have helped in making Apple consider it for this promotion, too.

In case you’re wondering, I don’t have any access or connections to the powers-that-be of the Mac App Store.
However, I do contact them (very rarely, mind you) through iTunes Connect ahead of time if I have a substantial update coming out with information about what’s new and what technologies are used in the update. I do not recommend contacting them about every update you put out – that can only be bad for you, I’m sure.

Pushing my luck, or: Trying to get ScreenFloat included

I realize I should be counting my lucky stars getting one app featured in this promotion.
The thing is, I really believe that another app of mine – ScreenFloat, which takes screenshots and puts them in front of all windows so they’re always visible as a reference to whatever you’re working on – would have been a good fit for the theme of “Get Productive”.
In my mail to Apple, I mentioned ScreenFloat, described it in one sentence and asked if it would be considered.
They did, but the app apparently didn’t make the cut. Since that was what I was expecting anyway, no harm was done and as far as I can tell, they didn’t find it too pushy. Quite the contrary; they seemed very thankful for the suggestion.
I did not receive information about why it was not included, but I have a guess:
I think perhaps the reason they decided not to include ScreenFloat in the sale was its lack of localization – ScreenFloat is localized in English and German, whereas Yoink is available in English, German, Japanese, Simplified Chinese, Korean, Portuguese (Brazil and Europe), French and Italian. Or maybe that it hasn’t received an update in a while (although I am working on version 2.0 these days).

Holding Back an Update

As you’re probably aware, when you release an update on the App Store, its current reviews vanish, the star-rating is averaged over all versions and the new version has 0 (zero) stars.
I was about ready to release an update for Yoink when Apple contacted me, and I knew I had to postpone releasing that update, since if I released it, no stars would be shown next to the app, and I think it does make a difference – it looks much more enticing with stars than without:

Yoink Listing without StarsYoink listing without stars on the Mac App Store

Yoink listing with StarsYoink listing with stars on the Mac App Store

I generally dislike withholding an update to my apps (as I regularly fix bugs and I don’t like knowing that a version with bugs that I have already fixed internally is still out there for users to use), but in this case, I had to make an exception.

It came as a blessing in disguise anyhow since it gave me some extra time to test the soon-to-be-released update and make sure the new Force Touch integration was working as expected.

The Effects of the Promotion

I am more than happy with the results of the promotion. Then again, there’s bound to be a big impact on sales when Apple puts your app (along with other developer’s) in front of (potentially) all Mac App Store users.
Apple calls users to action beautifully (see the first image of this post) – a nice banner with icons of popular apps along with the tag line “limited-time prices”. I know that gets me pushing the Purchase button.

Impact on Sales

As expected, I noticed a significant jump in sales during the promotion.
I’m uncomfortable sharing numbers (something I need to overcome, other developers have shared their numbers and it’s always been helpful), but here’s the curve before, during and after the sale from iTunes Connect:

Yoink Sales through the Get Productive PromotionYoink’s sales graph before, during and after the promotion

James Thomson, developer of PCalc (Mac / iOS), which also participated in the promotion, has also shared his curve on twitter.

Mac App Store Ranking

When the promotion began, Yoink was not in the Top 100 of the Top Paid category in the US at the time.
On January 21st, the app started rising, went to the 43rd place, and on January 22 had its best spot at position 13. It hovered around that spot until the end of the promotion a week later.
It rose to the Top Paid Top 10 in several countries, including China, Japan, Germany and Austria.


I did not see a significant increase in the number of reviews – however, the ones I did receive during the campaign were written in China – something I attribute to the fact that, with a recent update of Yoink, I localized it into Simplified Chinese. I haven’t gotten many reviews of Yoink in that country before, so that’s a safe bet.

Support Requests

Surprisingly, requests for support (by mail, twitter or facebook) didn’t come in in the amounts I was expecting and I think that’s a good indication that Yoink is working reasonably well.
Not getting support requests can mean two things: No one purchases it or the software is working more or less without major problems.
Regarding the amount of copies sold, I take not seeing a big bump in support requests as a good thing.

Sponsored Tweets

Yoink's Sponsored Tweet on Twitter

As I mentioned on twitter, I gave Promoted Tweets a try. I put €200,- (around $215) into it and I think it’s safe to say that it’s the most expensive way for me yet of reaching people. On the other hand, the targeting is first-class.

Twitter Promoted TweetPromoted Tweet views (highest: around 14.500 views)

I hand-picked 100 twitter accounts that I thought were relevant to the Mac community (developers, app-accounts, bloggers, journalists), chose interests that I thought were relevant to Yoink and let it fly.
I reached 55.813 people, resulting in 4.142 “engagements”, a conversion rate of 7.4%.
For $215, I can get banner ads on websites that yield 170.000 views and up, but the engagement rate there is much lower.
What is an “engagement”, exactly? It’s a click on the tweet, a click on your profile, a click on the image, a click on the link, a “like” or a retweet. So the engagement rate of 7.4% itself is more or less meaningless.
According to Twitter, I received 35 direct clicks on the link. Thirty-five. That’s an engagement rate of 0.06%. Pretty expensive advertising indeed.

Promoted Tweet EngagementsPromoted Tweet – Engagements

The funniest thing is that some of the people “liking” the tweet ended up blocking me as “spam”. One reply of the two I received was this image:

Spam ReplySpam, anyone?

I ended up on a couple of lists with the specific purpose of blocking me, since I had an ad on twitter. Granted, those were most likely Twitter users who weren’t ever inclined to purchase my software and there are no hurt feelings, I just found it funny.
Seems some users on twitter don’t realise there’s advertisement and figured I spammed them somehow.

The Link for the Sponsored Tweet

In the beginning, I ran a tweet with a link directed to Yoink on the Mac App Store, which later on I discovered was a bad idea.
Most of the users I targeted with this tweet use Twitter on their iOS device and when you open a Mac App Store link on iOS, you receive this:

Mac app in iOS App StoreYoink in the iOS App Store

When you click on “Learn more about this App”, it does take you to the app’s website, but that’s another tap most users are not willing to do.
I changed the link to take them directly to Yoink’s website and only lost about 4.000 views. My bad. (I filed a radar to improve the “Mac Apps page in the iOS App Store” here).

I didn’t like linking directly to my app. I’d rather have linked to the sale, the promotion page where all apps are shown. As far as I can tell, however, that is not possible as of yet (I filed a radar for it, too). It is definitely something that could be improved for future promotions.

Maybe the sponsored tweet may have raised the awareness of Yoink among some users, but I don’t think it was worth it. Perhaps an even more targeted audience would have helped.


Being featured by Apple seriously helps you in getting new customers for your app and I’ll do it again any time they invite me.
Sponsored tweets? Quite expensive for little to no effect (in my case – mind you, it was my first sponsored tweet and I might not have targeted it right. Next time, I might go for a sponsorship of a popular blog instead).


If you enjoyed this blog post, perhaps you’d like to join the Eternal Storms Software Newsletter where I write you once a month at most about what’s going on with my apps and on my blog :) Thank you.


Transloader – A (pseudo) Post-Mortem

Transloader Mac Icon

You might have heard about my new app, Transloader, for OS X and iOS.
I’d like to give you a little background info on the app because it’s been an interesting process creating it and getting it out to users.

What Is Transloader?

Transloader (né Lifeline – as in a line that keeps your connection to your Mac alive) lets you send URLs from your iOS device to your Mac for download.
Say you’re browsing on your iPad and come across a Mac demo app you’d like to try. On your iPad, you can’t download it and even if you can, there’s not much use in it since it’s a Mac app. This is where Transloader is useful.
Enter the URL to the demo into Transloader on your iPad and it gets synced to Transloader on your Mac where the URL will be downloaded to your Downloads folder, ready for you to use when you return to your Mac.
That’s it. Pretty simple, isn’t it?
Creating it, however, wasn’t ;)

Got To Get You Into My Life

The idea for Transloader, like for all my other apps, came out of a need I had myself, a little more than two years ago (and I’d been sitting on pins and needles ever since, thinking someone else might come up with a similar idea and beat me to it).

I browse the web a lot on my iPad. And it’s not unusual that I come across a zip or dmg file, or even a movie I’d like to download for later.
What I used to do was send myself an eMail containing the URL to the file – and I can’t tell you how much that bothered me.
It’s so much unnecessary work to do it, it’s so tedious:

  • Copy the URL
  • Open Mail
  • New Mail
  • Enter my eMail address (I have several, so I need to find the right one in the list)
  • Paste the URL into the mail’s body
  • Send
  • Confirm I don’t want a subject for the eMail
  • Sent

And when I’m back on my Mac:

  • Launch Mail (if I don’t forget I sent myself a link)
  • Find the mail
  • Copy the URL
  • Launch my browser
  • Paste the URL into the browser and wait for the download

I believe in writing apps for a single problem, even if it’s a very small one. I like to keep things clean. And to their purpose. I don’t like using eMails to remind myself of something. That’s what the is for or perhaps the Notes app (though I can’t tell you how many times I forgot I put something into for later, and only months later found it by accident).

I wanted a much simpler way to do this. So I had the idea for Transloader. The workflow would be very simple:

  • Copy the URL
  • Launch Transloader
  • Add the URL

and on the Mac:

  • If Transloader’s not running either launch it
  • or if it is running – do nothing.

Let the app take care of everything else. The sync, the download – that also has the advantage that the user does not have to initiate the download. It starts downloading as soon as the URL is synced – and, ideally, the download is ready once you’re back at your Mac. That was the idea for Transloader.

We have all the time in the world

To reiterate, I had the idea for the app about 2 years ago – before Apple introduced iCloud.
So I had to find a way to make the iOS app talk to the Mac counterpart.
I basically copied the way Apple’s on iOS handles the connection to iTunes on the Mac, asking for a PIN.
The setup needed to be done by the user. Start the server app on the Mac, launch the app on iOS, add the server by entering the IP and the port to connect on and then enter the random PIN displayed on the Mac.
Once the setup was done, the app worked pretty much the same as it does now. Add URLs on iOS and it would get transferred to the Mac directly.

There were quite a few things different, though.
Due to the direct connection to the Mac, more control was possible. For startes, you could have multiple Macs you could differentiate between and send URLs to. You could interrupt downloads, you could see how far along the download on your Mac was and how fast it was going and you could delete the downloaded file from your Mac once it was finished, remotely from your iOS device.
On the other hand, to add URLs, an internet connection was mandatory at the time of entry and the setup to get the app working was tedious. The Mac had to be running, so did the Mac app. Also, adding URLs over the internet was only experimental, only the Bonjour service (meaning you had to be in the same WiFi network for it to work) was really supported. (Although I must say I never had a problem with adding URLs over the internet, but it depends on your WiFi router, port forwarding, etc).

Part of why it took so long to release the app was that I wasn’t completely sure if the “experimental” internet connection would go over well with users. The purpose of the app was to be able to add URLs while on the road, somewhere in a café for example, not at home where you’re at your Mac anyway.

Lifline on MacLifeline, the first iteration of Transloader, on the Mac.

Lifeline on iPhoneLifeline, the first iteration of Transloader, on the iPhone. Server Selection.

Photo 3Lifeline, the first iteration of Transloader, on the iPhone. Showing progress and speed of the download.

Stuck inside a Cloud

Some time went by where I didn’t do any work on the app. Only using it myself and showing it off to people to get feedback.
Maybe half a year passed. Perhaps a little more.
Then what happened was that Apple announced iCloud. At first I didn’t make the connection, but I soon came to realize that it would be the perfect fit for my app.
I always hated the fact that a server/client configuration was necessary for the app to work. I didn’t want to put the user through any of that.
Also, with iCloud, at the time of entering a new URL, a connection to the internet is not necessary and the Mac app doesn’t have to be running. It gets synced as soon as there is an internet connection again. Big plus.

I realized I wouldn’t be able to give the user the control they would have had with my own implementation (mainly getting feedback on the progress of the download and its speed) and that I would make myself rely on a service that might not be available at times, but knowing that using the app would get much simpler, especially first setup (of which there is basically none now), was enough to make me go for it. And I haven’t regretted the choice since.

Changing from my own system to iCloud was a complete re-write of the app. Obviously.
However, it took way less time than the first implementation since I didn’t have to deal with any server/client implementation or communication between the two. All of that is handled by iCloud.

It took maybe two weeks to get the app working and basically finished (no polish, of course). In comparison, the first version took me a few months.

She feels good, she knows she’s looking fine

Once I got the app working and finished from a coding standpoint, it was time to get the UI done.
Everything you see is the creation of the brilliant Alexander Käßner who, I think, couldn’t have done a better job with the app.
And customers seem to agree, they do like the graphical elements very much.
After maybe two days I had a mockup and a few days later, the graphical elements were done and put into the app. It was a quick and painless process.

Do what the rest all do, or face the fact that the Apple Store Review Team may have no other choice than to reject you (in short – DAMN, Transloader was rejected)

I usually submit new apps to the App Store well knowing the first submission will likely result in a rejection.
Transloader was no exception. Not because of the usual reasons (Sandbox, for example, or a stupid unnecessary bug I overlooked in final testing), but because I was using iCloud in a different, unexpected way. And I kind of felt it was going to cause problems.

And I wasn’t wrong. It didn’t take too long until I got a call from a very sweet, patient and understanding representative of the Review Team, telling me Transloader got rejected for using iCloud as a transport mechanism and an iCloud account being necessary for the app to work.

I tried making the point that at no point is any file stored on iCloud and that the sync was used as a sync, not as a transport mechanism – it syncs the URLs to all devices. What the Mac does with that link is a different story, but of no concern to iCloud, because the actual download has nothing to do with iCloud or the sync.
I also tried arguing that if the reason for rejection was that an iCloud account was necessary, there shouldn’t be any twitter, Facebook, flickr or instagram apps allowed on the App Store either because they all needed accounts for their respective services as well (a cheap shot, I know, but I was frustrated).

Anyway, my points didn’t go over well. The rejection was done.

Reconsider, Baby

At this point, I was kind of desperate. I was so close to finally releasing the app but couldn’t have been farther away at the same time.
I resubmitted the app to Apple with a video explaining how the two apps worked together and a lengthy review note providing even more details.
Yet again, no dice. I got another call from the representative, asking me not to submit the app again without significant changes to how it worked.

So I considered going back to my original implementation. Users would just have to endure the horrible server/client setup.
I just wanted the app out at this point. I got lots of positive feedback from friends, family and colleagues about the app so I was confident it would do ok.

I started to work on re-implementing the first implementation when about two weeks later, I got another call. They were sorry it took so long to review, it was a complicated, different way of using iCloud and they had to make sure it all was in order. It would be live on the App Store in a few hours. I just sat there in amazement, mumbling out a “Wow, thank you” and hung up.

I seem to have a guardian angel and I couldn’t be more grateful.

Don’t ask me what I want it for if you don’t want to pay some more

You might have noticed that the iOS app is free and the Mac app is $4.99.
I had to find a way to make sure Windows-PC users wouldn’t pay for an app on iOS they couldn’t use.
Transloader for iOS depends on the Mac app, and the Mac app depends on the iOS app. One without the other is completely, entirely, utterly useless through and through.

Another angle, obviously, is that Mac users might not have an iOS device but pay for the Mac app. I had to decide for one way or another, though, and I figured the chance of a Windows user having an iPhone is higher than a Mac user not having one.
Plus, I added a disclaimer in the apps’ descriptions that both a Mac and iOS device are necessary. So far it hasn’t failed me.
There have been enquiries to develop Transloader for Windows, though :)

Now you’re expecting me to live without you…

Transloader is the first app I don’t provide a demo for. It’s not because I don’t want to, it’s because I can’t.
iCloud needs a provisioning profile in the app bundle that is only available to apps downloaded through the Mac/iOS App Store which makes a demo impossible.

It’s been quite a journey and I’m so very happy I was finally able to release the app. I’ve got a few things planned for it and I’m looking forward to putting out updates and implementing some of your amazing suggestions. Keep them coming :)

Thank you for your time :)
Take care,