The mobile app industry is booming more than ever before with users enjoying a multitude of apps on their smart­phones and tablets. This con­tin­u­ing trend means that it can make sense for even small to mid-sized companies and freelance in­di­vid­u­als to develop their own mobile app: par­tic­u­lar­ly when you take into account that the cost, effort, and expertise required for app de­vel­op­ment are dropping all the time. As long as you have a good idea for an ap­pli­ca­tion and someone in your team with a decent technical un­der­stand­ing, then you have many options for de­vel­op­ing iOS or Android apps. Beginners can make use of ready-made app starter kits, while more ex­pe­ri­enced de­vel­op­ers can proceed without as­sis­tance and have a go at coding their own apps from scratch.

In this latest series of articles, we’ll take you through all the things you need to know when de­vel­op­ing your own native mobile app. By native mobile app, we’re referring to an ap­pli­ca­tion that is created for use on one par­tic­u­lar operating system (like Android or iOS mobile devices). First, we’ll focus on the primary step you need to complete when de­vel­op­ing an ap­pli­ca­tion: proper planning.

Why develop a mobile app?

If you want to create your own app, the first thing to do is to consider the different formats that would be suitable for your ap­pli­ca­tion: there are many different app formats, so you should make sure you know which one is best for your ap­pli­ca­tion. Alongside classic native apps, there’s also the option of creating a web app or a hybrid app. Choosing the right app format is the first important decision to make with regards to the technical char­ac­ter­is­tics of your app and will set the tone for the remaining stages of the de­vel­op­ment process. This series on app de­vel­op­ment will focus on the pro­duc­tion of a native app for mobile devices. There are several reasons why: the biggest advantage of native mobile apps is that they can be optimized for that par­tic­u­lar operating system, and compared to web and hybrid apps, native ap­pli­ca­tions offer higher per­for­mance levels as well as quicker reaction times. They’re also less limiting than other app formats in the way that they can interact with existing files on the device, access the complete available memory space of a mobile device, and make use of other native functions on the device (like camera, GPS, push no­ti­fi­ca­tions, etc.). To put it simply, a native mobile app gives you the most flex­i­bil­i­ty for cus­tomiza­tion and features. Sales and marketing are also much easier with a native app: if you program your app for one of the mobile operating systems by Google (Android) or Apple (iOS), you can sell it on either the Google Play Store or Apple’s App Store. If you use one of these app stores then you have the option if you want to offer your app free of charge or at a price. These online stores are the main port of call for most users, as they offer a built-in, practical way to download apps. Another reason for creating an app is the potential revenue it can generate. After all, consumer spending on smart­phone apps has been growing steadily for years. By the year 2021, a worldwide turnover of 78 billion dollars is expected.

Which ap­pli­ca­tions are suitable for native apps?

Thanks to their high per­for­mance, native apps are usually used for the more computer-intensive, complex, and graph­i­cal­ly chal­leng­ing ap­pli­ca­tions. But even simple apps can be made as native apps and profit from the high per­for­mance of this app format. If an app needs to use par­tic­u­lar native functions of a smart­phone or tablet, then the native app format offers the best variety. Com­po­nents like the camera, mi­cro­phone, address book, calendar, push no­ti­fi­ca­tions, GPS lo­cal­iza­tion, Bluetooth, sensors for position and movement of the device, and many more can be easily in­te­grat­ed into the app. Another great advantage of native apps compared to most web apps and many hybrid apps is that they have the option to function without access to the internet. As a result, any ap­pli­ca­tions that are still useful in offline mode are usually created in this format. Native apps also offer the shortest loading time – this is par­tic­u­lar­ly handy for games and other ap­pli­ca­tions that require a high degree of re­spon­sive­ness and where there is a lot of activity within a short space of time. 

