The Tumble Panda report


promoAfter I finished the last big customer project of my company, I spent a big part of my time on the development of Tumble Panda. It has now been nine months since the game was released to Google Play. Time for a recap.


It is save to say I invested at least one man year in the development of Tumble Panda.

“I invested at least one man year in the development of Tumble Panda.”

A game that had a very simple concept in the beginning but gained complexity with progress and graphical design. I changed the way levels are edited until I finally ended up with a combination of Tiled and Inkscape for the design.

Tumble Panda's level 40 in Tiled

Tumble Panda’s level 40 in Tiled

I used AndEngine as game engine and Box2D for physics. For skeleton animations, such as the Panda, the bamboo and trees we used Spine, which is available for $69 in the Essential edition.

A bamboo animated with spine

A bamboo animated with spine

Graphical design was made by Subphisticated and background Illustrations by Darren Herminghaus, for an undisclosed medium four-digit amount.

Sound design was provided by my friend LeTryp, for the great price of $0.

Total cost of development: A medium four-digit amount plus $69 and a lot of time.


On this blog I wrote 6 articles about the game or specific areas of the game.

174 people became membery of the beta testing group on Google+.

Tumble Panda was published to Google Play on July 7th.

I published news about the release to 161 blogs, 23 Facebook groups, 52 Google+ groups and in 25 forums.

I sent a newsletter announcing the release to 429 subscribers.

I played around a bit with ad networks as well and spent $220 on AdMob and, after seeing almost no result, another $200 on AppBrain, which I much more very satisfied with. I also planned to spend about $3800 in advertising material which madvertise owes me, but they did not reply to my requests, which left me with an unsatisfied feeling.

Shortly after the release we announced and two weeks after the release, we published the first update with four new levels. Both of course was also communicated in the forums, on this blog and in another newsletter.

Total cost of marketing: $440 plus, again, a lot of time.


Tumble Panda was reviewed by four different blogs.

The release newsletter was actually opened by 24 people, the newsletter by 40 by.

The game was downloaded an additional 120 times in its first week. Today, it has been downloaded 2,002 times.

The ad income from AdMob since July last year was a whopping ~$12.75 (eCPM $0.99). Tapjoy made us $0.33 and Google Play ~$1.11.

I didn't become a millionaire with AdMob -yet

I didn’t become a millionaire with AdMob – yet

Financial result:

Development: -$69

Marketing: -$440

Admob: $12.75

Tapjoy: $0.33

Google Play: $1.11

Total: -$494,81

So, judging by download numbers and financial success, it is save to say that Tumble Panda was a failure.

What went wrong

Well, looking back a lot. Here are some of the points to give you an idea:

  1. It took much too long to finish the game. I had already sketched out the basic functionality in the end of 2011 and had the first larger iteration with my designer in 2012. It was the first game I have ever developed, so a bit of a learning curve had to be expected. Still, it was exhausting not to finish a product for such a long time.
  2. The timing of publishing the game could not have been worse. I was in Japan back then and moved back to Europe only four days after the launch. I was in a bit of a timezone problem, with Tokyo being 13 hours ahead of New York and 7 hours ahead of Berlin. Being jet lagged wasn’t very helpful either.
  3. I started marketing too late. In hindsight it would have been much nicer to keep a development diary and involve a broader audience from early stages on.
  4. I misjudged development costs. Developing a product longer than expected means that it will also be more expensive than expected. Living in Munich is expensive and food is not free. Needing more resources for development also meant that
  5. My marketing budget was too small. Way too small. In the end, after the development was done and almost all the money was burned, there was not much left to spend. I had to sacrifice my time to generate new income from other sources.


Still, I learned a lot. Let’s take a look.

“Implementation beats everything.”

  1. Google plus converts really well, especially for beta testing. Of all the people I asked to join the Tumble Panda Beta, Google plusers responded the best by a huge margin. This is due to the fact that there’s no big barrier for them to join a beta, they are often affine to technology and most likely connected to me because of my profession as an Android developer.
  2. People don’t like to open newsletters when you are asking for something. A later newsletter, simply announcing a new app store optimization article, converted much better with 63 people out of 446 opening it.
  3. When developing a game, use a cross platform engine. I used AndEngine, because at the time Unity was in its infancy and libraries like libGDX were not supporting iOS yet. Getting one or more additional eco systems for free or with minimal extra effort is a no brainer.
  4. Focusing on smaller projects until you have found a suitable niche is a good way to go for a small budget.
  5. Implementation beats everything. Giving a product to customers or testers early on, analyzing their behavior and feedback and then deciding on what to do next will guide you in the right direction.

