Blog by Todd Wyder
In my work helping companies practice lean innovation, I talk to a lot of folks who are launching mobile products and they chose to build a native app instead of a mobile web app. For those readers who aren’t sure what that means, a native app is one that you
download from an app store, whereas a mobile web app is a web application built using responsive design that you pin to your homescreen. For those of you who have iOS 6 on your phone and use Google Maps, that’s a mobile web app.
When I think about all of the things that one does when they launch a product, I start thinking that a native app may not the best choice. I ask two questions:
- Does the user have to use the app offline?
- Do you need to use specific phone features that you cannot tap into from a web app, such as the accelerometer or the camera flash?
If the answer to either of those questions is yes, then you need to do a native app, but if both are no, I would recommend thinking about launching a mobile web app first. Here is why:
Native apps are not optimal for fast learning
I have helped launch many, many products in my career and I have never launched the right product on day 1. When it gets into the customer’s hand, there are a lot of things that we learn are needed and have to change. Sometimes there are heinous defects that wedon’t find until there are a lot more folks beating on it. Having to go through the app store slows down that learning because it takes a while to get every change through. Murphy’s Law always plays out – when you have a really bad defect, it takes forever to get through the app store, the bad reviews keep coming in and those reviews stay around a long time. And there are folks who won’t update the app. Development for native apps takes longer than web apps, so that hinders learning as well. A/B testing is really painful on native apps, but it can be accomplished easily by a non-technical person in a web app.
Native apps have more onboarding friction
I can send someone an email to a web app and after 1 click they can be using my app. For a native app, I have to send them to the app store, then one has to download it, and then they have to open it. Each one of those extra steps has a half-life, where a prospective customer can fall out of the onboarding funnel. Because it happens in the app store and on your device, you have no idea which step is causing them to abandon. Also, you cannot put a parameter on the link, so from an analytics standpoint, you have no idea what marketing channel caused a download.
I am not saying that native apps are not a good idea. However, I think when a product launches, you need to focus on getting engaged users; so suboptimal platforms for learning and onboarding friction are things you might want to eliminate from your launch. You can always build a native app later.