Increasing Android app downloads without spending any money – Part 3 – growth hacking

How do we increase downloads and optimise conversion rates of people browsing app ? Of course, the strategy will vary from sector to sector. But there are few basic rules which one can still follow, to drive more installs of app, based on learnings from part 1 and part 2 .

  1. Ratings
  2. Name of App
  3. Description
  4. Play Store – Screenshots, Promo-text, App Icon
  5. Competition
  6. +1 Button
  1. Week 1 and week 2 strategies
  2. Update Frequency
  3. Be the no. 1 promoter of your app
  4. Follow your gut
  1. Innovative ways
  2. Blogs
  3. Localization
  4. Forced virality


GETTING STARTED – Basic Marketing Strategy and SO


This is the most important factor as also mentioned in “factors effecting ranking” . A metric whose results are most visible on the rankings. Google developers themselves encourage  developers asking users for ratings using rate dialogue box. They understand that its too tedious a task for a user to specially go to market, find app and rate.
The right way to ask for ratings is to be upfront, honest and sincere. Ask users for their candid feedback. If you want, you could ask your a user to leave a rating, but dont ask for a specific rating. You could also ask for specific rating without offering any incentive. Whole point of review is to get honest feedback. But don’t forget that by asking feedback, you not only improve app, but also increase rankings, as more the number of good ratings and comments more it rises on the playstore.
The way for asking ratings should be nice and non-intrusive . Here are some Do’s and Don’t s given by google developers :

  • Message examples for asking user to rate

1) Great –

Screen Shot 2013-06-08 at 6.41.49 PM

2) Little sketchy – Don’t be so direct. “Did you enjoy this game? Rate it 5 stars!”

3) Don’t lie to get ratings. “Having fun? Your five-star rating helps us to keep this game updated!”

4) Don’t try and incentivize user to get ratings, that too something trivial like coins. Users hate it! Don’t use wannabe words like doing rating makes you cool.

     Where to place rate notification

  1. Ribbon/ Slide out Menu – With ribbon style navigation menu made official and wide spread use using ABS,. You could have rate app as one of the menu items with developer section as heading maybe. This is non-intrusive way, and doesn’t spoil user experience ever.
  2. Toast like Fragment which is clickable. Clicking on it opens google play with your app. Pops up at certain times, like opening app for the 3rd time. etc.
  3. Dialogue box – This one is of course the standard one. Can be intrusive. You can add another nuetral button or checkbox – “never ask me again” which can be clicked if user does’t like to be reminded to rate app ever again.
  4. Button – if you have a dashboard type UI (though its a passe now!)  and can afford to have another  button, it can be placed even there or along with Fb like, g+ buttons if you have.
    When to show

  1. User opens app for nth time
    You should focus on regular users as they tend to give higher rating since they have used the app enough to know all the features.Say show the dialogue box only after user has used app 3 times.
  2. Action complete (like game finish, text message sent, food calorie tracked etc.) You could feed on user’s happiness at completing a milestone  or aha moments to advantage and ask them to rate app. It will result in general higher rating and more number of users willing to rate.
  3. Dialogue box can be shown while quiting app on back button. This too is advisable to be shown once user has used app atleast 2 times. Never be so intrusive to show rate dialogue/pop up more than once in one usage of app.

      Other general rating strategies

  • Its preferable to use custom dialogue box with good UI, which is attractive and nice rather than using android defaults.
  • Services like Apptentive can be used. They have an SDK that allows you to ask your users if they are happy with your app or not.  If they say they happy, they get taken to a page that asks them to rate your app. If they say they are not happy, they are given an opportunity to give you feedback about the app.  This is a great add-on to help you improve your average review score and at the same time get valuable feedback from users about how to improve your app.
  • Aim should be to always keep rating above 4.25. Thus while browsing user will see app having 4.5 stars in first look. This increases chances of user to click and check out app. So, until you have 4.75 +, 4.5 stars is what people will see. Having 4.75+ is very very difficult to maintain, developers who have, have all my respect, wish I can do the same some day :)
  • General thing I noticed to keep rating above 4.25 . For every 1 star on market , there is need of aprox 10, 5 star ratings given that 4, 3, 2 stars come with randomness with 4 star being on higher side. Note : This is not a hard and fast rule, just general observation.
  • Users generally always download only apps which are 4 and above in rating.
  • Effectively use Reply feature on Playstore
    Developer console has excellent feature of replying back to users now. Use it !! If user asks for new feature, appreciate him for suggesting, if he faces force close/crashes contact and assure him that you are looking into the matter and contact him back once issue is fixed. This can greatly reduce bad ratings.
  • Initially with first 200 ratings, if the app is good, ratings are around 4.5, but with popularity of app it tends to come down as more and more people are using the app and expectation are on rise. This is critical stage. Keep development cycle fast, keep pushing updates around once in a week, adding new features and listen to users.
  • Btw for those who don’t know how to open playstore from within app :) Its pretty simple. Use action view intent with setData pointing to uri of your app which would be something like-“” )