What’s next

To get some money I started working for clients again. Being a freelance Android engineer is an easy way of earning a generous amount of income and is what I am still doing at the moment.

I will be moving to Japan in July and therefore started a new blog, which you can take a look at on If you are interested in Japanese culture, traveling or the Japanese language, take a look. Right now I’m writing two articles per week, one on a random topic and one Japanese Challenge. My goal is to grow it to 10,000 views per month (at the moment it is at about 2,000 views/month).

I also have a plan for this blog. I want to re-develop one of my existing apps from scratch. What I’m planning to do is involve you in every part of the project development process. Starting from competitor analysis, over selecting features, monetization, architecture and development. Marketing strategies and their implementation, product launch, update strategies and financial results.

Now, if you are interested in seeing this kind of posts here, please let me know in the comments. Also, if there’s anything special you want these reports to cover, please let me know.

App Store Optimization (ASO) 5/5: Users

Today I finally want to finish on a series of articles I started four years ago: App Store Optimization.

Parts of this series on App Store Optimization are:

1. Keywords
2. Description

3. Icons
4. Graphics
5. Videos

6. Ratings
7. Installs
8. Users

This final part will treat the topic of a game’s most important resource: its users. Why is it considered App Store Optimization? Because ratings are really important, and on Google Play especially keywords in ratings have a high priority. Also downloads and download/uninstall ratio play an important role when it comes to your app being placed in the charts.

8. Users

Users are the most important thing to have for your app. Without users there’s no visibility and without visibility, there are no new users and without a satisfying amount of users, there are no earnings. As a rule of thumb it is more expensive to acquire new users than to make existing users stay. That’s why you should take good care of them.

Most of your users will never give you any feedback. If they don’t like your app, they simply uninstall it and move on to the next. This is why you should give your best when dealing with the small percentage of your users that invest some of their time to get in touch with you. Here are some things to consider regarding communication and mindset when talking to them.

The user is never wrong

and is right most of the time. No matter how stupid your user seems to be, you should take your time and ask yourself what may have been the cause for his behaviour. He took some of his time to get in contact with you, so he must care of your application to some degree

Dealing with feedback

Sometimes, you will receive great, sometimes not so great and sometimes pretty bad feedback.

Great feedback can be just encouraging like “great job, I love your app” or similar. It can also be “I like your game but I find it hard to go through process xyz.”, giving a clear idea of where to improve your app. Also feedback in the form of “I can’t finish the tutorial on level three” is a great feedback because it gives a clear idea where you have room to improve.

Feedback that is pretty bad is the kind of feedback that is not transporting constructive criticism. Something like “Your game is boring, ugly and not fun at all!” or just “Shit” are not very encouraging and give you no idea of where you could improve to satisfy this particular user. You will need to get in contact and try to find out what is wrong. If they reply, the chances that their feedback will turn into something better are very high, because this shows that they care about your product. You just need to communicate with your customers in a suitable way in order to make them feel valued.

Here are some tips on how you can achieve that.

Basics of user communication

There are some dos and don’ts you should know about when communicating with your users.

1. Always reply

This should be pretty obvious. Whenever you are receiving feedback, you should reply quickly. When it’s a positive one that is just saying you did a good job, you can fire back a quick message saying thank you. When you are receiving negative feedback, you should go into more depth and try to find out what the user is really complaining about.

2. Never fight

A fight occurs when two forces are colliding and this is the feeling you’re getting when dealing with bad customer service that isn’t actually trying to do service to its customers. When taking care of your users, a fight is when two forces (the user and you) are colliding and both are losing (you, because the user is never wrong and you therefore can’t be right and the user because after experiencing a bad app he also experienced bad customer service).

3. Forget your ego and personal opinion

Feedback may be insulting or appear illogical to you. Something like “This dialog should not be shown to me, it is not my problem when my device has no internet connection, it is the app’s” invites you to reply with an opinion and flood the user with arguments. Resist that urge, as it may very likely result in a fight. Even when you are attacked personally, it is not about you, it is about you building an application that is creating a great user experience (not a great developer or customer care experience).

4. Be humble

Instead be humble. Ask the user for his feedback and excuse for not meeting his expectations. This is absolutely necessary because it is very likely that, after having made a provocative statement, the user is expecting a reply that is trying to disprove him, i. e. he is expecting a fight. This behaviour will increase the likeliness of him rethinking his position.

5. Ask questions

After having resisted the urge to impose your opinion on your user, start working together in one direction with them. Ask questions on why they are not satisfied and what you could do to change that. Disappointment always results out of expectations that have not been met, so you need to find out what the user actually was expecting from your application.

