How to make an app in 2021
Written by Marie Pireddu on
7-step guide to create your own mobile app without programming skills. Find how to make an app for iOS (iPhone), Android and PWAs.
Mobile app development takes time, expertise, and is usually expensive : GoodBarber provides a cost-effective option to create an app without coding.
Whether you want to make an app to complement your website, to reach a new audience for your business or simply have a great idea for a new app, in this article we will explore each step starting from your app ideas to the publication and upkeep of your app.
How to create an app in 7 easy steps:
1. Get your idea on paper
- Set your goals, research the market and define your concept. Here are some of the main questions you should be asking yourself.
- Which features are most desirable and will help you keep your users engaged.
- Find out whether there are other apps doing the same thing
- Check out the competition, their review, get inspiration for your design
- Will you monetize your app?
- Design your app: create a mockup
- User Experience (UX): this is the point of view of your users. It will impact how they see your brand. It must be seamless. Also remember your users are browsing your app on a small screen (According to Apple’s recommendation , about 44 pixels square is an appropriate size for a touch.)
- For your app to be successful, you should design it in such a way that your user requires fewer efforts to understand and use the app. It increases their interest in your app. An application that is difficult for users to understand reduces their interest. Be guided by the 3-click rule (suggests that users should be able to find any information on a website using no more than three mouse clicks). Don't strictly follow that rule, just keep the idea of how to design app's navigation.
2. Choose the right technology for your business
- Native apps:
- From the 500 apps available in the App Store when it launched 10 years ago to the almost 2 million available today and a further 2.4 million offered by the Play Store, apps are now part of our everyday lives.
- Native apps account for over 80% of all mobile traffic
- Native technologies for iOS and Android have always been at the forefront of mobile development. This is due to the fact that this method offers reliable and high-performance products that can access a wide variety of native APIs and features available on smartphones or tablets. Besides, to make an app with native coding means that you will be creating independent outputs for each specific operating system, which will help deliver a refined interface for different devices.
- Progressive Web Apps:
- PWA doesn’t require download and adapt to mobile, tablets, and desktop.
- Benefit from SEO and are indexed on search engines
- Thanks to Service Workers PWAs also works offline
- 67% of web traffic comes from mobile, PWA ensures a mobile presence adapted to all devices.
Here are some examples of the types of things to consider when choosing your technology:
PWA’s boast 3 times more visitors than native apps do, but the availability of features depends on the browser they’re being used in .
Native apps give full access to geolocation features (such as geofence and beacon technology) but publishing them implies significant extra costs and third party compliance
3. Choose best option to build your app
Now that you have chosen your technology, it is time to choose how to create your own app. 3 options exist:
Develop your own app yourself
This first option requires significant time and skills. Natives apps are platform specific and knowledge of multiple programming languages is necessary. Objective-C and Swift for Apple development , Java or Kotlin for Android development. However, if you have the required expertise, this option will let you create the app you want without any limits.
Hire an Agency or freelance developer
Development agencies and freelance developers are not lacking on the web and it should be easy to find one. The determining factor here will be the cost of such a service.
Indeed, hiring someone to create your app is by far the most expensive option. However, if you have the resources, it is a good way to get the app you have in mind without having to compromise.
- Use an app builder.
Similar in concept to builders such as WordPress (a Content Management System allowing you to edit and alter the appearance of your website without any coding), an app builder is a tool that allows users without coding skills to easily create an app and distribute it to the different Stores. This is the ideal option to save time and money while achieving a quality app.
However, keep in mind that not all projects are suitable for an app builder and that if you have specific and complex needs, you will have to go through a customized solution.
4. Create an app with an app builder (no-code option)
Now all of the tough decisions are made, and it’s time to go for it.
Obviously the process will vary based on the method you’ve chosen for developing your app, but for our purposes we’ll assume that you’ve chosen to go the app builder and specifically GoodBarber route.
With more than 10 years experience in building apps with the latest technologies, GoodBarber offers you the possibility to create native apps and Progressive web apps from one single interface.
To create your app you will go through the following steps:
Design: There’s a lot to decide on this step, the app’s global color theme , the style of the header, its navigation mode, the icon that will represent it in the stores and/or on your users’ home screens, its splash screen, etc.
When selecting your design templates and designing these elements, it’s always a good idea to keep the look somewhat aligned with any existing design your brand already has that identifies it, such as logos, colors, fonts, etc.
Your Home page will be the most visited page and the first impression your users will have of your app. Spend time designing it. It should showcase your most important features, provide a fluid navigation towards the different sections of our app thanks to the widgets offered by GoodBarber. Our Preview feature allows you to see immediately the look and feel of your app.
Content: Time to add everything and anything you want to convey about your business/project. In some cases, you’ll just enter this content directly into your app’s backend manually, in other cases you may already have your content available somewhere and you’ll just need to integrate that external source to pull it in (such as an RSS feed, a live stream, or a social media account).
The structure of a GoodBarber app is quite easy to understand. It consists of sections, each of them having a dedicated purpose: articles, videos, photos, events, podcasts, maps, forms etc.
Our developers recommend to keep a very simple structure allowing an easy navigation and optimization of the user experience.
Add-ons: in addition to the classic sections, GoodBarber offers a catalog of Add-ons to add value to your app according to your needs.
If for example you’re creating an app for your business, the Loyalty Card and Couponing Add-ons will let you to keep your clients engaged and rewards them for their loyalty. With push notifications, you can communicate regarding new products, upcoming events etc..
If your app is to support a local association or even for the internal communication amongst your company’s employees, then the Chat and Community Add-on will help you create a sense of belonging and allow for an easy communication between your users.
Custom plugins: If necessary explore the customization options our platform offers and add any needed features or design options that weren’t available by default. Customizing is the most effective way to make your app stand out from the others of its kind.
5. Test your app
After assembling all the pieces of the app creation process (concept, design, and technology), you’ll reach a version that is nearly ready to be released. But before sharing your new application with the world, carry out a series of tests to check if everything is running as you've planned. You’ll need to test on all versions of the app that you’re planning to publish (native iOS, native Android, PWA, etc.), and in different OS as well (different browsers, iOS 12, etc.). Be sure to recruit a couple of beta-testers as well—a fresh perspective will bring elements or points to your attention you may have overlooked or may have a biased view on.
- Overall app speed
- No crashes when performing any action
- Performance in poor connectivity
- All functionality/interaction responds to the task it’s supposed to accomplish
- Design is visually pleasing and correctly adapted to all screens
- Navigation is intuitive and efficient
- No aspects of the app are “hidden”
- App name/store description is self explanatory
Often times app builders such as GoodBarber provide a test app you can use to run preliminary checks on your app. The most optimal way to test your app, however, is through its AdHoc version, which is the actual file of the app that will be submitted to the stores that you can download onto and run on your device—it’s the exact replica of what your users will see and every aspect of the app can be tested using this method
For native iOS apps, there is a specific tool provided by Apple: TestFlight. It allows testing an iOS app before it goes online on the App Store. This alternative is particularly interesting if My GoodBarber solutions or the Ad Hoc version do not meet your needs for previews.
6. Publish your app on the stores
Once your app is ready, it is time to think about publishing it. It’s a good idea to publish your app on as many platforms as possible as it will allow you to reach as many users as possible.
Publishing an app can be a complex and slightly overwhelming process, starting with registering as a developer
Developers' accounts (mandatory step from both platforms). For Apple devices you will be subscribing to the Developer Program for the App Store , costing $99 per membership year. Keep in mind that Apple requires the owner of the content in the app to match the owner of the developer account, so if you publish multiple iOS apps for different projects, each will need to have its own individual developer account. Becoming a Google Play Publisher costs $25 (one-time fee), and you must also own a Gmail account.
App Store: The process of submitting an app to the App Store is slightly complex and requires throughout preparation. Apple has set high standards and strict guidelines in order to maintain the App Store a safe ecosystem offering its users only high-quality apps.
- App Store Review: Apple reviews each app before approving them for release. Before you submit your app for review, you will need to provide a collection of information (Icon, app preview/ screenshots) and metadata (the name of your app, its category, a detailed description, and additional keywords for ASO). Don’t underestimate the importance of the metadata, especially the app description.
- App Store publication: the review process can take a few days, Apple will notify you by email when your app is public. In case of rejection, you will be able to contact the Resolution Center for more info and try to fix the issues.
- GoodBarber has put in place a review to guide you through the submission process. Our team will carry out a detailed examination of your app to ensure that it is compliant with the App Store Guideline. If your app doesn’t meet those requirements, we will provide you with advice to help you improve your app and publish it successfully.
- Google Play: Android offers different choices to distribute apps, however with over 1 billion active users, Google remains the premier platform for Android apps.
- APK file and releasing app: once the Store listing completed, it’s time to upload your apk.file. The Android Package Kit contains all the elements of your application. Then follow the guide on the Google Console to deploy and publish your application. If your app is approved it will be released within a few hours, even though Google announced recently that they will be taking more time to review apps by developers who haven’t published in Google previously. Remember to follow the established rules because Google may withdraw your application at any time thereafter if this is not the case.
Progressive Web App:
- Luckily, publishing a Progressive Web App is a lot simpler. All you need to do is take care of the hosting of the app on a web server and link a web domain to it. With this process being so quick and easy, you have more time to spend on optimizing your SEO to ensure your product is easily discovered by the public.
- Hosting is included with your GB subscription, and we highly recommend to purchase your own domain name and install it instead of the GoodBarber generated URL as it will allow you to build a stronger image without the presence of another brand.
Don’t launch all features at once, it’s good to hold back. It gives you room to further develop your application and launch an updated version later on.
With the GoodBarber Takes Care service, you let our experts do all the work for you. They will take care of the publication process of your app on Google Play and the App Store, so you can focus your Marketing Strategy.
7. Keep improving continuously and update your app
Keep an eye on feedbacks and your app KPIs using the analytics tools provided by Google Play and the App Store. Analytics are also available in your GoodBarber back office.
Another must every app owner should do regularly is to always be publishing new content and features. Whether by releasing new material or upgrading existing functionalities, it’s the most effective way to keep users engaged and avoid the dreaded low-utility realization/app deletion. Make sure your users are well aware when there are new releases by including them in your marketing strategy: you can alert them via push notifications or feature these new elements on the most visible part of your app, the home screen.
You can update your app in the stores as many times as you want, although in some cases you’ll be required to submit a new version of the app if larger modifications have been made.
On the other hand, your PWA can be updated infinitely without any resubmission constraints. Either way, don't hesitate to bring something new to the table when you have the opportunity!
GoodBarber developers recommend to update your app 3 to 4 times a year ( new features, bugs fixes, OS updates). GoodBarber will also guide you through the update process and keep you informed if and when updates are necessary through different tools provided in your app back office.
Create an app by yourself: programming languages for app development
Programming languages and frameworks vary depending on the type of app you are working on: native, hybrid or web.
1. Build a Native appiOS (for Apple iPhone) and Android apps are distributed exclusively on App Store (Apple) and the Google Play Store (Android).
Create an iOS app for iPhoneThe most common programming language used to create apps for the iOS operating system is Objective-C, created as a subset of C with added objects. While functional and very popular, Objetive-C is a fairly old and complicated programming language for those who have never programmed before. For this reason, Apple has developed another universal programming language for all of its systems and devices: Swift.
Swift is a programming language as complete as Objective-C, but easier to learn. More and more applications rely on this programming language because, among other things, you can easily create all kinds of applications (whatever their purpose) and it offers much higher performance than apps created with Objetive-C.
Development environment for iOSAs for Android, there are many environments that we can use to program and design iOS applications. Most of them, however, have to go through XCode, Apple's compiler for iOS apps, only available for macOS. Therefore, programming for iOS has two major drawbacks. The first is that we must have a Mac to be able to compile applications; the second, to be published on the App Store, you pay 99 euros per year. If you stop paying, your iOS developer account will be blocked.
Create an Android appThere is currently a wide range of programming languages intended for building Android apps and supported by manufacturer Google.
Java, the most popularThe best known and most used language is undoubtedly Java. Full integration into Google's development environment and the ability to use the popular Eclipse IDE, along with the simple syntax and comprehensive framework, make Java very popular. In addition to a lower workload for the mobile processor, the other advantages of Java are faster application launches, since the binary code is generated only once and not every time it is invoked.
Kotlin is integrated with Android StudioAt its latest I / O Developer Conference, Google unveiled Kotlin's full integration into Android Studio and its framework. Kotlin is compatible with Java, which means that Java code can be easily integrated and used in Kotlin projects. Kotlin enjoys growing popularity. However, code examples and references are much rarer than with Java.
C and C ++ are possible with some patchesC ++ is suitable for those who want to be much closer to the hardware and who want to do without Google's out-of-the-box features wherever possible. This language is also supported by Android Studio, but requires the integration of external components.
C # in XamarinThe Xamarin framework creates prerequisites for using C # with Visual Studio for application development. Due to the necessary integration of various Xamarin libraries, the programming is very similar to Java in that they simulate the interfaces of the Android infrastructure. The aforementioned high-level languages Java, Kotlin and C # are suitable for efficient Android development.
C ++ is primarily used only for application-specific functionality, for which you need the greatest possible control. Doing all the development in C ++ would take too long and provide little or no benefit.
2. Create a PWA (Progressive Web Application)A Progressive Web App is made with a specific framework that adapts to both Android and iOS operating systems: web applications run on all operating systems.
PWA is run by browsers, using so-called "Service Workers" for smartphones.
The Web App is available via a URL, without going through the Stores.
Furthermore, progressive web apps are characterized by being very easy to develop (they are coded like a website); furthermore, they are very light and can always be updated. However, these apps have relatively limited access to smartphone devices. Also, they need an internet connection to work, otherwise they won't open.
Using a native programming language such as Java, you can take full advantage of the device hardware and create applications that are independent of the Internet connection.
- Time. Depending on the timeframe, the costs may or may not increase. If you need the app by a certain date and the developer has to work overtime, the price will go up a bit. On the other hand, if you are a little more flexible and not in a hurry, the price will be more contained.
- Quality. The more details your application requires, the more work it takes to develop. All the details are made the way you want, but the price goes up.
- Functionalities. For example, logging in with an email and password is not the same as logging in through a social network like Facebook, Twitter, LinkedIn ... A messaging function: the price depends on whether you want to chat in real time, send simple messages or send multimedia content and so on.
- Deployment costs. If your app is for the B2C market, you need to make sure your users are aware of your app and can find the app in the stores. This usually requires an initial investment in marketing campaigns to gain the attention of users. You can also use ASO techniques to position your application well in the App Stores. Although this point is not directly related to the development of your application, it does affect the final price.
- Additional costs. Did you know that there is a cost to submit and publish an app on the App Stores? In the case of the Play Store, this is a one-time payment, while in the iOS App Store, it is an annual payment.
- Maintenance. Today's mobile technologies are constantly evolving. New devices are coming onto the market, with new screen sizes, new peripherals and features etc. You need to make sure that your app is always up to date and that any issue can be fixed as quickly as possible.
Use this free month to create your app and just pay when you're ready to share it for the world to see.
How long does it take to build an app?
That's for the short answer. However, the time required strongly depends on the respective application project. The more complex the application, the more elaborate the design and the more extensive the desired functions, the longer it will take to complete the application.
Always keep in mind that an app development agency usually doesn't work on a single project, but develops multiple apps at the same time. However, it is possible to estimate the duration of application development at the start of application programming.
The infographic below gives an overview of the procedure and times associated with the development of a mobile application. According to Progress Kinvey, mobile app takes an average of 18 weeks to develop.
If you use an app builder like GoodBarber, you can build an app in minutes, and it can be available on Google Play within the next hour. Feel free to test, it's free for 30 days.
Use this free month to create your app and just pay when you're ready to share it for the world to see.
Can I create an app by myself?
They are also a significantly cheaper solution.
Is it easy to make an app?
However, app building process would be highly facilitate using an App Builder .
How much does it cost to publish an app on the app stores?
You are required to register as an Apple Developer: this account cost $99 and must be renewed yearly.
How do you make money from an app?
- Free app with in-app purchases
- Free app with in-app advertising
The problem here is that the mobile app provider often shows advertisements at the expense of the user experience.
- Freemium app
There are two versions of the same app. The free one provides the basic version: advertisements are displayed, the speed is slower, some features are not available, one language version, etc. The second version fix the "issues" of the first one: it is advertising free, better performances, all the functions are enabled, the language can be customized; items can be bought in the app.
Additional accounts when downloading the premium version:
There are also some apps where you can create an account for free. However, if the user wants to create additional accounts, he has to download a paid version.
- Free trials