Developers can use apps like Andlytics  to keep tap on day to day comments and ratings. I personally become so obsessed with ratings in first month that have to install it :P


  • Name contains most important keywords for your app as discussed in  “factors effecting ranking” to improve organic search. So naming it right is very important. Will prove this by example:
  1. WhatsApp : Even after major success on all platforms  WhatsApp calls itself WhatsApp messenger not just WhatsApp. Note they have the word ‘messenger’ added because a lot of people would just search messenger. Users search for need a lot of times not for brands. Also note that they must have been inspired by blackberry messenger when they added it to their app name. Its generic and explains features/use of app perfectly.
  2. Skype – free IM & video calls. Keywords are added to app name.
  3. Runkeeper – GPS track run walk. Don’t be afraid to add more than 1 keyword. Experiment with various combinations to see which one gets best results.
  • When I named my app spellathon, I knew there was no way anyone would search that so I renamed it “Spellathon – word game ” so that it kept popping in results. People trust app’s which come up when they search. It improved daily installs by considerable amount.
  • According to Fiksu, including the keyword in the app name improves ranking for that search term by 80-100 spots. It’s important to remember that you can still call your app on the user’s home screen whatever you like, which allows you to build brand presence after the fact.
  • Another trick dev use is to keep name similar to already existing famous app with more than 10 million downloads and by top developers. So users searching for famous brand end up at your app. I don’t really like this, my job was just to inform.
  • This one is random and not tested, but came to my mind, since it happened with me. A lot of phones order apps numerically and then alphabetically by default which hardly anyone changes. So an app starting with number like kiip’s 7X7 or apps starting with ‘a’ are likely to come on first page of apps on phone and more likely to be opened than an app say starting with ‘w’.Bottom line being name should be unique yet searchable. Reverse engineer the searching process and think what a user might use to get to your app.


  • After the App name, next comes the app description. Make sure the app name keywords are repeated in this section. Try and think of all the keywords users might use to search, string them into a sentence. 4000 characters in your store listing,  so get innovative.
  • There are various websites available these days to validate the keywords used in app such as Appnique which compare health of your app keywords as well as gives metric with other competitors.
  • Important point to note is that there is a more button on play store on mobile as well as web. People a lot of times judge app just by what they read, without going through effort of clicking “more” for description. You need to make clear what app does in this space efficiently. So basically 4000 characters is kind of a myth. You have to impress user in much less than that.
    Screen Shot 2013-06-09 at 4.35.38 AM
  • Add press/blog mentions in description of app. This should ideally be first line and thus will be shown below promo tag line. This has really positive impact on user and gives reassurance that app is worth the download.
  • If above is not there, highlight user comments which include important keywords.
  • For all the people who have heard the saying “too much text in presentation” and how big a crime it is, equivalently big crime is to give description in paragraph. Always, Always use pointers to mention features.
  • make important words capital .
  • Give FB, G+ pages links and ask user to like them.
  • good order  for description is is usually – tag line with small description, blog/press/user comments , features in points, fb page link
  • Go through description of competitor apps before finalizing yours. Look for keywords and pattern used. This is just for learning purpose.

Dont’s for description – 

1) Dont try to use sentences like “if you like W, X, Y, Z apps then you will also like this app” . Its against market rules to drive downloads from other app names in your description. Overloading description with keywords is also wrong. You might get mail something like this if you try ( and that too within 24 hours!!).

Screen Shot 2013-06-09 at 2.57.06 AM

Yes, my random experiments have let me to this too (for god sake I was a inexperienced, I did not know all this could happen). So its coming with statutory warning – “Do not try it with your app”.   

