I received a spreadsheet from our accountant that totals our company revenues over the various categories of income that we receive. I figured, why not share this with you? I won’t tell you the absolute numbers, but I think the relative distribution might be interesting.
19 months ago I wrote about the various kinds of income an iOS development outfit can have, when I was basically still in the discovery phase. Taking a long hard look at the distribution over those categories should yield some insights as to how to tweak the amount of effort you put into the various items.
The broad categories I was seeing our profits come from were:
- Component Sales
- App Sales
- Ad Sales
Contracting was responsible for almost 3/4 of total income, which came from the work done by 3 people for 2 long term contracting clients. This is the kind of work that most iOS development companies would be doing: client has a product and a roadmap and you work on this day in day out.
I found two ideal ways of getting paid for contracting. One is billing for a fixed hourly rate where the only cap on hours results from the maximum work a developer can work behind a keyboard every month. Yeah, there are such large long term contracts where you don’t have to haggle over every hour budgeted. I don’t like this kind of haggling or capped cost contracts because as we learned you cannot every really accurately predict the amount of time you will need to “finish” an app. Software cannot ever be really truly finished, there will always be bugs, administrative work dealing with Apple, and hopefully new features to be implemented.
The other way that I began to explore in early fall was to work by Retainer. There you would guarantee a certain amount of human resources available to work on the project on the client every month. In return you would be getting a fixed sum paid every month. This makes a big difference in how we can deal with the client because in this model the client knows what the monthly expense will be and has the guarantee that his product will be constantly evolving. Before the retainer was introduced the client would frequently refrain from requesting features for fear that they would be costing him “too much”. Now with the retainer model in place much more is happing to the benefit of the product.
Component Sales initially made up my main income when I went full time. My first few components I sold had been code that I developed for client projects but where I didn’t charge the full amount for their development to the client. Instead we agreed that I would be selling the code as component to recoup the development cost.
Unfortunately selling components has become much harder than it was two years ago. You can get open source free software for every kind of simple thing. Several component stores have popped up which are selling components for a dime a dozen. Only highly specialized frameworks which are the result of months work are really selling well. One prominent example is Peter Steinberger’s PSPDFKit. Also my DTRichTextEditor is about the only component that is seeing relevant sales from my parts store these days.
So component sales are definitely on the decline. I cannot put my finger on the actual reasons for that, but I believe that the general skill level that iOS developers have grown to they’ll probably prefer to build simple things themselves and only shell out money for something that they see above their own expertise or that would simply take too much time to implement yourself. Hence the positive examples mentioned above.
The other kind of money I am also counting amongst Components are my Non-Attribution licenses. Here somebody would pay us for the privilege of using our open source software (like DTCoreText) without having to attribute to us. The number of such licenses I’ve been selling has seen a steady increase over the past few months.
Next in line are what I call Royalities. Those are recurring payments you receive from somebody who has licensed your intellectual property for commercial use. Royalties could be for use of components, frameworks or any other kind of work you are the author of and you are allowing somebody else to monetize.
Technically also the money we receive from App Sales are called Royalties. Here Apple is paying us 70% of sales as reward for being able to sell our software to iOS users. Most of our sales come from Linguan, iWoman and SpeakerClock. Our App Sales might be quite meager compared to the overall income, but they serve an important additional purpose: they serve as our test beds for most of the new hurdles Apple comes up with to put in front of iOS developers. On more than one occasion a thing we learned from having some apps of our own to sell would benefit us or our clients.
Finally, there’s the holy grail of income: Ad Sales. All of this income comes from us using BuySellAds.com to manage ad spaces on the Cocoanetics blog. I started with ads for a simple reason: it is the only way how I can get a little bit rewarded financially for writing articles. Fortunately this has grown enough to be able to cover server costs for this “hobby”.
Roughly divided I’d say that 80% of our income derives from active work, 20% we earn passively. Remember the Pareto Principle?
The numbers show clearly that we are working for our money. But there is also potential to increase the passive portion. The greater the passive recurring income is the more liberty we gain in growing our business.
Oh boy how would I love to be making for money from App Sales or Ads, but this is not very realistic. To double my ad revenue I would have to double my number of visitors from currently around 3000 a day to twice as many. To realistically increase app sales I would have to tap into new markets by adding more apps.
On the components field I can do much more because one sale of DTRichTextEditor is worth over 500 sold copies of SpeakerClock. Working on my components is much more work, but at the same time the leverage ratio (time spent versus profits) is way more favorable.
Regarding Royalties I’ve been investing much time into tools that help my partner be more efficient. It is my hope that in simplifying the work flow for them they are able to do more catalog prep work. And if they can take on a greater work load I end up receiving more royalties down the road.
Would we be interested in taking on additional contracting clients? Probably, but it depends whether this is a short term or long term thing. For a project that lasts a few weeks I would probably be able to come up with the resources from what we have now, 3 guys including myself. For anything longer than a month or so the project would have to be long term, probably Retainer-based. It would mean that I have to hire additional staff to share the workload and I need to be reasonably certain that I can afford the new guy’s salary for several months.
How do your revenue types compare? Are you mostly contracting yourself? Or working on your app sales? Working on components to sell?