If your primary focus is on per­fect­ing usability and making sure that the operating system offers the user an optimal ex­pe­ri­ence, then it also makes sense to go for a native app format. Since they make use of the platform’s standard frame­works, it’s easy to optimize a native app for the platform-specific user interface, like the smart­phone display screen. This means that they usually offer a better ‘look and feel’ than hybrid apps or web apps, simply because they fit correctly and perform the way that users expect. The uniform design and behavior of menus and buttons within different native apps also plays a role here. Users are familiar with the look and feel of their mobile operating systems and so view apps that fit their system properly as a mark of quality – something that you can really profit from as a native app developer.

What added value does my app have?

Before you can create an app, it goes without saying that you have to have a good idea of your app concept and be convinced of its potential. You should test this idea out, even before actually planning the app. A good way to do this is to have a look at the added value of the ap­pli­ca­tion – that means the benefits that it offers the user as well as your company.

  • Added value for the app user: people will only download and use your app if it offers them something useful. There’s many ways that your app could be of use though – for example by offering in­for­ma­tion, en­ter­tain­ment, support and as­sis­tance, shopping, or com­mu­ni­ca­tion to users.
  • Added value for the app creator: since an app also rep­re­sents an in­vest­ment, it has to be worth­while for you in some way, shape, or form. Once again, the pos­si­bil­i­ties are broad here – financial gain isn’t the only added value offered by native app de­vel­op­ment. Apps can help you grow your customer base, create a stronger brand identity, establish or improve your image, and much more.

The planning phase for your native mobile app can only begin when you have found sat­is­fac­to­ry benefits for both you and the user. You should remain realistic here: make sure to check that your app idea is both tech­ni­cal­ly possible to create and capable of achieving your aims. You’ll have to make estimates for the amount of time you’ll spend making the app and the financial costs you’ll incur.

Planning the app

The better you plan your app, the more realistic your chances of success will be. Make sure to conduct proper research, speaking to as many knowl­edge­able and honest people as possible about your app idea. All feedback is useful, and critical feedback from experts can be really useful in the planning and de­vel­op­ment phases of creating your app. 

The planning areas we’ll discuss below are crucial to consider. In an ideal scenario, you should keep them together in a properly doc­u­ment­ed concept. Similarly, you should create what’s known as a wireframe. This consists of an early schematic il­lus­tra­tion of your app, which should represent the user ex­pe­ri­ence on the app in a simple and com­pre­hen­si­ble way. Drafts like these aren’t just useful later on in the creation phase – they’re also essential if you decide you don’t want to program the app yourself. A written concept of the app is also a must when looking for any potential investors.

Com­peti­tors

Find out whether other companies are offering similar apps to see how your app could set itself apart. If there aren’t any com­pa­ra­ble mobile apps to yours, then this could mean that you have real potential for in­no­va­tion. But be aware that it could also mean there’s actually no demand for such an app, or that your app idea has already been done in another format (e.g. as a web app, hybrid app, or a website), or that it’s simply im­prac­ti­cal to create. It’s important to look at what other companies in your industry are doing: analyzing the behavior of your com­peti­tors and busi­ness­es with similar models to yours can give you a clear view of the current market situation and may also provide you with ideas for your own app.

If your app idea already exists in a similar form, com­pe­ti­tion analysis is essential. This will give you a valuable insight into which ap­proach­es have been suc­cess­ful and which haven’t. Download your com­peti­tors’ apps and get to grips with the way they function in order to better un­der­stand which features and functions make them popular with users, and which areas they fall short in for you to exploit. Not every app has to reinvent the wheel, but by noting what your com­peti­tors are doing and making little tweaks, im­prove­ments, and ad­di­tion­al features that offer added value to your customers and your business, you can give yourself a good chance of success.

Target group