Promo text should be simple yet clear enough to convey user what the app does as well as good keywords. Example Pulse has – “Bringing you good news”.

We all are visual creatures. High quality app icon, screenshots, video all add up together and tend to increase customer conversion rate as they are indicator that app is of high quality. 

Better screen shots – Move all of the most important info from your description  into your screenshots. Don’t be satisfied with simply screen-capturing your app, BORING! Take advantage of the space and canvas to close the sale with great marketing collateral. Think of your screen shots more like a trifold brochure (like the ones at hotels for a fun tour/experience). You’ve got them pretty deep into the sales funnel now close the freeking sale! Make your app look fun even if it’s not super exciting, people like fun, it’s why people on TV are always smiling, if the app looks fun they’re not going to go back and look at your competitors, they’ll download your app and check it out. Caveat: don’t overload the screenshots with info and features, pick out the very best/key features and highlight them. Also don’t be afraid to cheat the screens to make them look a little better, Photoshop is your friend. Your screen shots should look better than your app.


Keep keen eye on competition but in a positive healthy way. Its tech world, people copy feature fast (Leave alone iOS who took 5 years to copy android :P ) and catch up on the race. Have faith in your product and features, try and learn from what competitors are doing in product strategy, design and marketing.
Compare ranking of your app for various key word combination on play store. Try and improve rankings.
Above all, Be human, don’t let competition blind you.

6) +1 button

Android now allows to embed +1 button in app. So copy the url for +1 button from playstore and directly include it in app. This avoids hassle for user to go to playstore, its kind of way to allow users to rate from within app itself. With new google ranking algorithm +1 are almost as important as ratings themselves. Not many developers are doing this trick, use it please !


There is no hard and fast rule, but I would like to point out relatively preferable time of the year and day when downloads are maximum.


Clearly people tend to download apps when they are relatively free. So we need to feed on that . Release app on friday so that the number of installs are gathered over weekend. Sunday 9 pm was most poplar time to download app according to google IO 2012. You could ask friends n family to download, rate and help market on the weekend , thus first week momentum gets taken care of. If you release app on weekday, no one will be there to either help you or download.


  • Holiday months november, december, january get maximum number of downloads. Also halloween, memorial day etc count in to increase number of downloads.  So again these months are preferred.
  • You could use season themes – Christmas/ halloween if its a game.

Note I am stressing on a strong start again and again. Android market algorithm tries and favours new apps which are getting good number of downloads, ratings. The chances of making good app repo and getting featured are much higher than it would be anytime in the whole app lifecycle. 



1) WEEK 1 and 2  STRATEGIES 

Week 1 and 2 after app launch are the most critical as to how app will fair in the play store in long run. I have kept it as separate point as it deserves attention. Same amount of marketing effort done later will have lesser effect on ranking than that same effort done in week 1,2 or say month 1. Try and ensure as many downloads and ratings as possible. Note this is critical.Its sets the download momentum. Since you just launched app there might be force close/ crash issues which might come up. You have huge  task ahead for yourself. You should be working 24/7 in first week atleast.

1)to fix the issues which come up up.

2)Push updates wisely – Fix isues with level head such that max issues get solved in one go and then update. Taking care of % of  active installs does not go down, since with each update downloads might increase but people are same so effectively %  of active installs reduces which is not good for ranking.

3)Get people to download and rate app by Word-of-mouth/blogs etc

Too much to handle alone if you are single developer, advise is to get your friends do the marketing job.

There has to be balance between feature pushes/ issue fixing and frequency of updates to be sent. Too frequent will irritate users and lead to uninstall of app. Also with each update, downloads increase but user base remains same aprox, then it will lead to decrease in % of active install, which is very important factor in ranking apps. I would suggest  once every 5 days in intial 3 weeks.(some crash issue and you might have to submit even 2 updates in a day !! been there :\ ), every week in next 2 months. By this time app would have stabilized so every 2 weeks after this is good I think.

3) Be-No-1-PROMOTER-of-your-app

This is last point but as important as first point. I read this post which defines one of the qualities an entrepreneur needs to have is to be-shameless. This is a very important trait as a lot relies on your capability of word-to-mouth publicity. Now, some might find it below their dignity/morals to ask their family and friends to download their app. I know its not easy to ask makes you vulnerable, sound like a pompous narcissist. Well I respect their decision but don’t fully agree. Your job simply doesn’t end after making an awesome app. It just got started. We are here against giant game developing labs with thousands of marketing revenue. You have to make a choice and keep your ego aside. You are just simply asking them to downloads the app/game and rate it if they like. You don’t need to be specific about rating, thus it keeps your morals intact as well.

