Hello! What's your background, and what are you working on?
Checkers for iMessage is an implementation of well-known board game for the Messages App Store introduced in iOS 10. You can play with your friends using the common Messages app. It works on any iPhone and iPad with the newest version of the system.
The app has been promoted by Apple since day one. It has over 80,000 users and generates an average $600 of profit per month.
What motivated you to get started with Checkers? What were your initial goals? And how'd you come up with the idea?
The idea was pretty simple. We came up with it just before the release of the iOS 10 and a week after we finished our previous project. I started looking at the APIs that would be introduced in the new iOS. One of them was an option to create applications for Messages. On the other hand, we already knew that games are the best type of apps to sell in the App Store nowadays. We wanted to combine these two things.
Our process of thinking about the app looked more or less like this:
- What kind of game could we build for Messages?
- Maybe a board game?
- Okay. Chess?
- I'm pretty sure there will be plenty of those.
- Yeah! Plus the rules should be easier to implement than in chess.
What did it take to build the initial product? How long until you were ready to launch?
Building an initial version took us around two weeks. Then, after the release, we needed another two weeks to fix bugs and add the most requested features.
As I mentioned before, I don't have any professional obligations other than my own projects, so I was able to work full-time on the app, and time was the only resource that we needed.
The app is written entirely in Swift. The technology stack is limited only to tools and development environment provided by Apple. There is no back-end service. In addition to the Messages API, our app uses SpriteKit — a native framework for 2D graphics rendering. I think it was a huge factor in getting us featured on the main page.
Most of my time I had to spend on figuring out how to use Messages API. Before the iOS 10 release, there weren't any resources other than the official documentation. Also, I had to learn SpriteKit because I'd never used it before. Ray Wenderlich's website helped me a lot with this; if you've ever tried iOS programming then you probably already know about it.
What marketing strategies have you used? How have you attracted users and grown Checkers?
From the beginning, Checkers was built to answer the question of what would be popular with the release of iOS 10. I'd be lying if I didn't say that we've had good luck, too. We have been promoted on the Messages App Store's main page since day one, netting us 4.5M impressions in the first week and 14.5M impressions total. We also landed on a few sites specialized for iOS games reviews and in compilations of the best iMessage apps.
We haven't done any paid advertising. I posted about the app on Twitter and DM'd two Polish websites that write about Apple. Ray Wenderlich also runs a monthly review of apps created by readers, so I submitted Checkers and we were included in September's edition.
How does your business model work? What's the story behind your revenue?
The game was free between release day through the point at which I fixed all the major bugs. From a financial point of view, it wasn't a good decision, but we couldn't charge people for software that didn't work well enough. I also couldn't test all cases before the release for a few reasons: our rush to complete the game, the fact that we were generally exploring a new kind of app, and because we were limited to testing on simulators.
There was never an intention to make this a paid app. At the start we planned to put in an AdMob banner, which users could remove with a one-time purchase. However, we didn't know and it wasn't said anywhere that you can't link from the iMessage app to the external browser, so it's not possible to integrate ad networks. If this changes someday we will definitely try that business model.
Today the game costs 99¢. Monthly income after the Apple's 30% cut fluctuates around $600. The trend is decreasing, but we assumed that would happen. With each new user, the number of people who could be interested in buying the app decreases, because it's a single lifetime purchase. Hype for checking iMessage apps in the shop is naturally decreasing, too.
An interesting side effect is when one person who purchased the game starts it with a friend who doesn't have it. The recipient can see the message with the checkers board but can't play it until buying the app, too.
In addition to the 30% cut from each transaction, there's an annual $100 payment for Apple Developer's License, but I already had it. The good side is that the only administration work we have to do is to issue one invoice monthly to Apple.
What are your goals for the future, and how do you plan to accomplish them?
There is one thing I would love to add, but it is not easy to do — voiceover support for visually impaired people. Otherwise, I consider the game as finished and I will only support code-breaking changes in the future iOS releases. Sure we could add more features like menu translations, sounds, or fancy end-game screens, but I don't think it's worth it to do that.
What are the biggest challenges you've faced? Knowing what you know now, what would you do differently if you had to start over?
There is a funny story about that. I implemented the game rules that we knew and played for our whole lives. After the release, we got some very angry reviews and I found out there are at least twenty different rule variations for checkers. Various regions of the world play using their own specific sets of rules, like you can or can't capture pieces backward, the capturing is obligatory or optional, etc. I added support for the most popular ones in the following releases. :)
I also underestimated the complexity of the algorithm that validates all possible moves every turn when you change the rules to involve kinds and mandatory captures.
What were your biggest advantages? Was anything particularly helpful?
I think our biggest advantages were good timing and good use of the available native technology.
Apart from learning new things, our reason for building this app was hitting the new market with a product that could be noticed. We fully utilized new APIs, and Apple loves those kinds of apps. They want to promote new things in their mobile system, so they often promote applications which are built around new features.
What's your advice for indie hackers who are just starting out?
Learn to finish things. Whatever you do, it's a lot more valuable to release even imperfect projects than to give up after two lessons of a tutorial.
Being innovative is usually a disadvantage and really hard if you don't have the funds. People use and pay for things that allow them to progress faster. Focus on validated markets and start with solving a single problem better than competitors.
As for learning, recently, my favorite readings are your interviews on Indie Hackers :-D Nothing is better than learning from the real life stories. However, I also recommend titles from these authors:
- The Universe in Your Hand by Christophe Galfard
- Dieter Rams: As Little Design as Possible by Sophie Lovell
- Stuff Matters by Mark Miodownik
- An Astronaut's Guide to Life on Earth by Chris Hadfield
- The Intelligent Investor by Benjamin Graham
Finally, I have some a few words of warning for anyone who plans to make iOS apps. This is a much harder B2C market than B2B, especially for indie hackers. For one, you can't target your application to a particular audience. Also, most people won't pay for apps in advance like it was 2-3 years ago. Only a specific group of applications will be promoted on the main page, and search in the App Store doesn't work well. Communication with customers is hard, as you can't just reply to the app's comments. And even if you want to only patch a small thing, you always have to wait in a queue for review.
Where can we go to learn more?
Thank you for the interview. I gladly answer any questions in the comments!