By defining a target group for your app, you can help make certain re­quire­ments concrete (like functions, design, price, etc.). It’s best to do this with the help of sta­tis­tics, rather than relying on your gut feeling. If, for example, you already operate a website that has a lot of thematic crossover with the app your planning, then you can carry out web analytics (with tools like Google Analytics or Piwik) to learn more about the way your website is used. Analysis tools for websites can tell you how many users load your website on a mobile device, and which operating system they use. This gives you a clue as to which platforms to launch your native app on. Web analytics also offer insights into user behavior, helping you to determine which website functions are most fre­quent­ly used and so are essential for the app. Surveys and in­ter­views offer another way to discover more about your target market. Bear de­mo­graph­ics in mind too: studies have shown that young people are by far the biggest consumers when it comes to apps. An app targeted at seniors would be con­sid­ered a niche and so is less likely to be suc­cess­ful.

Platform

Which operating system do you want to offer your native mobile app on? This question can sometimes be answered by looking at your target group – for example if you only want to appeal to Android or Apple customers. It could also be the case that your app is linked to a specific software that only exists on a par­tic­u­lar platform, meaning that you don’t need to worry about any others.

If you’re not looking to target one par­tic­u­lar brand of app user, then you need to carefully consider whether you’re going to develop an iOS app, an Android app, or both. They each have their own pro­gram­ming language, meaning that if you choose to program your app for both platforms, you’ll need to develop and maintain it as if it were two separate apps, one for each operating system. This is con­sid­er­ably more work, but it can be worth­while: Android and iOS account for close to 98% of the market share for mobile operating systems worldwide, with Android leading the way ahead of Apple’s iOS.

Since the market share for smart­phones using other operating systems like Microsoft Windows Phone (Windows 10 Mobile) or Black­ber­ry 10 OS is extremely low, we’d recommend that you only develop an app for these platforms in ex­cep­tion­al cir­cum­stances. Instead, you should focus your de­vel­op­ment or planning on one or both of the big two – iOS and Android.

Features

When it comes to app pro­gram­ming, many de­vel­op­ers follow the principle of reducing the func­tion­al­i­ty of an ap­pli­ca­tion to the bare es­sen­tials. An app usually serves a specific purpose – or con­cen­trates on a central feature. You can still use the planning phase to make a com­pre­hen­sive list of all the features that you can possible think of including, but then you should separate this list into features that are ab­solute­ly in­dis­pens­able and features that would be nice but aren’t essential. It’s important to recognize that not all the features you want will fit into your app – you have to make sac­ri­fices to optimize per­for­mance.

The vast majority of users expect an ap­pli­ca­tion to be easy to un­der­stand and intuitive to use. This is why it’s crucial that you use the planning phase to make sure that your app isn’t too complex and packed full of features. It can be useful to create sketches of the in­di­vid­ual menu screens to help you to visualize your idea. This also gives you a chance to assess menu nav­i­ga­tion and the re­spec­tive display on different screen sizes (smart­phone vs. tablet). This gives employees and any external investors or de­vel­op­ers a good idea of how the final ap­pli­ca­tion should look and function.

Financing and gen­er­at­ing revenue