Cant stress this enough, so I am repeating again,  ask your friends/family members to download and rate app and ask them to spread the message along.This is of utmost importance specially in first 2 weeks of launch as it sets the tone of app. Tell them not to uninstall app longest time since % of active intalls also matters. Think of it as you need urgent blood for operation. I am that serious.

I can’t vouch for other countries but whole india currently seems to be on android, from random uncles to almost all your friends and colleagues. If some android developer tells me that they personally don’t know min 30 people on android, they are kidding themselves. No offense,  but please stop development, but first go and make friends, your life is greatly missing them.

Wear t-shirt of your app around in conferences and android meet ups (there are plenty happening everywhere in india). While you travel make sure you talk to one random stranger about app you made, try and understand people better. Doesn’t hurt at all. Be ruthless in your approach to make people download and try your app. You never know when you acquire a customer you start a chain reaction. For every download and rating done, you are increasing ranking and thus implicitly increasing more downloads from other regions of the world and thus saving money which would have been required for marketing. Approximate cost being $1 per customer acquisition.

Tip : to know who in your gmail chat list using android phone. Go to settings in your gmail -> Labs (thank god they did not kill this google lab too !!) . Check green robot. Now you can see who is online from android :) targeted marketing.


Now this  serendipity and gut stuff  is overly exaggerated. Usually when your heart, mind, soul are into work and so focussed, you have background thread running your head and tend to pick small cues around you, even when you are random driving  passing by a sign board or talking to stranger, which lead to  good stuff. this is mainly because you are in mode of trying to find opportunities. But pls don’t try and use gut where you should be doing A/B testing and letting users guide you.


Getting More Visibility


  • Message users on G+
    Google linked accounts of people commenting on Play Store to  G+ account. This can be exploited to send messages to users. But which users is the question. Go to play store from browser, go to competitor app reviews/ comments page , from there go to profiles of users who commented on competitor app, and send them message something like“Hey how are you? Do you have interest in X category of apps.(Obviously they have !! you just got to them through a competitor app’s playstore page where they took effort to even rate it ). We launched new app xyz. It does this this stuff…maybe you would like to check it out. Please let me know about your thoughts about app and any way we can improve it for you . Have a great day. Please don’t forget to rate app if you like it :) “.
    (Being lil informal on g+ is fine, keep a cheerful attitude in the message you send). Strange as it may sound, this method is great for user learnings. A lot of people reply. Since no one really uses this method and they likes feel special that developer of an app contacted them personally and asked for suggestions. You are feeding on their ego. They even go ahead and share it with their friends. Also g+ directly sends notification to your personal gmail, which I believe people check regularly.
    Some might call it encroaching,  I call it smart targeted marketing. I see nothing morally wrong in it because that is what big giants do when give they advertisements. Just don’t spam people. Better still maintain an excel sheet to keep track of user ID if you plan to do it on large scale. Get all your friends to help you in this. Specially if you are college student, you have army of free friends by your side, use it well.
  • Heyzap 
    If you have a game, you might want to consider using heyzap. I did the same above g+ stuff with heyzap since in 2011 there was no g+ account linking back then. It had amazing results. 25-40 new ratings every day (i was able to send  messages some 75 people everyday) . Plus I got to talk to users first hand and learnt tonnes of stuff and features they wanted. This is what I did sitting at back of classes in college ;)
  • Email
    Send personal mail to anyone you can. It has more or less g+ message type functionality. You should have a prior compiled list of people whom you want to email. Keep this updated and adding more people to it.
  • Try and find target areas – like schools and colleges around you and go do a small event/competition of sorts while publicizing app. Always helps.
  • Google developers do friday app review sessions. Try getting reviewed in that.
  • Many android competition keep happening by local community GDG or Android developer group. Take part in them. Connections in android community never goes waste.
  • Offering promotions, like ‘free for a limited time only’,’Having christmas discount’,’1 year on play store’ etc
  • Build followers in various social websites and *maintain* them. Keep them engaged with news, tid-bits and interesting topics.
  • Create website – Imagine trying android app in browser? . This will work really good specially for games. Few app developers even placed widgets on their product pages and got users engaged on their web pages. Have a look Cribbage Pro a card game app and its official website with embedded widget where users can try the app. Cribbage Pro . Bloggers included the same widget in their blogs which was very effective and realtime experience  of game and increased downloads.
  • Widget for Facebook – Being able to try app in facebook feed like youtube video. Some of the apps did it and created buzz in social channels. See AppSurfer  for further information.
  • Launch a contest on Facebook or Twitter involving cash prizes or app giveaways.
  • Add widget to app. Now not many app add widget specifications, so if anyone is searching for widget on market might stumble upon your app and you might actually get downloads. There is separate category called widgets on market, your app will be ranked higher in it than it might be in its individual category.
  • Try changing categories. This one can be risky but see how it effects daily downloads.
  • Post to facebook groups related to android.
  • Have keen eye on user metrics. For example I realized that almost 70% of my word game users are female.

