tl;dr;
These list of tips are for the one-man/two-man/three-man shops. If you have a team of people, then some of these things may not be applicable to you. I'm also assuming you're making mobile games (not cross platform).
I've got 3 games in the App Store, all of which at one point or another has made it into the top paid app in their categories. A Dark Room has been a #1 app overall. The Ensign has made it into the top #10 list overall. A Noble Circle has been the #1 Music game and #3 RPG. After 2+ years of doing this, the most important thing is to stay true to who you are. As an indie game dev, you are "selling" yourself as opposed to just a game. So find your style and stay consistent with that. You'll find an audience (even if it's a small one) who will continue to support you and buy your games.
Buy Other Indie Games/IAP
Commit to spending some amount of money per month on indie games and IAP. If an indie game gets featured by Apple, buy it and see what they are doing right. You have to understand the market. If you've never bought a game or IAP, how do you know if you yourself are doing a good job? So, buy games, learn from them, support your fellow indie developers for fuck's sake.
Build Games That Can Be Played in Short Sessions
You want to build "snack-sized" experiences for mobile. I play my mobile games on the can (you do it too, don't deny it), during commercial breaks while watching TV, waiting in lines, etc. So build games that can be picked up and put down quickly. This doesn't mean you can't build games with immersive story lines (I've done this "successfully" three times). It also doesn't mean you can't build "sit down" games like Transistor (they are just less likely to succeed given the nature of this platform).
Build Games for Mobile
You don't have a controller. You have a touch device. Build games that are optimized for simple input/touch. You can still make games that are really smooth/fluid. Take a look at Leo's Fortune, Piloteer, Wayward Sword, Downwell, and Sword of Xolan. The controls for these games are tight and satisfying.
You may also want to consider games that are played in portrait mode, one handed. It's one of the reasons why Flappy Bird did well (imho). Other good vertical games are Hoplite, Threes, You Must Build a Boat, 0h h1, and 0h n0.
Build Games You Can Finish Coding in a Short Period of Time
You have to build games that can be completed in two to three months (part time). I use the term "completed" loosely however. There is nothing stopping you from updating your games, but something "complete" should be released within two to three months. I've seen too many stories about how a couple of guys have spent a year plus on a game and still haven't released anything to the App Store. Don't do this.
On this same thread. I'd say have an alpha version of your game ready by week six. Submit this version to the App Store as a soft launch. You don't need to market the release of your game, but at least get through the App Approval Process and get something in the store that you can get early feedback on. If you don't feel it's worth charging for, go ahead and release it for free with a description of "Early access pricing, get it now while it's free!!". Don't put any notes when submitting to the App Store that the game is incomplete (you may get rejected for saying that).
I can't stress this "first release" enough. You need to get something out there. Honestly, you probably won't get any downloads... but life of the app in the App Store does influence rank, so why not get a head start on this?
Release Every Six Weeks Until You're "Done"
Assuming you took the advice above, you'll still be working on your game while it's in the store. You'll want to schedule a nice six week rhythm. This accomplishes a few things.
You have a sense of urgency for your next release. You know that whatever new game mechanic you want to implement has to be done within this time frame. This forces you to chop things up and really think about what's important and what isn't. For A Noble Circle, I take one six week period to optimize and polish, and another six week period to add new story elements and content.
Releasing often keeps your audience coming back to see what's new. Every release of A Noble Circle gets people excited to see what I've added. They will replay old levels to see if I changed anything, and they are more inclined to leave reviews with constructive feedback. I've had people leave negative reviews, and then come back a few releases later and say "Things are shaping up nicely, good work!"
Releasing often resets the reviews (reviews will get archived with every new release). So you spend less time worrying about a critical review and more time on fixing what they complained about.
Releasing often shows Apple that you keep your apps updated (this will help when it comes time to pitch your app for getting featured). There may come a time where you will get considered for an App Store Feature. Apple loves apps that are constantly updated with new/compelling content. So having a good update history will definitely help you out. You generally don't want to release more often than six weeks for this same reason (you're just overloading the editorial and review teams at this point... so don't do it unless you have a nasty game breaking bug).
Report Inflammatory Reviews
Reviews that are just plain negative (to you or other people) should be reported. Long negative rants aren't great to see on your review page, and frankly Apple doesn't want them showing up either.
Here are a few examples of reviews I got for A Dark Room that are eligible for removal (I didn't remove them simply because they are hilarious):
Garbage (1 star): It’s so nice to have this hive-mind community full of hipsters and morons raving about the worst goddamn games. Same thing happened with Angry Birds and Flappy Birds. You people are disgusting. Horrible unwashed masses of brainless consumers. Hey morons, take a step back and really consider the piece of crap you rated 5 stars. No, really, just take a moment.
And another one:
What is this? (2 stars): Before I bought this I was unsure so I looked at the reviews. They were all glowing which intrigued me, so I downloaded.. Played for about 2 minutes then deleted it! Absolute load of rubbish, it's sort of like sims but with no graphics, like a weird text version. Just utter nonsense how it has so many good reviews! If it was between watching a blind man trying dismantle a computer and playing this came I know which one I’d get bored of first!
One more:
Absolute scam!! Manipulated reviews!! (1 star): It's a text based game. That's ALL you get. Nothing like any review said how fancy and interesting the game play is. I suspect all the reviews are done by the developer himself using auto generated review. It is done by developer by purchasing the game himself through hundreds, if not thousands iTunes account, then give good rating over a period of time.
Here is a review that probably won't be taken down if you report it:
Not That Brilliant… (1 star): The novelty of this game wears down almost immediately after the first time around. The whole point of this I suppose is to make us introspective and question particular things in the universe. But as much as this game would like you to think, you’re not really in control. The fate of the game has pretty much been decided and no matter what you do there are pre ordained responses that characters like ‘the builder’ will have no matter what. I found that incredibly annoying. I guess it got the message through to me, but I don’t think of this game as very deep or thought-provoking. Give me Angry Birds any day and I’ll ponder the higher meaning of destroying smiling green pigs >while actually believing that my 1 dollar wasn’t for naught.
Nor this one:
Not worth the .99 (1 star): I beat the game in 2 hours, and the game doesn’t do anything to reward you for winning. I like the game but it’s missing depth and replay value.
Goes without saying that the take down process is subjective.
If You Must Do Ads, Do Them Well
There are good ways to do ads, and then there are stupid ways. Take a look at how Geometry Dash, Crossy Road, and Threes Free do ads. Each one takes a tasteful approach to.
With regards to an IAPs that remove ads, give the player something additional. There is novel a tower defense game called Bardbarin. It has an IAP that removes ads, but also gives you a special item that buffs gold generation.
IAP's
I'm not a big fan of IAP's (or ads). So really the only thing I can say with regards to them is play League of Legends and see how they monetize. I've spent $100+ dollars on LoL and never have they presented a pop up to get me to buy something. I had a brief moment of weakness when Trials Frontier presented a pop up, so study how they entice you to buy IAP (they do a pretty good job).
Add a Review Button
Add a review button to your games. If you don't ask for reviews, you won't get them. You don't want to do a nag review screen. I've seen too many apps that ask for a review five minutes in... don't do this. Find the perfect time to present a review button and your conversion rate will significantly increase. Geometry Dash and Duet do a great job of this. I'd say my games A Dark Room, The Ensign, and A Noble Circle do a pretty damn good job too.
Endless Games
You don't have to make an endless game. You want to build games that people finish (as opposed to playing a little and deleting). There are games out there that do endless really well, take a look at Desert Golf, Alto's Adventure, and You Must Build a Boat. It's important to realize that length does not equal value, so keep that in mind when deciding on what type of game you build.
Regardless, you want your games to leave the player satisfied. Great examples of satisfying games (that aren't endless) are Prune, Monument Valley, Game Dev Story, and (personal plug) A Dark Room.
Screenshots
Have screenshots and if at all possible an App Preview Video. The guy that I used is pretty reasonable about pricing, you can email him at Rule2 Productions: [email protected]. He did the video for A Noble Circle and Michael's new game GridLand.
For your screenshots, pair them up with words. Few people actually read the description of your app. Having a screenshot that says "No IAP's, No Ads" will get noticed significantly more than having it in the description. Take a look at Blek's screenshots. They do a great job of pairing screenshots with words.
Promotion Codes
Give them away like candy (especially since you're releasing so often). If you reach out to editors or reviewers, just send redemption codes with the initial email you send out. The worst thing you can do is say "email me back and I'll send you codes." They won't email you back, and they won't take a look at your game.
Cloning Other Games
Create derivative works. Study games you like and recreate it with your style. Geometry Dash is a great example of a derivative work. You can tell that it's heavily inspired by Impossible Game, but simply does a better job. Another game that (imho) does a better job than the "original" game is Sword of Xolan (which "copied" Goblin Sword).
Free Versions
Geometry Dash has a free version and a paid versions. Having this kind of offering keeps cloners from trying to capitalize on your success. See what I've done with A Noble Circle - Prologue (free). If you have a complex game, it's unlikely you have to worry about creating a free version. No cloner would take the time to make Monument Valley. But Threes unfortunately got cloned pretty quickly. So be conscious of this dynamic and plan accordingly.
It's also worth noting that the App Store customer base is simply divided. There are those that buy games and those that don't. It doesn't seem like they cross over much. So it may be beneficial to provide both versions if that's something that your game can work with.
Have an Identity
You will (hopefully, eventually) find your style. I know exactly what kind of game I will get when I get a game from Bossa Studios (the guys that made Surgeon Simulator and I am Bread). I know exactly what kind of game I'll get when I get a game from Supergiant Games (the guys that made Bastion and Transistor). People who buy my games know exactly what kind of game they will get, too.
As an indie game developer, you can capitalize on "having heart" (as opposed to the souless AAA companies). Take a look at Space Team (you can "feel" the heart this game has, even though it looks unpolished).
You want to get to a point where people say "Oh, Amir built this game. I'm gonna buy it." Having this kind of identity keeps you from having to create sequels/"franchises". It gives you the freedom to be creative with other genres.
One game won't make you rich. The App Store is extremely volatile and fickle, so you'll need multiple assets to have a good, consistent income. Having an identity that is more than just a game will help with that sustainability.
Do it for Love
Guys and gals, we're lucky. We have the ability to release a game that can be something special to someone living on the other side of the world (with very little monetary investment). Before A Dark Room went viral, I found meaning and success in what I did simply because I inspired some teenagers to get into game development, and brought a great gaming experience to the blind. I find meaning posting and collaborating here. I find meaning in presenting and writing about game development (none of which really generates money).
A Noble Circle has modest downloads, but I'm so happy seeing glowing reviews and receiving a single email about how a father and son connected while playing it. So relish in those small wins, they'll make all the work you put into your games worth it (even if your game fails financially...which it probably will). I can only do game development part time (it doesn't pay all the bills), but damn do I have a great time building them.