Here’s What the Most Successful Software Apps Have in Common
For every excellent application that exists, there is another not-so-excellent one.
But what makes an application objectively great?
Once we remove an application’s “showy” features–namely bright branding and playful interactions–we can start to see what features the most successful applications have in common.
And of course, “successful” means different things to everyone. However, for the sake of this post, we’re going to say that “success” is happy users, growth, and profitability. Here are the things we see and strive for in successful software apps.
They Don’t Make Their Users Read Tutorials
When users sign in for the first time, it should be instantly clear what actions they can take. If you have a simple and clear product, you might be able to get away with no initial user onboarding. This is an ideal situation because your user understands how to use the product and the value it provides to them.
Your booking engine should not require a tutorial to use it.
If you have a product that is complex and needs explanation (beyond what an intuitive design can provide), you may need to utilize an onboarding process.
A clean, integrated onboarding process. Image via Dropbox.
The decision of whether to onboard your users or not is up to you, but we strongly advise against forcing your user to read extensive text or click through a long tutorial. Instead, do it in a contextual manner. If done well, the onboarding should be brief, dismissible, and exist in direct correlation with the product. If you can shape the onboarding process in an engaging way, you will have a better shot at keeping your users interested in the long haul.
They Are Built in Popular Languages & Frameworks
Sometimes developers learn a new, trendy language and want to use it for their team’s latest app. On the other side of the spectrum, some of your developers may want to use an old language. Both are problematic.
The most successful and usable applications are built with popular, stable languages because they are known and supported.
If you do build your application with alternative technology, a few things can happen:
- There may not be community support for it which can affect your application’s longevity. This can happen in new or dated languages/frameworks.
- What you chose isn’t as versatile as your team thought. Some of the newer languages, frameworks, and tools have stellar marketing campaigns that showcase them as The Ultimate Solution. Once your team realizes this, it’s too late or too expensive to start over.
- When a developer leaves, you will need to replace them with someone who knows this language. Depending on the language and your other business requirements, this could be difficult.
To counteract this, make sure you have senior engineering leaders on your team so they can help strategize your app’s languages and frameworks. Senior technical leaders will have more experience across old and new languages and be able to squash the trendy language before junior developers get hasty.
They Know Their Audience
While you might expect responsiveness and speed to make this list, I’m bucking against the trend. What’s more important than both responsiveness and speed is knowing your audience’s habits.
Is your application built for admins that work exclusively on large monitors? Then, in all honesty, you probably don’t need to spend much time on a mobile version.
Now, if there is any chance that someone visits you on a mobile device, then yes, you need to be mobile-friendly. But your strategy around responsiveness starts with knowing your audience.
The same applies to speed.
Do your users access your application in places with superb wifi or are they in low bandwidth areas? Does your app require a lot of imported data?
Depending on your answers to these questions, you might need to consider performance, you might not.
It’s also interesting to note that speed does play an essential role in a marketing or eCommerce website. However, once a user has converted (or signed up), speed doesn’t affect their satisfaction nearly as much. Something to think about.
Disclaimer: Generally speaking, of course, both mobile responsiveness and speed are important, but there are monetary tradeoffs you might need to think about.
They Get Plenty of Feedback
The easier you are to contact, the more feedback you will get. Feedback gives you insight into what your users do and do not want.
While I can empathize with not wanting to receive aggressive feedback, random spam, and head-spinning typos, the best applications enable in-app feedback.
Collecting feedback lets you monitor in-app performance, connect with your users, and plan for your app’s future. It can help you save money and expand product offerings down the road.
The best apps have used feedback to their advantage and iterated based on that feedback. They are in tune with what their users want.
While emails and surveys can be a great tool, the best feedback comes from users who are actively using your application.
Don’t Forget About Analytics
In addition to feedback forms and surveys, make sure you consistently review user analytics. This data will tell you what your users won’t. Analyzing your app’s data gives you insight into which features should be expanded and which ones can be retired.
Have a Good Development Path for Longevity
Successful software apps also have a strategized path for longevity.
Their product teams consider things like security and end of life technologies.
Windows 7 is a good example. Recently retired, this old technology now poses security risks for its users. Having a plan for these kinds of patches and security will help keep your application safe and reliable, even if your users are using Windows 7.
All in all, the most successful apps don’t have latency issues. They don’t crash. And that is because the development path has been laid out to address future features, bugs, and a solid UX experience.
While there are other practices that can make or break your application, locking down these five things will help make your users happy, increase engagement, and improve retention.