2) BLOGS – attacking page rank 

  • Make fb page , twitter page, wiki pages.
  • Make sure you include a link to the app on all pages on your website, blog, etc. Put the link in your website footer.
  • Reach out to media outlets or ask bloggers to write about your app. You can use the same g+ trick here also. For example – you can go findTechcrunch, verge etc editors on g+ and atleast send them a message  about your app.
  • Submit your app to app review sites like phandroidandroidguys,andronica,&  androidandme. These people might get many requests daily for reviews. Do your homework and explain them how your app is better and different than what is already there. Here is a great interview on the topic:  How to Successfully Pitch Your App And Make Sure It Gets Reviewed – Interview With Erica Sadun
  • Find relevant pages on Wikipedia where you can include a link to your app
  • Twitter – you can create a buzz, especially if combined with a good review (this generates a lot of RTs) or a major Android “celeb” sharing a good word about your app.
  • checkout  mobiledevhq.
    Try and do more SEO activities, above ones are very general. I am not an expert at SEO so cannot tell more, sorry.


Ranking of apps for each country is different, with local language app given preference. An important step to increase ranking of app in a particular region/ country is to convert the app strings in local language. If your app is generic like game, go ahead and add all possible localisations android allows in your app. Market favors local apps.

Important note to keep in mind is the app crazed nations where chances of app getting downloading are more.



If your app has social element, like its messaging app/game etc you might want to the user to share it with his/her friend. Say user has successfully sent 5 messages  using your app, you might want to present him with menu to invite his/her fb friends. Or if when user attains certain level of the game, it becomes imperative for him to share app with his/her friends to move to next level and give him some bonus points / open puzzle sets/ coins for doing this. There has to be decent balance where game has become addictive for user that he does not mind sharing app and get friends involved as well.

Something similar was done by Dropbox using Referral Program. Free cloud space was given to people who successfully invited and on boarded their friends to the platform. Incentivize people to get more of their network. If you have paid app, you can provide refund or discounted price on service within app.



  • Media kit 
    Even before you launch be ready with media kit like – screenshots, app information, story about how app started and why (yeah bloggers dig that !), video , web widget (if possible)
  • Follow up on email 
    Users signed up on your app, make sure you send nice follow back email/message. If say its health app send them mail regarding progress they made. Ask for feedback.
  • Increase contacts in android, startup community and forums. Spread word around what you are doing.
  • Trademob published a paper on “Best Practices: Be the Best in your Mobile App Marketing (Free paper)” download it here
  • Good site – appsgeyser might want to check out.
  • good article by flurry on app engagement
  • Add tutorial in your app



1)These are the ways to increase number of downloads not retain them for sure. Acquisition my friend, will depend on the app idea, need and how well part 1 was followed. Why I stress on getting more and more downloads and innovative ways of targeting customers, because with low or no marketing budget that is your golden key. Its anyway better than sitting around and waiting for traction to come on your own. You as a small team made an awesome app, great ! time to hustle the hell out . Virality to causes retention, retention to cause virality. Specially in games and social apps.

2) Above methods are tried and tested way for games for sure. I have seen them reach trending apps section just by following part 1 and part 3 really well and 0 money spent on marketing. Thus compelling me to write this blog and share what I learnt.

