On my second day of the first BarCamp I awoke early and felt inspired to prepare notes for a talk on what I found so far to be the most interesting way on how to make money on this ecosystem that Apple has created for us.
When I gave this talk I ran out of time and felt a bit “incomplete” as there would have been several interesting points towards the ends of my note. But the room was full and judging from the fact that people asked several interested questions (and nobody left) people seemed to be ok with that.
Being a reader of this here blog you now reap the benefit that I translated my presentation structure filled in with some commentary for coherence. And this also contains the entire notes, the “Director’s Cut” if you will.
I’ve been developing on iOS for 3.5 years now, initially next to my full-time employment as system administrator. I was contemplating going part time and extending my iOS activities at the end of 2009, my reasoning being that I would be able to make up the difference in salary with iOS work. But the decision was made for me when my employer informed me that I was to be laid off. My salary was to be continued for 3 months – as seems to be usual – but I could stay at home from the next day.
So in December 2009, 1.5 years ago I went full-time. When you do that you have a choice, either to go general or to become an expert in a field. Feeling really good with the Apple ecosystem (no PCs at our house no more) I decided at that time, that I would focus only on that. This does not mean that my work is one-sided or boring. Within the confines of this Apple garden, I’m doing everything and all that comes to mind: own apps, contracting, consulting, components, tutoring, blogging, networking. Lately I found that I tend to prioritize higher paying activities higher, but I guess that’s just natural.
So much for my history, over the last few years I have sampled quite a diverse number of way how money can be earned with iOS development, and this article aims to give an overview to broaden your horizons and maybe give you some ideas.
This is the most obvious of all, but when I got started there really where no companies who would hire you. Much has changed since then. Big companies started to realize that iOS development has to be a part of their overall IT strategy since after the iPad 1 actually ended up in CEO’s hands.
I’m not saying that employment cannot be an enjoyable and satisfying experience. Many people are working part-time in tech companies while studying at the university. I’ve met people studying to be a medical doctor who where in charge of iOS development at some mid-sized companies. Getting a regular salary and benefits calms the mind and many people are absolutely satisfied by this.
Another advantages include receiving training on the job and if you leave you take your newfound skills with you. Contrary to other IT professions there aren’t hardly any expensive certifications that the employer might want to get his investment back for when an employees wants to move on. I’m referring to some Microsoft or Cisco certification courses that are usually very expensive. You are learning to program iOS apps for very cheap by working on problems with ever increasing complexity and most of the time by sitting next to a more advanced programmer (“pair programming”).
But even if everything is well and dandy some people just want to change, experience something new. Doesn’t have to mean that the company is bad. Some people are so much flowing over with great ideas that would would never find happiness working only on the projects that their employer hands them. Those guys are better suited for the other modes I am taking on below. Generally the term for employees leaving is “Attrition” and it is normal. I found 2-3 years to be the average duration in IT before somebody lusts for a change, often with a different company.
And you don’t have to feel bad if this describes you. You don’t owe the corporation any more loyalty than you get paid for at the end of the month. Nowadays companies are often described as individuals, but this is misleading. Corporations don’t have feelings that you could hurt by moving on. That’s why you are “human capital” and why your HR department is called “Human Resources” … or jokingly by some “Human Remains”.
Companies have several tools to fight this attrition, I’ve seen most US-based companies employing one or more individuals dedicated entirely to recruiting “new material”. These recruiters are souring forums, networking like crazy and more than every they are turning to GitHub and see who has written some great code. Another tool is to give the employee “buy-in”, essentially making him a part business owner as well. Big companies would do that by giving you stock options. Smaller companies can adjust the shares by allowing an employee to invest some saved up capital in exchange for a few percent of the company. Now it’s an entirely different story. You no longer work for somebody else, but instead work for yourself, at least a bit.
Interest fact: I have yet to see any European company with dedicated Recruiters. And I don’t mean HR. I mean people who for their entire working time are on the lookout for new employees.
When i visited the San Francisco last month I found that there are way more open positions for iOS developers than there are developers who would want to be hired fixed staff. And when you cannot hire somebody into your company, what do you do? Right, you hire a contractor.
That’s how I started out myself as well. Initially you are blue-eyed and estimate too few hours and are doing iPhone apps for like 400 Dollars. Initially my own reasoning was: everything that I am making more than my cleaning lady is alright. Boy did I have an out-of-touch philosophy back then.
But you grown and learn, most of all you get smart in how to estimate actual work load and you develop the steadfastness to be able to say: I am not a designer. Ok, I can draw pixels in Photoshop, but you don’t want to pay my full consulting rate for something that I am not an expert in, right?
So besides of the theoretic problem of getting customers, the main disadvantages of contracting are that you are required to perform many activities that are taking away from your pure coding time: you have to manage, yourself and others. With others you have to communicate efficiently. You have to write invoices, because without these you don’t get paid. You have to pay taxes.
I solved the invoices problem like many Mac-people do: I purchased a cheap yet beautiful Mac app: Billings. Now at least the invoicing hurts less because of the ease of use of Billings.
To summarize: contracting teaches you many things, especially being tough and drawing the line
But just like employment it does have a critical flaw: you cannot work more than there are hours in a day. Minus sleeping, other activities, etc. 6-8 hours of highly focussed development work are realistic and physically possible.
Excursion: The Cashflow Quadrant
If you start out as an employee and I ask you “how do you make more with less” you might tell me: be self-employed! But actually self-employment still does not mean that you own a business. You own a job and if you don’t work you don’t make money.
I like to use the Cashflow Quadrant invented by Robert Kiyosaki to explain the difference. Employment (E) and Self-Employment (S) e.g. Contracting are the two items on the left side that you are the limiting factor of. B on the right side means to own a business and I being an investor. Owning a business means owning something that will make money even though you don’t physically work, like owning a company with 5 employees. And being an investor means that you give money to a business owner in exchange for interest or a share of expected profits.
I find that it is generally more enjoyable on the right side of the CQ, so I try to expand on activities that will give me so-called “residual income”. You do something once but continue to receive money from this.
The first obvious item belonging to the B/I side are apps that you wholly own. The many advantage being that you get to keep 100% of proceeds, except for what Apple takes and possibly taxes. The app store provides a great platform to build these mini-businesses on and with an ever growing amount of iOS users (more than 40 million iOS devices at last count) there will always be somebody to find your apps every day.
When I get asked if I already have a “really big” app then I always have to smile. My best selling app makes 30 Euros a day, but that’s not even my own. My own best selling app makes only 10 Euros, half of sales, half of in-app purchases. Generally 5 to 10 Euros per day seem to be the norm.
One way to potentially make up for lack of sales income might be advertising. The networks I myself use are AdMob, iAd and MobFox. Of these I want to especially mention MobFox, a small startup also from Austria, but they pay rates that are rivaling iAd. I wrote a component to combine ads from all these networks, DTBannerManager. This way I get maximum fill rate and the highest overall payout.
Then the guy’s eyes glaze over and with a dreamy voice you hear this: “With 10 Euros per Day I only need to have 10 apps. That’s 100 Euros per day, 3000 Euros per month, enough to live off”. Please stop laughing now. I thought that too. Any many other people do. That’s why we have a fair share of crap on the app store.
Fortunately Apple no longer approves apps that are make like with a cookie cutter. They reserve the right to reject simple apps that don’t provide any user functionality or that are more or less identical to established apps.
It’s still possible of course to make so-called “white label apps”. Those are fully functional apps that are branded by a specific customer. Like there’s a certain company I know that make a newspaper app that several Austrian newspapers have licensed and you would believe that those were made by the newspapers themselves.
Those apps with “limited user functionality” I am referring to are for example those sound board apps where you basically only have a couple of buttons which produce sounds when pressed. Fart apps, essentially.
Another strategy to make more money with an existing app is what Firemint did with Real Racing. There’s a game that you can buy and then there’s Real Racing GTI which is essentially the same game, but paid for by Volkswagen. The player probably does not care, but Volkswagen likes it when the players keep seeing their brand. I am hoping that we will see many more such tie-ins in the future as non-techie companies discover the iOS world as something that their core audience is also present in.
So here’s the bad news: you will NOT get rich with apps, not if you are just by yourself. Those early successes like the Trism game that made hundreds of thousands of dollars right after the start of the app store are a thing of the past.
Also, since apps are a business you have to see them as such. Does it make sense to pay a graphic designer to give an app a facelift that only makes a dollar a day? Probably not. Some apps might have the potential that you can make back such investments. But you have to really carefully choose. Be honest to yourself how much more in sales you can hope for if you make such an investment.
And never never make the mistake of saying “well, that’s my time, that’s free.” If your time really is free then I’d like to hire you off the spot.
I have like a dozen apps on the app store and these make around 1000 Euros per month. Not enough to live off but these have a cash-flow calming effect that I would not want to miss. There are two answers to this dilemma: You can either look for other ways of income. Or you could focus on one idea that it going exceptionally well. None of my ideas so far did the latter, so my decision was to go for multiple streams of income to add up to what I need to live.
For my first component I was approached by Michael Kaye to build a charting class for his app BabyBubbles. I presented him with two options: either he gets the chart exclusively for a couple of thousand Euros. Or I make it into a component that hopefully several developers would buy for a much lesser price. Most of the time you don’t need exclusivity on some features like charts and so you naturally go with the cheaper way.
Most development businesses don’t have any issue with paying several hundred Euros for a component that would have cost much more if they were to develop it in house. They don’t care because their customers are footing the bill anyway. It’s just pass-through fees.
This component, now called DTChartView, was my first on my parts store that I started to sell over a year ago. I am happy to report that they continue to make up a substantial portion of my income. Developers are – in general – great customers, they hardly ever need much hand-holding. They are either smart, or my components are obvious how they are used. Maybe both.
Several component stores are trying to find a foothold in this developer-to-developer market, but they fail to provide many of the features that I expect in the Ultimate Parts Store, another project of mine. Maybe some day there will be such a store where you can sell your components easily and without this overhead that I have:
I need to charge 20% VAT from all private people, EU companies need to provide a VAT registration ID to not pay VAT, companies outside the EU pay no VAT. The reason being that you cannot physically export the software because you don’t actually buy it. You buy a license to access and use code in my subversion repository. And you cannot export that.
So at present I make out invoices for each and every customer personally, again with Billings. So that’s a task I actually like. I accept payment via PayPal or bank transfer and once I have received the payment I send out a quick start e-mail with some instructions how to access the repository and how to get started implementing the component.
Some other companies don’t let you have their source, for reasons of IP protection. One such example is RedLaser. But in my humble opinion I think most developers would want to see what’s inside and I don’t want to have to package binary libraries for every small change I make.
Do I fear piracy of software components? Not in the least. Actually I found that developers are the most honest customers of all. I offer purchase of an “Extended License” for when a developer is making multiple customer projects. And even though I have no way to police this, I have many developers contacting me, wishing to make this payment. Maybe that’s because we feel eye-to-eye and one developer usually does not cheat his peers.
I was also asked about how I’m deciding what to open source and what to sell. If something can be built to be covering most of the necessary features and can be self-contained then it will be a component for sale. For the CoreText component on GitHub the reasoning was this: I alone will never be able to implement all features and variants of HTML. I don’t want people to think that they are entitled to me implementing any and all special case they have. That is why it is Open Source. You need it? You add it!
The added benefit is that nowadays social coding Open Source platforms like GitHub are also one way how you can be discovered. It happened to me, Scribd liked what they saw and now I am doing contract work for them.
Similar to white labels but still very interesting is the concept of licensing, sometimes also called “franchising”. I already mentioned this newspaper whitelabel app, but any technology can be licensed, apps or components alike.
One personal example is my iCatalog.framework which I developed in cooperation with International Color Services. I own the property, but ICS and me have a licensing agreement in place that has them pay me 10% of what money they are making selling iCatalog apps.
Originally I was approached as a potential contractor, but I was able to sell them on the idea that they don’t actually want to become a software development company or have the headaches of having to deal with contractors sitting in foreign countries. Instead I own a stake in this business and take care of the development, they take care of managing products based on it and selling it to their clients.
Many different modalities are possible here, from a small share all up to worldwide exclusivity. It’s up to you to agree on terms that you feel happy with. The point is that these royalties are independent of your working time and thus belong to the right side of the previously mentioned Cashflow Quadrant, just like your own apps.
Speaking of apps. It’s better to own 50% of something than 100% of nothing. I have several partnerships in place, some where I only act as publisher and reap 20% of the proceeds. On others I am equal partners with somebody who provided the creative, product spec’ing and marketing. Again, it’s up to you to find a balance between the partners so that both feel that they get more than either of you could have gotten by himself.
One mode that I like quite a bit is a mixture between contracting and partnering. Everybody needs to live, but in one instance I had the following agreement: I would discount my hourly rate to the rock bottom, at that time 30 Euros per hour to develop a Soccer Worldcup betting app. My partner took care of all the non-iOS tasks. I was paid for all the work upfront, at this special rate. Then when the app went on the store my partner would get all the proceeds until he made up the development costs and when this was achieved, we would go on to splitting the profits 50/50. Or put differently, I got an advance on my half of the profits.
With this I had some money to pay the bills, and my partner had limited his business risk to these expenses. A way better mode than if I would develop something not know whether or not this would be hot or not.
At the time of this writing I have a similar partnership in the works where I defined my first product for the Mac app store and my partner BytePoets is developing it. Here the roles are sort of reversed. I don’t know how to program Mac apps, but they do. But I get to spec the app, decide the features and the job of marketing and accounting will fall to me. They received an advance on the profits I am hoping for and once this becomes profitable they will receive 50%.
Businesses and Startups
Big corporations are reaping most of the profits on the app store. The likes of Electronic Arts and Rovio have employees and economies of scales that we can never rival. Also in addition to their own properties such large companies often act as publisher. That means some smaller company has entered into a deal with them whereby the big brand name is stamped onto the app, sort of a seal of quality. And this increases sales especially in matured markets where users feel often lost for they have too many choices.
And when some Electronic Arts is giving away all their games for free for a day they automatically get the social networking word-of-mouth that pushes all their games ever higher in the sales ranks.
BUT, a big but: I mentioned before that big companies continue to have attrition. For the longest time there was a letter by an EA employee’s wife complaining about the bad working conditions and inhumane situation at this company.
There’s one form of small business that kind of falls between a “real business” as described above and self-employment. I’m talking about somebody who does not have employees, but has several apps made by contractors exclusively. Yes, these actually exist, but doing this successfully is hard and so these are far in between.
But hey, who’s talking about founding a Rovio. That’s not realistic. But if you have a good idea you can and should build a startup around that.
Here the culture is sharpy different between the United States and Europe. In the USA the mentality is “fail early. fail often. But always get back up”. A typical billionaire sunk two companies before striking rich on the third.
Failure is an option in the USA, even an accepted fact of starting up over there. This is possible because venture capitalists and angel investors understand that 7 out of 8 companies can fail, but the 8th probably then makes you back what you “lost” many times over.
In Europe most of startups are funded by the people themselves, or their families. Somebody might also try to get a business loan, but with Basel 2 this has become next to impossible if you don’t already have much capital of your own. And you cannot fail if you are financed by that. Failure would mean bankruptcy, being tainted as a business person for the rest of your live.
There’s just more phantasy in America. In their startup culture somebody like yCombinator might approach you and offer you $10,000 for 10% of your business. And this achieves two things: right then and there you have invented the valuation of $100,000 and purchased a share in this company you just invented. Getting funding for so-called “early phase startups” – which don’t have any actually profits or even products yet – seems to be comparatively easy. Invent a social photography app with a few interesting twists, get $40 Million.
Because of this difference in mentality we Europeans have instead cultivated the “wait and see” approach. “No risk, no fun” is interpreted as: “We don’t risk and we don’t have fun”. Business has to be serious because we cannot afford to fail at it. I say, that has to change!
There is one company that set out to trying to change that for the better: STARTEurope was founded with a similar interest as yCombinator but with a fundamentally different approach. Instead of being the investor they focus on the networking aspect. There are events where you can attend either as somebody pitching his idea, or as a creative person (engineer or designer). Then the pitcher pitch and the creatives can choose which idea they like the most. They sit together and work on the idea for a while. When they are ready they present their result to a panel of experts and investors and the rest should be history.
Two of the names that already came out of this, that you might be familiar with, are Runtastic and Qriously. I especially love the idea of the latter: essentially in-app banners, but instead of ads they show questions: do you like A or B more. Ingenious!
Actually it sounds like very much fun, I guess we all should attend such a STARTup event some time, just for the fun of it. You never know …
For most Europeans there is one catch: because of the above mentioned reasons we are training ourselves to keep many irons in the fire at the same time, but for a startup to be successful you have to let go of all but one of your options and solely focus on that, at least for a certain duration until which it has to show profits or you have to pull the plug, without emotion.
Hopefully this article can inspire some thoughts off the beaten track. If your brain buzzes now with the feeling that there is so much more that you might want to have a closer look at then I did a good job.
I collected many experiences and I can say that almost all where worth it. In the least you should reevaluate the situation you are in yourself. You still have the option of being satisfied with what you have. But if you are overflowing with ideas then grab the best, build a team and astonish the world.
There are many adventures, wonderful people and amazing ideas waiting to be making your acquaintance.