6. Be personal

It is important to create a connection to your user and not sound like an automated message. Most people don’t like to talk to anonymous people or robots. This is why you should avoid ending your messages with something like “Kind regards, the Andlabs-team”. “Kind regards, Johannes from the Andlabs-team” is better. You can even introduce yourself in the beginning when you have the feeling it is appropriate. For a nice read on how to do this right, take a look at Slack’s communication during #SlackDown.


Here is a quick answer on one of the typical “it sucks” kind of comment:

“Hi [userXYZ],
thank you for your feedback.
My name is Johannes, I’m Andlabs’ CEO. I’m sorry for the trouble you had with our application.
I understand you are having issues with our app and we would like to solve them. It would be great if you could give us a more precise description on what we could change in [Appname] in order to make it a better experience for you. Can you tell us what you are missing or don’t like? Is there anything else we can do for you to enjoy our app?
Thank you again. Best regards,

Your aim when writing a message like this should always be to make your user feel valued. The level of formality depends on the platform, medium and number of messages you exchanged. Usually I start in a rather formal tone, transitioning to something more informal as the communication proceeds, but only if the user’s language is informal too. 

In my experience so far, after sending messages like this, the user’s mood was always cooled down in their reply and their problem could often be identified as a feature they couldn’t understand or find in the app.

When the feedback is more particular, you can be more precise and give feedback like “Feature XY will be implemented with the next update which we are publishing on March 27. You can enable it when going to the settings and clicking on ‘Feature XY'”, before asking if there is anything else you can improve on.

How not to do it

Now, here is a real live how-not-to example of a reply to a negative feedback on the Google Play Store:

 “Dear customer,
we are sorry for the inconvenience. Our teams are currently working in order to match your expectations. A new version of the app is available. Please feel free to send us your comments at in order to improve the app’s experience.
The Appname Team”

How would you feel after reading such a reply? Would you feel treated good? Like a valued customer? Would you write your feedback again to their provided email-address?

This reply is generic from the way the user is addressed to the signature of the message and the space in between is filled with generic content. The fact that they are saying they are working on matching your expectations is followed by a sentence that is essentially saying that they didn’t read your comment, since “A new version of the app is available” has no value to the user besides implicitly saying that his expectations may be fulfilled and he should try and see, but they don’t actually know. This again is implying that “Our teams are currently working (…) to match your expectations” may be a lie since they did not actually read the user’s feedback.

In this case, it would have probably been better to leave the user alone and not reply at all. This kind of user treatment cannot be acceptable.


Whenever communicating with your customer, never reply in a rage. Try to see how you would feel when being in your customer’s position.

You will see how satisfying it is when a user’s opinion changes to the better and you are able to work together and create a win-win solution.

I’m curious to hear the stories you had when communicating with users or customer care. Please share them in the comments.
If you liked this article and want to receive updates from by e-mail, you can sign in to the newsletter here:

New Tumble Panda update

We just published an update to Tumble Panda, adding another four levels.

While they are all hard, the last one is almost unbeatable.  Here’s a little teaser video I made:

In total this makes it a 44 levels of Panda fun now, all free to play.

If you haven’t tried it, click here to give it a try.


Play Tumble Panda – Support the environment!


Last week, we launched our first big game, Tumble Panda.

Instead of spending lots of money on marketing, we are using a percentage of our earnings to support the environment.

tumble panda - get it on google play

Saving the Panda

While being adorable mammals, with a population of less than 2000 wild animals, the giant Panda is almost extinct. This is why we decided to give five percent of the revenue we are generating in Tumble Panda to charity projects.

Rebuild our forests

Besides the rescue of the Panda, the scope of our donations is reforestation. Rain forests are the natural habit of an estimated 90% of land living species. We support the reforestation and preservation projects in order to conserve a rich diversity of life on our planet.

On you can see the list of charitable projects we are supporting and get information on our project, as well as our most recent donations.

At the moment we are supporting the following projects:

  1. Pandas International
  2. InDeed



There are many ways in which you can support The easiest is to play the Tumble Panda game and tell your friends about it. In this way, we are able to gather traction and visibility for our project and you can have an enjoyable time with our game. If you are financially capable of it, please also consider donating to the above organizations. If you want to go even further, you can try to change your lifestyle a bit by taking a look at the InDeed campaign for nature.

Also, if you think there is a project we should be supporting but do not yet have on our list, please feel invited to drop us an email at projects [at] tumblepanda [dot] org.


© 2016 Droid-Blog

Theme by Anders NorenUp ↑