3) This by no means undermines the power of advertisement. Sure, you should do it if you have the money. But do not think everything is lost if you don’t have it :)
Also, not everything is gained with a paid download or PR strategy. It won’t help you overcome a bad app, but you might want to use them to re-generate momentum if your user growth starts tailing off. Personally, I am not a supporter of paid downloads and would never do it.

The blog is documentation of my observations and self learnings from apps I have worked on in the past 2 years. I am sure there will be many points which can be added further.

Please feel free to comment and express your opinion.


Increasing Android app downloads without spending any money – Part 2 – Factors effecting ranking

So you have made app with great design and tested code. Ok hold on ! you don’t do this first. Part 1 is important, but what is even more important is to spend time planning go to market strategy even before you write first line of code or it will get really difficult to figure out business channels after app is done. Either it should be done side by side if you have team otherwise decide everything beforehand.

We will first understand the google play app ranking algorithm metrics. (note – these are just self realisations and surfing results, nothing official by google ) before moving to tricks in part 3.

  1.  Number of Rating/Comments of app
    Likely to be high for apps which are used often and therefore top of mind.
  2.  Overall market ratings from 5
     Apps which are in continual use are likely to have good customer satisfaction
  3.  % of active installs
    Percentage of copies of an app which stay installed. This is a very important factor in determining app rank.
  4.  Updates
     If app is maintained by developer or not because updates ~ improvements and addition of new features.
  5. Number of recent installs
    Those who have installed an app more recently are likely to use it more often.
  6. Total number of installs
    Affected only slightly by frequency of use. Maintain single APK for all devices as mentioned in part 1.

Next we talk about google play search ranking algorithm metricsPlay Store works on “organic discovery” which is search driven. Organic users seek your app on their own – without paid advertising. These users are not only free, but much likely to become loyal users than those who installed app after seeing advertisement. 75% of downloads on google play are by organic search as studied by Fiksu. Where 50% – brand name search and  25% – generic search. Data shows that users who find app by search are 50% more likely to become loyal long-term users. A study by Fiksu determined that 75% users found app on google play just by using search. Thus search is an important app discovery tool which is  largely determined by the following :

  1. Keywords in app title
    the key in your app tittle is the most important element which impacts search rank. Right keyword in app can effect position by 80-100 spots. Identify your most successful keyword and include it in the title.
  2. Keywords in App description
    Within app description, frequency of keywords increases your search rank. Try to use a keyword multiple times. This impacts rank by 10-20 spots.
  3. Keywords in promo text
    This is the tag line of your app. This convey what your app does in easy to understand fun way .
  4. Localisation
    Adding localisation of strings in android app, tells the play store that app is specific to that country and increases the rank of app in search results for that region.
  5. Page Rank
    Google uses its classic Page Rank to determine ranking of app.Page rank basically referes  to the number of inbound pages pointing to your App.  There are many traditional SEO activities you can do to generate links to your app which are discussed in part 3 .

google play app ranking algorithm metrics combined with search ranking, determines where your app will be placed in the market. We will try and attack these points learnt here in part 3 (coming soon)  to see how ranking can be improved and thus increase downloads. Our aim is to attack both Volume-driven and Rank-driven download-acquisition models :)

Increasing Android app downloads without spending any money – Part 1 – App Quality – Get the basics right

You got an idea, which you are really excited about and believe in. After initial market research to validate the idea, understanding target users and developing business strategy, you get around to decide the Tech stack. With whole world going “mobile first“, you decide to make Android version followed by iOS. This article is majorly focussed for indie developers and startups with low market budgets, might not be fully suitable for ‘big-fish-in-the-pond’ companies, having thousands of dollars for development. 

This posts deals with following proper practices during App development . If the foundation is strong, the building is strong and does not shake. Below are some of the pointers to be taken care of while developing app . I have learnt them by faulting at them myself, delaying app launches and development cycle. Don’t want others to do the same mistake I did. Following proper practices builds your confidence and sense of pride in your own product. This will help you go ahead and pitch your product to users and investors with head held high. #Be-Your-Products-No1-Promoter. I will explain this in detail in part 3 of the article why this is important.

 1) Do Testing. Period.

  • Cannot stress this enough. A major reason reason for force close and ANR is lack of proper testing. Test-driven-development is advisable even if you are working alone/ Hackaton mode. Agreed,  takes more time and you could have built some other feature in that time. But get over this irritation and write tests.
  • Uses : Test makes the code modular and results in better code maintenance, readability, cleanup and refactoring. Also, it helps to add new features faster and with confidence. Keeps the development cycle fast and helps in updating. Force close is something which we cannot afford to have.
  • preferably use dependency injection. Roboguice is supposedly the best.
  • Combination of roboguise + mockito + roboelectric  