The success of your mobile app project will stand and fall with its financing. If you aren’t in a position to cover the de­vel­op­ment and main­te­nance costs of your app, you’ll need to seek out donations, sponsors, and other sources of income. You should make ap­pro­pri­ate and accurate cost estimates for this. But even if you can afford to develop the app yourself, you must still prepare an accurate and detailed budget plan: a clear financing model for your app is mandatory. Don’t forget that most native mobile apps have main­te­nance costs on top of their initial de­vel­op­ment expenses. In addition to the expenses model for your app, it’s a good idea to create a revenue model too. You can use this to determine how and when your app is going to generate revenue. If you’re creating a shopping app for your online shop, then your revenue model will be quite straight­for­ward. But if you’re planning an app that isn’t focused on e-commerce or self-marketing the core prin­ci­ples of a business, then there are three classic models for de­vel­op­ing revenue:

  • Fee-based app: in this model, users pay a fixed fee to download the app. This sounds like an easy and sensible solution, but be aware: not all users are prepared to pay money for apps. In fact, the vast majority of Android apps are available for download free of charge. Apple users are generally seen as the clientele most likely to pay for an app. But even if you have a target group who are probably willing to pay for your app, you should be aware that com­pe­ti­tion in the app market is fierce. If your app is going to come at a price, it’s going to have to offer excellent content, a good rep­u­ta­tion, and a high profile to achieve success. One good way to demon­strate your content to users is to offer a free trial or test version of the app. This lets your users fa­mil­iar­ize them­selves with the app before they choose whether or not to pay for the full version of it.
  • In-app pur­chas­ing: in-app purchases involve making sales within the app itself – either for the chance to use ad­di­tion­al functions or to block ads. ‘Freemium’ apps also rely on this model: ap­pli­ca­tions are offered free of charge in reduced form, with users having to pay for ex­ten­sions or the full version of the app. This model is only effective if the price structure is balanced; price rises that start too high, rise steadily, or seem dis­pro­por­tion­ate are likely to scare users off rather than tie them into the app.
  • In-app ad­ver­tis­ing: display banners and other mobile ad­ver­tis­ing formats are a good way to generate income from your app – this revenue model is the most popular on Android. The drawback here is the impact on user ex­pe­ri­ence. Whenever the ad is on display, the user will have part or all of their display screen blocked and so won’t be able to use your features. If this happens too regularly or is too much of a dis­trac­tion or annoyance to the user, it will result in negative feedback and ratings for your app. Another option for in-app ad­ver­tis­ing is to offer affiliate marketing to generate revenue. This method is a partner program and basically involves providing links to external websites in your app. If users click on the link and head to your partner’s website to buy products or use services there, you can receive a com­mis­sion as the affiliate partner.

But not all apps target mon­e­ti­za­tion directly. If the main revenue of the app creator is made elsewhere through other services, then the native mobile app can sometimes just function as a marketing tool, helping to advertise products/services and build up the company’s rep­u­ta­tion through helpful features and ad­di­tion­al in­for­ma­tion. Many companies and or­ga­ni­za­tions use apps to market their core business model: online shops offer a shopping app, while online news­pa­pers offer their articles. Companies like Google, Facebook, Dropbox, or Spotify all offer services on their apps that are similar to what they offer on their main sites and so tie into their overall revenue models.

Legal framework

Remember to pay attention to certain legal aspects of your app as well. The same rules apply to apps as do to your website: if you collect, process, or save personal data of users, you have a duty to inform them in an ap­pro­pri­ate manner. Your app also has to request per­mis­sion to send push no­ti­fi­ca­tions or access any native features of your chosen operating system like the camera, mi­cro­phone, or camera roll. Before you start col­lect­ing data or accessing native features, you’ll also need to prepare a com­pre­hen­sive, clearly worded de­c­la­ra­tion of the in­for­ma­tion you’re col­lect­ing, where you’re storing it, and how users can access it. 

Remember that trademark and patent laws apply in apps too. To find out more about the im­por­tance of branding and how trademark and patent pro­tec­tion works, you can refer to our guide to US patent law.

Detailed app planning pays dividends

It may seem like a time-intensive process, but accurate planning and sketching of an app can really pay off. This isn’t just for content op­ti­miza­tion either: legal aspects and financing need to be discussed carefully and metic­u­lous­ly as well. This com­pre­hen­sive planning will be useful further down the line, as you can refer to it to make sure you’re on track and that you haven’t over­looked anything important about your concept or im­ple­men­ta­tion. After the planning phase is over and you’ve secured the financial backing to create your native mobile app, it’s time to move onto the basic technical im­ple­men­ta­tion of your design. Even if you’re a newcomer to app de­vel­op­ment, you shouldn’t be fearful of this step: a promising app idea that’s been properly planned out is more important than the pro­gram­ming know-how required to develop the app, which you can bring into the project in the form of free­lancers or an agency. In part two of our series on creating your own app, we’ll look at the different options you have for pro­gram­ming your app. We’ll also discuss the pros and cons of using an app-building kit and in which sit­u­a­tions it’s best to leave the app pro­gram­ming to external experts.

Go to Main Menu