My Day To-Do
has been in business for almost three years now and at this point it’s an app available on iOS app store
and like any business it needs to generate some revenue to be a sustainable business. Is My Day To-Do a financially sustainable business right now? NO, not at all and that is why in the last few months I have taken a few steps to try and change that. In this post I will be taking about some of the initiatives that I took to generate some revenue. These initiatives range from changing the price of the My Day To-Do Pro version to adding in-app purchases in Lite to advertising and all of these have managed to yield some results. In this post I will talk in detail about these initiatives and hopefully any new startup founder can learn something from it.
I started working on My Day To-Do
when I was recovering from my accident that gave me a traumatic brain injury
after which I had to learn how to walk followed by separation from the woman I was planning to get married to i.e. long-term girlfriend. At the time My Day To-Do was just my way of coping with the losses, something to do to not think about all that I had lost. That however changed in late 2016 when I saw growth. Growth in My Day To-Do downloads and therefore an opportunity to turn this into an actual business. A financially sustainable business with at least 5-10 full-time employees, to start with, actually right now, being in a position to hire one full-time employee would be great too. I am desperate, there’s too much work and I am spread too thin.
Now academically, I am not a qualified businessman by any stretch of imagination, both my undergraduate and post graduate degrees were in Computer Science. Not only that but it had a significant Artificial Intelligence (AI) research component i.e. I published three papers in “B” ranked conferences
. This meant that trying to think of ways to generate revenue was never going to be easy for me, for the most part I would tend to think tech first i.e. let’s add this cool thing or make this code be this re-usable, the latter of which is indeed very useful. However I realised very soon (maybe not soon enough?) that for me to be in a position to hire people who can share my workload would require funding and for that I need to generate some revenue or at least try to have a revenue model.
To generate revenue…
Ok, I know I won’t be saying the most original thing here but “generating any significant revenue is hard so very very hard” , ahh I normally try to devoid my blogposts with any emotions but ahhhh….. I mean I have been working on My Day To-Do for the last 2+ years and it’s still not generating any tangible revenue. What makes this harder than it should be is the fact that frequently recruiters get in touch with me to discuss a role, this includes recruiters from big companies that include our favourite social media network or our goto for Java hosting, cloud service provider or search engine…. I tell the recruiters the same thing, “not just yet but let’s stay in touch”. plain and simple truth, while I have no problems interviewing or working for a big organisation, I won’t take up on that until I feel I have given My Day To-Do my all, which at this point I don’t feel I have. Anyway the point I am trying to make is I am saying no to all potentially lucrative offers while working very hard on something that’s may or may not generate revenue. I suppose that just sums up being a founder of a startup huh? A journey to the top i.e. a very lonely journey with blood, sweat, sacrifices and in which you can barely see the top let alone be sure of reaching it.
Ok now that we have gotten the theatrics and metaphors out of the way let’s focus on business i.e. my initiatives or things I tried to generate revenue
Step 1: Experiment with the pro version price
There have always been two versions of My Day To-Do on the app store i.e. Lite
, I know I should really just have one but that’s a discussion for another post. Now the Lite is free but the pro pricing has seen several changes. There have been far too many changes on the price of the Pro for me to put a full list here but I will talk about some significant ones
- $0.99: This was when the app was first launched but this changed in December 2015 when I released the Lite version. Now that potential users had an option to download something for free I thought it would be a good time to increase the price for My Day To-Do which was now the Pro version. The number of downloads seen with this version were not all that significant therefore I thought I may generate more revenue by making more money from whichever downloads we get. Do remember that at this stage the app was not at all ASO optimised not did it have all the localisations
- $1.99 – $2.99: I played around with this for a couple of months post Lite release, actually till May 2017 but it did not earn a lot of money this time i.e. the sales numbers were down. I really did not generate a lot in revenue I mean I would earn maybe around $10 per month or so? Yes it was bad and it did improve but not by much
- $7.99+: Now this change happened late May or June 2017 and it was after the marketing intern at My Day To-Do did a great job with My Day To-Do’s ASO (App Store Optimisation) and managed to make the name and subtitle more App Store search friendly. The sales were better but not by much, really. So instead of $10 per month I would now earn about $20+ or the biggest month for us was when we earned around $30! (remember I said, Startup is about sacrifices…). This price point was working all fine until, Apple announced the iOS App Store overhaul which meant we had to change the caption or the subtitle for the app. This had a bit of a negative effect on the Pro version and even the Lite version as the downloads dropped significantly for both the versions. Which brings us to the current state of it all
- $0.99: After the app store overhaul and a significant drop in downloads I played around with a bunch of different price points with really poor results until I finalised with this price point. This really is precursor of sorts to what I plan to do with this version of the app in the future i.e. how I plan to make it available to the masses, more on this in a later. For now, the downloads with this new price point are not so bad actually, I mean there have been a total of 36 downloads in total in the last two months combined. This is not bad really because I mean at the end of the day what we want is more users for our product. I mean not matter how great the software is without users it’s pretty useless. Users are EVERYTHING!!!!!!
Where do we stand now?
In conclusion I suppose we can say that I have done a full circle in regards to the price for the app huh? I mean I started at $0.99 only to try a whole bunch of different prices for 2+ years and then come back to the $0.99 price point.
I must admit adding this took longer than it should have but it’s there now at this stage there are 4 in-app purchases in the Lite
version. They are
- Unlock weather: This is an auto-renewing subscription that people can unlock to get access to the weather, so they can see what the weather is like when they plan their day. Adding this was hard, really really hard and not because of it’s technical complexity but because I simply did not how the app store review process for the auto-renewing subscription was. The app went through a series of app store review rejections until this got through. I even wrote a post on it, this is one of my most popular (most read) recent blogposts. So how are we doing money wise after adding this? not that great!!! I can literally count the number of subscriptions so far and it’s less than 10.
- Speech speed change: Our analytics data showed that a lot of our users are changing the speech speed, so I thought if they like changing the speech speed, maybe they can pay for it? Therefore I added this IAP and see if people were willing to pay for it? Turns out they are not!
- Language change: In the pro version you can change the voice and language the app talks to you in, in the Lite version this one is an IAP.
- Dialogue change: I really should get more creative with my IAP names! Everything the app says to you is customisable e.g. when it reads out your day todo and there are more than 2 todo, it will say “Good morning (depending on the time of the day) User (the name you entered)! You have to do the following for the day 1, your undone day todo” In the pro version you can change that from the default to whatever you want. If you want it to say something like “Morning Mr Awesome, You have done everything important but these little things will still bother you so get it out of your way, 1 (your day todo)” you can configure that too and in the Lite version this is an IAP.
Result of adding IAPs and probable cause
At this stage purchases across all IAPs are low and actually do not generate any tangible revenue. So… what do I think is the reason? Hmm not sure, really not sure, there are a bunch of possible reasons
Reason 1: Users do not know what they are buying?
This was one of the first things that came to mind and I thought maybe I can make it a little more obvious as to what the IAP is that the users are purchasing. This lead me to adding some screenshots for what the unlocked feature looks like in the app after they purchase the IAP i.e. have a look at what the IAP purchase screens look like now
The above screenshot is for the speech speed change IAP, as you can see there’s a screenshot of what the speech speed will look like once unlocked. Below you will notice screenshots that go with other IAPs
Adding a screenshot to every IAP was quite simple, it was done in a day and that too the majority of the time was spent on collecting the aforementioned screenshots for different localisations i.e. in addition to English we also have localised IAP feature screenshots for Simplified and Traditional Chinese.
Why was adding IAPs so easy?
I am so glad you asked (I know you didn’t but…), this was thanks to some good re-usable code i.e. software design. You see I realised that every IAP has common elements i.e. name, a purchase button, price, IAP description etc so the way I created it is such that there’s only one screen for every IAP which accepts certain parameters for the IAP e.g. name, description etc. So all I had to do was add a screenshot to it and voila! it all just worked. At this stage with the number of things not working, this one makes me so happy as a programmer, at least something is going my way.
p.s. I will write a detail blogpost with code samples on this part later
Reason 2: Implementation issue
I assure you talking about this over here is very very embarrassing for me as a programmer but I cannot rule this one out. In the last few weeks we have seen crashes in our Firebase console
and some of them point to a class called IAPHelper
and that does exactly what you expect it to do. It’s a class that handles everything IAP i.e. retrieving IAPs, purchasing etc. Once a new IAP is added it’s just a case of adding that IAPs product ID to the array of product IDs in this class and the new IAP is available for purchase in the app.
The reason I haven’t fixed this yet is because it’s just a theory and util I can investigate it thoroughly and be completely (relatively) sure it’s the reason, I cannot allocate time to it.
Reason 3: IAPs are not attractive enough or just poorly named and described?
This one is a no brainer isn’t it? What I think is worth paying for may not be as important to others i.e. people may simply not care about it.
The second reason is definitely a big concern for me, I am not sure if I am doing a good enough job of letting users know how an IAP will benefit them. I mean I could add the most technically advanced feature any app has ever seen but unless we find a way to let users know about how it benefits them, it’s pointless, right? The solution to this, would be to get someone with some marketing expertise and
- do some market research into are users willing to pay for our IAPs
- make the IAP descriptions attractive enough for potential users
- what kind of IAPs would users like to see in our IAP
Step 3: Ads in the Lite version
I added ads to the Lite version as a limited trial to see how we go and whether or not we generate any significant revenue. The trial run lasted about 3-4 months and once again the results were less than impressive, I mean we earned less than $10 in that time.
Now let’s go into a bit of detail, I added Banner Ads
powered by Google’s AdMob, if you need to know more about why choose Google ads
or how to implement them
in your app, then just read the pages those links take you to. In summary Google AdMob is for mobile apps as Google AdSense is for websites.
What did we learn?
I think the implementation of the Banner Ads in Lite was less than ideal and it was almost getting in the way of the UI i.e. it was at the bottom of the tabs in the app UI, so I am guessing that may have put off users from it?
Our main takeaway from this is that for an app to generate any tangible revenue from Ads, it needs a significantly more daily active users than what My Day To-Do has at this stage. Therefore I have removed the Ads from the Lite version in it’s last update.
I think I have painted an entirely too bleak a picture i.e. everything so far is mostly just doom and gloom, however there is progress. Where? well we have more active users than ever before and thanks to our onboarding and analytics people are using the features of our app the way we want them to. Lastly, the “Killer” feature (that no others offers) of our app is in development and we also managed to create a spin-off product (Your Memories) while working on the new feature. Also revenue is needed simply so I can hire paid employees, more than people buying the product what I am after are daily active users. I rather not make any money for for the first couple of years than make a million $ from sales in the first year and not have anyone use my app for more than a day or two. I want people to keep using this product day in and day out, my goal is to get everyone to a point where noting down something on My Day To-Do is just second nature (I know it’s an ambitious goal but…)
There you go, this was a relatively detailed account of everything that we have tried at My Day To-Do so far to generate revenue. Our methods so far include changing the price for the Pro version
, adding IAPs to Lite and Ads to Lite and all of this has failed to generate any “significant” revenue. The word “significant” is the key here as there is revenue being generated but it’s just so painfully little, and this is how it makes me feel. I feel like I am running a race and I am “crawling” to the finish line, it’s a very very slow process. However little progress is better than no progress, so we just need to keep trying and finding ways to generate revenue.
For those of you reading this, I hope I have shed some light on how a one man startup can attempt to generate revenue and find some of the links in this post helpful.
If you find my blog posts useful and want to support me, you can
- Buy the pro version of My Day To-Do – it’s cheaper at this stage
- Download the Lite (free) version and unlock one of it’s IAPs
- Or try our free app Your Memories that uses artificial intelligence to predict what’s in your images
Whichever version you try, if you leave us an App Store review that would really help.