2) Design 

  • For all the developers out there. Respect design. Its a major part of app, something which will make or break the game and put you above the rest of the apps.
  • Follow android design guidelines more or less, few tweeks here and there are fine till you can justify them .Try innovative gestures.
  • Make sure your design is awesome. I am not a designer so cannot go into details . Its better to get in-house designers that to put it off on a designing firm, who give limited number of iterations and give you more BS  than doing real work.

3) App Permissions

  • Only use permission which are required. Never have shady permissions like “retrieve running apps” ,” phone identity ” etc in app till user can either see clear use of it. Dont forget to explain on the market if any out of line permission is being used otherwise it leads to bad ratings.

4) Project Development Tricks

  • Soft Launch app with different name and publisher account .
    Matt Brezina, Founder of Sincerely
    This is a great observation Andrew. One thing we did was launch 2-3 versions of our product under a different apple account, without our personal names on the app, before we launched Postagram. When we did a PR launch the product was basically just a branded version of our work from the past 4 months; we knew it would function well and we knew users would love it. Since then we’ve never spent more than 4 weeks developing a release. And we particularly use Android for quick experiments – the apple 1 week app approval delay can really slow down the iteration cycles – that, and the difficulty in doing a/b tests are my least favorite things about the current mobile development environment.”
  • use Android to prototype since the updates are easier.
    Kenton Kivestu Senior PM, Mobile Poker at Zynga
    Part of the solution is to develop / test features on Android where you don’t face the rigor or delay of the Apple approval process. Also, I think Kieran’s point is valid as well. Apple may have a high quality standard but there is no inherent reason that you need to spend 6 months developing something to get Apple approval. The 6 month development time is probably more indicative of feature creep, broad scope, testing too many things, over-polishing, etc.”
  • Test your app initially in another geography so that you can get things right. That might be Canada or New Zealand, where you have high smartphone penetration and an English-speaking audience that’s similar to the US.
  • Strong, iterative product management
    When we push daily on the web then why not for mobile? Try and have daily pushes and weekly releases.
  • Minimal Viable Product
    What is enough? This might require another post, but one thing I can clearly agree with Andrew Chen – “Simple but polished v1 app.”

source of above quotes on mobile project management are from  Andrew Chen’s blog post  .

5)Understand market/user better doing the ‘real’ launch to improve app 

  • A/B testing
    with new functionality in play store developer console to release update to only a set of users before launching .
    Use TestFlight for distributing and beta testing before launching app in the market for real.
  • Event tracking to understand user – Several easy to integrate tools can help with this, including Flurry (free and recommended for its UI), Mixpanel, and Google’s event tracking (free). Measure the engagement levels, average sessions, clicks to identify hot areas.
  • Feedback mail – Ensure that there exists mechanism for users to give feedback. This can lead to great insights, ideas for new features etc.

6) Advertisment – Don’t be intrusive

  • True, user is not paying you for using app, but don’t make it sin of his life by bombarding him with advertisements at wrong places like near buttons or sudden full screen pop ups.
  • If you are using admob, don’t try to be smart with them and follow guidelines or your account might get banned. Been there :P Took almost 15 days to revoke it back resulting in lots of loss. In most cases, they never revoke it back.

7)Maintain Single APK for all devices – avoid fragmentation

  • Play Store uses total number of downloads as important metric in ranking algorithm. Also, having different versions of apk for different android devices of density and size(fragmentation) reduces the count of downloads. Ensuring your app is available on as many devices as possible,  serving all devices from the same APK file.
  • Code should recognize on what kind of device the app is installed and dynamically handle changes to the layout/structure.
  • There is tradeoff between development time to support backward compatibility. If your app say india focussed where considerable people are still on 2.2 and 2.3, you will have to support it otherwise if say its USA focussed you can still do fine supporting 4.x. Note your decisions will have effect on number of downloads app will have which effects ranking.
  • Make all hardware declarations in your manifest optional using android:required=“false”. Just don’t forget to have your code handle the device not having that function.

Read part 2 of the series – factors effecting ranking