It can be a long way from the first idea to your final app. But the path does not necessarily have to be difficult. A well thought-out technical and economic concept is essential here to define a clear success. Here we would like to answer some of the recurring questions that always come up when dealing with the development of an app.
Frequently asked questions about app development
The cost of developing an app depends roughly on the range of functions, the number of views, the connection to external services, and the amount of data stored in the app or on a server. In our experience, it is not relevant in the long term whether apps are implemented natively for multiple platforms or with a cross-platform approach (React Native, Cordova, Xamarin). For us, the quality of the apps matters the most, which is why we generally recommend native development.
Very simple apps can be implemented for iOS and Android together, including publishing, for €10,000.
- To access the App Store, you must first create an Apple ID or select an existing one as the base Apple ID. The Apple ID can be requested here: https://appleid.apple.com/account and may need to be unlocked by an iOS or Mac device using 2-factor authentication.
- Afterwards, this Apple ID can be enrolled in an Apple Developer Program ("Enrollment"). This can be done here: https://developer.apple.com/programs/enroll/. Important: As a rule, you should not create an "Individual Developer" account, but a company account. A D-U-N-S number is required for this. This can be requested here: https://www.upik.de/dunsanfordern.html
- Enrollment takes a few days. After that, the Apple ID is unlocked for use in the Apple Developer Platform and App Store Connect. In the Apple Developer Platform and App Store Connect, an invitation can then be sent to us as a developer account (speak directly to your contact person about this), so that we can make the necessary certificates, profiles and other settings.
- This completes the creation of an Apple account and allows apps to be published to the App Store.
- For the publication of Android apps, only a Google developer account is required. This can be requested here: https://play.google.com/apps/publish/signup
- After that, our Google account (talk to your contact directly) can be invited via the Play Developer Console, so that we can take care of the technical details of the app deployment.
Amazon Webservices (AWS) Account
- To deploy the backend to AWS, we need an Amazon account that has access to Amazon Web Services (Amazon's cloud environment). This can be created here: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html
- Once the account is set up, a payment option must be deposited once so that the paid servers can be started. In the first year, the so-called Free Tier runs, with which all basic servers and databases are free of charge. During the development the Free Tier is usually sufficient, so that no or only minimal costs arise.
- For further setup of the AWS account, please talk to your contact person at our company.
The cost of publishing an app differs between Android and iOS.
For Android, a one-time developer account registration is required on Google Play, which comes with a one-time fee of currently $25 USD (as of August 2022).
iOS apps are published in the Apple App Store. This requires a so-called enrollment in the Apple Developer Program. This is associated with an annual fee of currently 99 USD (as of August 2022).
In addition, there are only the expenses for the creation of the descriptive texts, advertising images and posting.
In the course of digitization and the increasing disruption of existing business areas, the question of which digital business models can be realized, especially in the context of apps and web applications, and which monetization opportunities exist, comes up again and again.
- Paid: nowadays, there aren't many successful apps that need to be paid before use, with no way to test the features, which leads us directly to the next model of how apps tend to be monetized:
- In App Purchase: To unlock a function, many apps now offer the option of purchasing it via in-app purchase. There are two different models:
- Subscriptions: the user pays for the maintenance of a function/service at regular intervals until the user cancels the subscription. Subscriptions can be cancelled at any time until the end of the current period. Subscriptions also have the option of a trial period. The trial period automatically turns into a paid subscription if it is not cancelled before the trial period expires.
- Pay Once: Here the user pays a one-time amount for a service
- Platform business: With the establishment of an intermediary platform, fees can be charged for successful transactions between a service provider and an interested party. Alternatively, the publication of service descriptions with corresponding added value can already be monetized by enabling the service provider to generate corresponding added value compared to non-paying competitors.
Apps with content that is managed editorially are usually connected to a so-called content management system (CMS). The CMS can either be developed individually by us or an existing one can be integrated and adapted. The CMS is often a website to which a user logs in, for example, to be able to change articles, images, information texts or other content of the app.
The CMS is usually hosted on a server on the Internet. The platform can be, for example, a simple PHP web space with a MySQL database or a complex cloud server architecture on which the CMS software is executed and the app data is stored.
The amount of the running costs of a published app depend heavily on the type of app. For iOS apps, the annual fees for the Apple Developer Program are the minimum. If the apps require a backend through which data is processed and/or distributed and stored, the costs for operating the backend are added.
If the apps were implemented natively, there are rarely cases in which the apps have to be adapted again due to operating system updates. In the case of cross-platform/web apps, on the other hand, this happens more frequently because the underlying platform sometimes has to be adapted and individual interfaces are therefore no longer supported or the type of programming changes.
Native apps are implemented individually per platform (iOS and Android) using the respective development tools. This ensures that all functions are implemented exactly as Apple and Google intended the programming of apps.
Advantages of native programming
- Perfect and recognizable UI and UX that users already use within their respective operating system
- Long support of developed apps without the need to make adjustments to new Android and iOS versions.
- Tangible high quality of the apps
Disadvantages of native programming
- Native development involves development efforts for both operating systems
Advantages of the Web App approach
- Very simple apps with few functions can be implemented for several platforms on one code base for a low price
Disadvantages of the Web App approach
- Lack of support from operating system manufacturers
- Continuous maintenance requirements and thus ongoing costs after initial development due to new operating system versions or device form factors
- No operating system-specific operating concepts can be implemented cost-effectively and thus unfamiliar UI and UX for users