Do you dream of creating the Next Great App?

Maybe you’ve already done it. If so, you’re familiar with the grueling journey to launch day. You worked around the clock to make sure your plan was perfect, spending countless nights researching markets, analyzing data, and communicating with team members in distant time zones.

It was one crazy ride, but it was worth it to see your vision come to life on launch day.

Fast-forward several weeks: your dream app crashes and you have absolutely no idea why. Your developer has gone AWOL, and your basic coding knowledge can’t help you make heads or tails of the situation. Every second you spend putting out fires is time wasted disappointing users and losing money.

app-health

Sound familiar? Or maybe this nightmare scenario is keeping you from taking the plunge.

The reality is, even if you frontload all your effort and resources into developing your app, things will go wrong. It’s not your fault either: the mobile ecosystem is constantly in flux, and apps are becoming increasingly complex: 43% of apps depend on over 5 cloud services.

There’s simply no way to anticipate every issue that could crop up ahead of time, no matter how hard you try.

Luckily there is an antidote to all of this, and it’s called app maintenance. App maintenance is the process of modifying your mobile app to fix bugs, improve performance, and keep up with changes in a rapidly changing mobile landscape.

So whether you’re a micropreneur trying to tap into the mobile market or an established company looking to grow your mobile presence, you need to know the basics about app maintenance to stay afloat. If you’re unsure of where to begin, never fear: we’ve got you covered with our App Maintenance Quickstart.

1. Take ownership of your source code

Every effective app maintenance plan begins with one crucial step: taking possession of your app source code. It’s an easy thing to forget when you’re swept up in the rush before launch day, but without it app maintenance isn’t even possible.

This is because all app maintenance, even the smallest tweak, involves making modifications to the source code. If your app crashes or a bug needs to be fixed, no one will be able to administer the changes needed to get your app up and running again.

You might not be too worried about it. After all, your developer will be able to produce your source code when you need it, right? But even if you’re working with the world’s greatest developers, things happen: computers crash, folders are lost, and people lose touch.

No matter what your relationship with your developer is like, it isn’t good to be careless: if your source code is lost, it’s gone for good—it simply can’t be recreated.

Don’t be the organization that finds out their source code has vanished when it’s needed most. It’s a terrible position to be in, but believe us—it happens. If you haven’t already, make sure you request your source code today.

Take Action

Once you have possession of your source code, don’t just leave it on your machine, create off-site backups! Using some USB thumb drives, you can easily create several layers of redundancies. Just remember to get in the habit of updating these backups at least once a month to keep up with updates and changes.

2. Track changes with Git

You’ve got a hold of your source code—great. Now you or your developer can make fixes and carry out general maintenance as needed. But as you ship bug fixes and updates, you’re going to want to track these changes. Why? Because keeping track of changes is a vital app maintenance tool. Studying what changes have been made can help you:

  • Verify if bugs have been fixed
  • Verify which features have been shipped
  • Investigate how new issues were introduced
  • Collaborate with you developer (without the headache of emailing code back and forth)

So how do you track all of these changes? The best way to track changes to your app is with a version control system (VCS). Git is free VCS software that keeps track of all changes made to your project, and provides a history of what all those changes were.

If you’re having trouble understanding how Git works, think of the “Undo” feature in a document editor. You know it’s useful to be able and trace your steps. Tracking changes with Git is similar, except you have an ability to “go back in time” and view the project as it existed at any point in its history, even if files were deleted from the project. This enables the person conducting maintenance to review and compare different versions of the app with ease.

app-health

Take Action

Download Git and review their comprehensive reference material to help you get started. You can use this Git Code School interactive tutorial to help you learn the ropes.

After you learn your way around Git, your next step is to choose a hosted Git service to store your app source code. We recommend services like GitHub or Beanstalk. And if you need another incentive to go through all of this trouble, know that this creates an additional backup location for your source code, adding another layer of redundancy.

3. Capture app crashes

Crashes are the number one problem that every app faces. But how quickly you resolve the resulting downtime can make a huge difference in your app’s success: according to Crittercism, 47% of apps crash over 1% of the time. If your app is part of this 47%, then you have an uncompetitive uptime that’s costing you a lot of revenue.

All apps crash and so will yours, but only a small percentage of your customers will bother to tell you about it. The App Store and Google Play provide basic access to crash data, but this crucial information can be delayed for weeks. By the time you’re even aware of the issue, you’ve lost both customers and money.

So how can you stay up-to-date on your app crashes and work to resolve them quickly?

The best way to get a real-time look into your app’s performance is to use a crash tracking service like Crashlytics or HockeyApp. These services report crashes as they occur instead of weeks later. These services also provide detailed crash analysis, so you or your developer can easily find the root cause of the crash and fix it. If these tools are used effectively, you can spot trends and nip potential problems in the bud, keeping your uptime high and your users happy.

You can use these advanced services to track specific crash data like:

  • Real-time updates on crashes
  • Device or model-specific crashes
  • OS-related issues
  • Meaningful stack traces

Take Action

Review Crashlytics and HockeyApp features to see which is right for you. After you’ve made your choice, add the Crashlytics SDK or HockeyApp SDK to your app and release an update to begin tracking crashes.

4. Measure analytics

App Maintenance shouldn’t just be about putting out fires; it can also be a way to develop long-term strategies for the success of your app, and even your business. By accessing detailed app analytics, you can gain valuable insight into who is using your app and how they’re using it. This prevents you from wasting resources on unpopular features, as well as helps you determine the severity of crashes and bugs.

So how can you make sure you’re getting the most useful analytics possible? Like crash data, the App Store and Google Play marketplaces provide basic app analytics, but we recommend a more detailed service like Google Analytics. Even with just a basic integration, Google Analytics can provide answers for many useful app maintenance questions like:

How long do users use our app?
What screens are users using?
Which version of our app are users using most?
How are users navigating the app and using features?

A robust app maintenance plan relies on detailed data. Without a service like Google Analytics, you’re roaming around in the dark, making decisions based off of assumptions that can drive your business into the ground.

Take Action

Download Google Analytics, and watch this helpful video by Google to learn how you can analyze user engagement.


App maintenance is essential to protecting and developing your app assets. It can seem overwhelming at the beginning, but we strongly believe that the steps above will take you down the road of healthy, functioning apps that deliver consistent value to your customers.