Section 1 - Pre App Development

Pre App Development is everything that goes into validating, and testing your idea so that you’re able to plan a solution that will solve the problem you have identified for your target audience before creating an app.

Pre App development is the reason why most startup’s ideas fail, because the solution that was developed was not verified as having solved the identified problem, and the development itself had no clear plan.

The steps involved in Pre App Development include:

Validating your idea to see whether the problem you are solving is relevant and necessary,
Testing your idea to see what about the problem you are solving has the most impact,
Setting goals for your idea to give yourself a short and long term direction,
Planning an MVP (Minimum Viable Product) to create the initial plan for the first version of your app,
Creating a Wireframe to demonstrate the flow and structure of your app idea, and
Establishing a User Acquisition Strategy to help acquire your first customers.

1.1 - Validate Your Idea

Validating An Idea Icon

The first question to ask yourself when validating your idea is: “What is the problem that I am solving?“.

For example, in the case of Facebook, the problem they were solving was to provide ‘An online directory of people’, which Mark (CEO of Facebook) thought would be useful and fun to have, the ability to simply ‘look people up’, particularly people within your College (as Facebook launched initially within Colleges). This was the central idea which lead to their success and growth. This was the base to their idea.

The process of creating a new app can be considered an experiment, you are experimenting that your idea is a good idea, and a good solution to the problem.
You must ask yourself why will my experiment be successful?
What does it include that nothing else does? or What advantage does it have?

What are some qualities of good problems to solve: (How to Evaluate Startup Ideas - Y Combinator)

  • Popular – Many people already have this problem
  • Growing – The number of people with this problem is growing
  • Urgent – The problem needs to be solved quickly
  • Expensive to solve – The problem is not cheap to solve
  • Mandatory – The problem must be solved
  • Frequent – The problem occurs frequently

How can I validate my App Idea?

  1. Consider your ideas potential market size
    Analyse search volume related to the problem you are solving, for example, in the case of Online Marketing, you may find small business owners are searching for ‘Cheap Marketing’ as a related search to online marketing which can help give insights into what people may be looking for. To find search volume you can use the Google Trends Tool or the Google Adwords Keyword Ideas Tool which will give you a more accurate search volume.
    Analyse social trends related to the idea, for example, a sub-group of people may be talking about a certain problem/issue or buying similar products. These trends can be found on social platforms such as Instagram, Facebook, Twitter, or Pinterest to name a few.
  2. Interview your target audience / Find out what’s important to them
    Try to gauge the significance of the identified problem in your target audiences life and how much impact your solution would have.
    Work out what your audience’s current solution to the problem is and question them about that.
  3. Create a landing page / social page
    Create a quick landing (web) page or social media page which details the solution to the problem and allows people to signup to the ‘beta’ or initial trial of the product, or to simply hear more.
  4. Develop a very basic Minimum Viable Product
    Create a very limited and basic MVP which only has the core feature(s) which would solve the specific problem for the audience.
    Use this initial product to gauge the interest of your audience and to see how they use the solution and what they use it for.
  5. Get feedback on your solution or surrounding/related problems on social media platforms
    Make a post(s) on platforms such as Reddit to see whether people feel as strongly about the problem you are solving as you do and the feedback that they may have.

Interview people who have this problem

One of the best ways to validate your idea is to talk with people who have this problem, this will help you to find a specific target audience and discover how much of an issue this problem is for your audience.

A common mistake when interviewing potential users is to start by talking about the solution you are creating. The problem with this is it will distract away from the valuable insights you could be learning about what their existing problems are, and it will likely lead to biased answers.

When talking to potential users it’s generally most helpful to:

  • Talk about events that led them to encounter that problem.
    For example, for Cloud file storage like Dropbox a user may talk about having to share files for a group assignment
  • Talk about the context in which that problem occurs
    For the above example the context may be multiple students working on a shared document and trying to sync changes and multiple versions of the document created by various team members

Examples of good questions you can ask

  1. What is the hardest part about [doing the thing you’re trying to solve]?
  2. Tell me about the last time you encountered this problem?
    – Goal to extract context around the circumstances in which the user encountered the problem
  3. Why was solving the problem hard?
  4. What have you done to try and solve this problem?
  5. What don’t you love about the solutions that you’ve already tried?

1.2 - Test Your Idea

Twitch TV

Before going all in on a specific idea that you may think is a good idea it’s important to test the problem you are looking to solve.

A good example of an idea that evolved is a platform currently known as previously known as JustinTV.

The original idea was to create an online reality TV show which later became a live video streaming site where people watch video gamer’s and chat with their friends.

Experimenting with their idea for an online TV show founders Justin and Emmett started testing their idea, creating several content categories to test which content would perform best live.

What they found was the gaming category grew rapidly and became the most popular content on the site.
Only then the company decided to refocus and to create a new site named TwitchTV.

In 2020 TwitchTV has now became a 4 billion dollar company which is used by more than 15 million people every day.

1.3 - Set Goals and Objectives

Goal Icon

Your goals are the backbone of your idea, these will provide long term direction for your new idea.
The real question here is: What are goals that if achieved would solve your target audience’s problem?

The goals you set should align with your idea’s purpose/mission. These should be like an arrow at your target, You have a target in your mind of where you want your solution to be, and now you need an arrow pointed in the direction of your target.

These goals should be measurable in their nature, and you should be able to verify how far your arrow (goal) has travelled and whether it’s heading in the right direction.

One example goal we have is for the Coopers website, that is to increase page engagement, which can be easily measured simply through Google Analytics.

Eliminate Unnecessary Icon

It’s important when starting out and setting goals to eliminate everything that isn’t mission critical, these goals should be absolutely critical to your success and nothing less.

For our example above, to increase our websites page engagement, this is critical for us because a top priority for us is to provide valuable content to our target audience of startups and to increase our Google Search presence which is heavily impacted by engagement metrics.

With goals set the next focus is to set Objectives, these are steps you will take to achieve your goals.

Objectives should at a base level meet the SMART criteria:


S (Specific) – Clear and specific with an obvious direction, anyone should be able to understand the objective
M (Measurable) – You should be able to see how far along you are in the direction of your goal
A (Attainable) – Can this objective actually be achieved, is it possible? Your objectives should stretch you but not break you.
R (Relevant) – Does your objective makes sense relevant to your larger goals?
T (Time bound) – Does your objective have a realistic timeline to make significant progression?

An example of one of our objectives matching our goal (to increase page engagement) was to implement features that would assist with readability on our blog, for example the ‘Contents’ button that takes the user back to the Table of Contents, particularly useful on mobile devices to quickly navigate the posts content.

1.4 - Plan an MVP (Minimum Viable Product)

Creative Box Icon

What is an MVP? A Minimum Viable Product (MVP) is a minimal version of a product that will solve the identified problem for its target audience. An MVP is used as part of the Lean Methodology Framework to Build-Measure-Learn for a target audience, to iteratively solve the problem they are experiencing.

With your start up’s backbone (its goals and objectives) defined in the previous section that will solve your target audience’s problem(s), you have the necessary ingredients required to provide direction for your initial MVP (Minimum Viable Product) Plan.

Your MVP Plan should be documented and shared between all involved founders, and should include what, how, when, and why for everything that will go into development and testing.

Your MVP Plan should be based upon and guided by the following principles:

  • Launching quickly
  • Getting initial users
  • Getting feedback from your users
  • Iterating and improving the idea

Launching quickly
Your initial MVP must be lean and be able to be built within weeks not months, this is critical to getting started and links to the next points.

Spaceship Launch Icon

Your MVP plan should be time boxed, that is you set a specific window of time you will give to creating your first product, any features must fit within this time-boxed window.

Make sure to note down your plan and time-frame so you are able to hold yourself to the plan and make any desired changes within your plan’s constraints.

If you are not able to meet your set deadline then it’s important to cut down features to ensure the timeline goal is achievable.

Your initial plan should have very limited functionality that is most important to your target users, this will give you the ground to move and adjust from.

Excitingly, almost every large company that was previously a start-up launched exactly like this!
Airbnb as an example, a now multi-billion-dollar company launched with no payment handling, no map view, and a part time CTO that was writing the code himself.

AirBnb Initial Design

Getting initial users

The next most important thing after launching quickly is getting your initial users and getting feedback from them.

The idea here is to get anyone with the identified problem using your app so you can get a non-biased view on whether you are solving the problem you initially set out to solve.

Until you can put something in front of people, you will have no idea whether it will work, having people physically work with a product and getting feedback is absolutely critical to iterating your idea and improving upon it.

Customer Icon

Iterating and improving the idea
Now you have users using your product, this is where you can pivot and shift your idea. This is where you want to be.
It’s important here to ask, watch, interview, talk with and follow-up customers to see whether your solution really does solve the problem it set out to solve.

It may end up being that your idea solves additional problems or perhaps (in the case of a related problem

What to include in your MVP Plan?

  • A Lean Canvas Model
  • A minimal list of the most valuable features for your target audience
  • A maximum time-frame for work to be completed
  • A plan for getting your first initial users

Lean Canvas Model

A Lean Canvas Model is a Business Model used commonly by Startups which effectively links a potential Solution with a Market.
The Lean Canvas is often used to quickly formulate ideas and demonstrate these to others. Often this is one of the first things a potential investor will ask a Startup for to visual their idea, solution and market.

When completing the Lean Canvas Model it is generally easiest to complete it in the order of

  1. Problem
  2. Customer Segments
  3. Unique Value Proposition
  4. Solution
  5. Channel
  6. Revenue Streams
  7. Cost Structure
  8. Key Metrics
  9. Unfair Advantage

Lean Canvas Model Image

A minimal list of the most valuable features

It’s easy when creating a new app to try and include every potentially helpful feature in the initial product, thinking that without all the features the solution wouldn’t be ‘complete’. This is a very common issue for Startups that think no one will want to use the solution without the ‘full’ product.

This is not the case, in fact most successful Startups simply focus on one thing, to solve one problem very well.
Let’s take Facebook as an example, when Facebook launched the problem mentioned previously they were trying to solve was to provide ‘An Online Directory of People’.
They initially had no News Feed, no Groups, no Events, no Shopping, and these are just a few of the missing features compared to what they have now.

It’s important to carefully consider, based on the target audience and the problem you are solving, what is the minimal list of features that would solve the problem.

Early Facebook Website Page

Time-frames for your MVP

When deciding on features for your initial MVP it’s important to weigh in on and include the time it will take to include such features.
For example, if you were creating an Online Ordering App you may have the base level features that must be included such as Customers can place an order, but other features such as Customers can log a support ticket could take a long time to implement if that support also included sub-features such as live chat through the app, it may be appropriate to replace such a feature with Customers can contact a number for support or utilise a pre-existing solution.

Plan for getting your initial users

Similar to establishing a User Acquisition Strategy, except at a smaller scale, here you just need to have a basic plan for getting some initial users trialling your app. If your app is based around helping students create their university schedules then this plan could simply be manual outreach and offering incentives for sharing the app with other students to see whether your solution is something valuable enough that students would want to share.

1.5 - Create Wireframes for Your App

Wireframe Icon

Wireframes are a rough layout of your App usually created on paper, a whiteboard, or a Free Digital Wireframing Tool such as Whimsical
Wireframes are useful in displaying the core components and flow of your app (or at least your current idea of it, as this will evolve).

The core components of your app should be based on the apps MVP Plan, Goals and Objectives and should solve the identified problem for your target audience. The flow of your app represents the different paths and journeys users can take throughout the app to solve their problem.

Uber Eats Logo

For example, for an Online Ordering Mobile App, you could ask the question, how does someone who is extremely hungry quickly order food through the app, what’s the quickest way they can achieve this result? Is this intuitive and simple? Then you can look at how Uber Eats solved this problem and on the first screen of the app, the Dashboard you can see recommended restaurants, click on a restaurant then start ordering in 2 taps.

It’s not necessary or important to include anything design related within a Wireframe such as colours, images, and fonts. Your focus for the Wireframe should be on the structure and flow of your app. Someone who’s never seen your app or idea should be able to look at your Wireframes and see what can be achieved using your app and how that result can be achieved.

Structure Icon

1.6 - Establish a User Acquisition Strategy

Having an MVP (Minimum Viable Product) Plan for a great product/service is the first step towards success, however this doesn’t account for how you are going to get your solution in-front of your target audience.

Telling yourself that a single strategy such as word of mouth will give you all the growth you need is shooting yourself in the foot. If referrals is one of your growth strategies for example then it’s vital to align this with your product, enabling users to quickly and easily share your solution.

Marketing Icon

Strategies to acquire new users for your app include:

  • Organic Search and SEO Strategies
  • Reach Strategies aligned with your App
  • Landing pages with a purpose
  • Relevant Social Media Pages that fit your audience
  • App Store Optimisations
  • App Demonstrations & Video Promotions
  • PPC Campaigns

Create Organic Search and SEO (Search Engine Optimisation) strategies for the long term

Organic search is one of the best long term approaches for growing your product/service alongside Referrals, and does not cost you anything outside of your time.

Another amazing quality of an effective Organic Search Strategy is the direct correlation between your effort and the results you will get. If you are optimising for your target audience and creating value for them, they will come in numbers.

Some Organic Search Strategies to consider include:

  • Content Strategy (i.e. Blog Resources)
    • Just as you are reading here, creating content directed at your target audience to help answer questions surrounding the problem you are solving
  • Service/Landing Page(s) Optimisations
  • Online Tools for your Target Audience
  • Pitching for Tech Blogs/Sites where your target audience visits to feature your solution (i.e. Other Blogs)
  • Reviews from relevant App Review Sites
  • Create Videos for your Target Audience
    • For your Website, Blog, and YouTube (Second largest Search Engine) will help boost your SEO

Organic Growth Icon

Consider reach strategies that could be relevant to your app

Many apps have inherit strengths or strategies that are aligned with their offering in how they can promote the reach of their app. These can be unique to the style of app and different possibilities should be considered.

Examples of some effective reach strategies include:

  • Referral Strategies
    • Referral Strategies involve giving current users a reason to refer other users, an example of this is Uber’s old $20 free order for referring a new customer.
  • Promotions
    • Promotional strategies include discounts, price cuts and limited time offers to entice resistant users to take that next step.
  • Free to use for basic access
    • A recent trend and a very common strategy for many SAAS (Software As A Service) offerings include giving users the ability to use your app for free for the basic features (providing them with initial value), although limiting their use of the solution or the features they have access to until they become a paid customer.
  • Trial periods
    • Similar to above (free to use), with the exception that users will have access to your overall solution or a paid part of your solution for a limited amount of time. This can be effective as it doesn’t diminish the value of your offering and allows the user to see if the product fits their needs without disappointment.

Social Reach Icon

Create a Landing Page

Landing pages for apps are used to introduce your customers to your solution and to create a central point of contact with your customers. You can use this page alongside your marketing efforts to give potential customers a quick overview of your app, a reason, and a way to download.

Some things to consider when creating a landing page include:

  • Establish your Conversion Goal
    • Establishing a conversion goal for your landing page will guide the creation and purpose of your page. It could be as simple as a standard download page with download links to the relevant app stores, or it could be more involved such as a subscription to your service, or to purchase a physical product before downloading.
  • Design for Mobile first
    • Since apps are primarily used on mobile devices (can be different for website apps), it is best to design the mobile version of the landing page first as website visitors will more likely be mobile users.
  • Give just enough information to convert the visitor to a customer
    • Because this is the final touch point for visitors before downloading your app, you need to be as direct as possible here. On this page you want to present the problems your solution is solving for its audience.
  • Display the device
    • Have a physical picture of an iPhone or Android device with your app running to give your visitors visual context of what they are getting by downloading.

An an example of a great landing page for an app is for Pacemaker:

Here they have the solutions goal displayed directly at the top of the page “Create & Share mixtapes with friends!”, great use branding, design, and colours, a product demo video, and finally an awards section to display the products credibility.

Pacemaker Landing Page

Create relevant social media accounts that make sense for your audience

Creating Business/Service pages on relevant social media platforms such as Facebook, Instagram, LinkedIn, Twitter, Pinterest, and YouTube can provide you with a great way to reach new potential users and keep in touch with your existing customers .

It is better here to create great content for the few platforms where your target audience hang out, keeping in mind each platform has its differences, as an example Instagram is great for visuals and small snippets of information, Facebook is better for longer form content that provides more overall value.

Facebook Icon
Instagram Icon
Twitter Icon
Youtube Icon
Pinterest Icon
LinkedIn Icon

Understand the basics of App Store Optimisation

App Store Optimisation (ASO) is the process of optimising your App Store listing to increase your apps visibility and conversion rate.
App Store Optimisation allows your target audience to find your app and increases the chance they will download it.

Ranking factors of an App within both the Apple and Google Play Store include:

  • On-Page Ranking Factors
    • App Name (Title)
    • Description
    • Keywords (iOS)
    • Usage and Quality Metrics
    • Uninstall Rate
  • Off-Page Ranking Factors
    • Backlinks
    • Ratings & Reviews
    • Download Statistics

App Store Optimisation Icon

How you should optimise your app store listing

Your goal when optimising your App Store listing is to get in-front of your target audience. To achieve this it’s important to understand how your audience is searching in the first place, to find what keywords and language they are using when searching for apps.

The reason why this is so important is because it ties directly into how both App Stores rank apps, that is through keywords. In the case of the Apple App Store, they provide a specific field for your keywords. However, in the case of the Google Play Store you must repeat your keywords 3-5 times across fields to ensure you rank for them.

Create app demonstrations and video promotions

App demonstrations will be helpful to your target audience so they can understand your app and whether it solves their problem before being required to download (can push people away) and if your existing users get stuck and need help.

Video promotions can be posted to Youtube or other video platforms and used on your landing page(s), video marketing campaigns, and blog posts to entice potential users to download and/or make purchases.

YouTube Video Icon.png

Create PPC campaigns and strategies to get initial traction

As part of your marketing strategy you can run PPC (Pay Per Click) Campaigns which can useful starting out (used tastefully) to push your app in-front of new potential users that may be interested in your offering but otherwise may have not seen it.

Many paid advertising platforms such as LinkedIn, Instagram, Facebook, YouTube, and Google Ads have a variety of useful targeting mechanisms which enable you to target specific audiences of people who may be interested in your app.

Section 2 - Development

The exciting phase of Development involves taking your initial idea validation, goals, and plans you created in Pre App Development and turning this into an actual functioning product.

Because Development can be a long process and requires careful planning both in Pre App Development and consistently throughout Development it is very common for software projects to fail during development.

Planning and successfully delivering your app can be a tricky process, in the following steps we will identify ways in which you can successfully develop your solution.

The phases involved in Development include:

  • Creating Technical Specifications that will define your product
  • Identifying and Setting Milestones that will guide your project throughout development
  • Establishing Quality Assurance Mechanisms that will ensure your product meets a sufficient level of quality
  • Developing your MVP by leveraging appropriate platforms and tools
  • Deploying your MVP to the Web or App Store

2.1 - Create Technical Specifications

Your Technical Specifications or Software Requirements Specification are critical to creating your defined product, in fact not having these is one of the leading causes of Software Projects failure.

What are Technical Specifications? Put simply, they are a description of your app to be developed.
They include Functional Specifications that detail what your app should do, and Non-Functional Specifications that detail how your app should function.

To give an example of each, a Functional requirement could be ‘A user can view menus of available restaurants’ and an associated Non-Functional Requirement could be ‘Restaurant Menus will load within 2 seconds’.

Requirements Specification Document

One thing to note though is that Technical Specifications are detailed differently in various development approaches. Our preferred development approach is the agile approach, more specifically, SCRUM which is a simple, easy to understand framework that advocates early delivery and continual improvement of a product, an ideal candidate for Startups.

Within the SCRUM approach Functional Specifications are detailed through a Product Backlog and a Sprint Backlog.

A Product Backlog is a continually evolving list of everything known to be needed in the product. The Product Backlog is never complete instead it evolves as the product and the environment in which it operates evolves.

A Sprint Backlog is a set of Product Backlog items selected for a development Sprint, the completion of these backlog items would achieve the goal set for that Sprint.

SCRUM Process

2.2 - Identify Milestones

What is a Milestone?

Milestones are points identified during a project that mark the completion of a significant phase or part of work. These phases or portions of work can range from taking a few days to complete to a few weeks.

Milestones are useful in keeping track of your products development to ensure goals and objectives that were set earlier are being achieved. Milestones will help you keep to your MVP’s time-frames set earlier, and to review and adjust during the development of your product.

Milestone Calendar Icon

How to identify Project Milestones

Identifying Project Milestones and where they should be set depends largely on the projects goals, risks, product features, and what’s most important. An effective way that Milestones can be set is by fitting them to your development approach (For example, SCRUM, an Agile development approach). In this way your Sprint Development Goals and the associated product features will become your Milestones.

2.3 - Establish Quality Assurance Mechanisms

To create high-quality products that your users will love to use, well defined quality assurance mechanisms are absolutely critical.
It’s tempting to think that having such mechanisms in place is ‘just a waste of time’, although the reality is it actually saves time!
Quality Assurance reduces bugs and mistakes that are extremely annoying and difficult to find later on when they are more expensive to fix.

Quality Assurance Checklist Icon

What is Quality Assurance?

Quality Assurance is the activity of setting proactive processes that help prevent defects and ensure pre-defined quality goals will be hit.

How to establish quality assurance for your app

  • Create a standard definition of ‘Done’
  • Identify tests that will minimise risks, bugs and issues
  • Setup continuous integration, delivery and deployment

Create a standard definition of 'Done'

A definition of ‘Done’ is a list of requirements used to identify when a feature is complete. This allows your team to have a shared idea of what must be achieved before releasing a new product feature.

An example definition of ‘Done’ might be:

  • Code is peer reviewed
  • Code is checked in
  • Code is deployed to test environment
  • Code passes all test cases (discussed below)
  • Feature passes user acceptance tests
  • Feature meets previously defined functional and non-functional requirements
  • Code is documented
  • Feature checked by Quality Assurance team member (if one exists)

Identify tests that will minimise risks, bugs and issues

Some people approach the practice of testing software (and sometimes rightfully so) from the angle that everything must be tested, every minor detail and edge case.
For the majority of software it is most valuable to identify areas where bugs are either common, or high-risk areas to ensure these areas are covered well.

Testing levels to include throughout your software include:

  • Unit tests – Test the smallest units of functionality, i.e. functions and classes.
  • Integration tests – Test for defects in interacting modules
  • System tests – Test a complete system to verify it meets requirements
  • Acceptance tests – Verifying that the completed product meets the needs of the end-user

Types Of Software Testing

Setup continuous integration, delivery and deployment

Setting up a development workflow which includes continuous integration, delivery and deployment creates an efficient pipeline that can be used to automate testing and ensure high quality code.

This reduces the amount of manual testing that needs to be done and allows the development team to continue adding to your MVP’s code base so you can quickly see the latest development changes and verify its quality.

CI-CD Workflow

Continuous integration provides an automated way to build, package, and test software. This involves developers frequently integrating code changes into a shared repository. Integrating these changes should then trigger automated tests such as the ones defined above (Unit, Integration, System).

Continuous delivery automates the delivery of software to various product environments. This involves setting up environments where code changes are automatically prepared for release to a production environment.

Continuous deployment provides a way for anyone (even non technical users) to get the latest version of the product including all ‘ready’ code changes. This involves configuring your continuous delivery environments to automatically release new builds into the production environment (new versions of your software with changes made by development).

2.4 - Develop your MVP (Minimum Viable Product)

What can be used to develop your MVP?

No Technical Experience Technical Experience
No Budget Utilise a best fit Codeless Solution, validate your idea then potentially look for funding Create your own simple MVP, validate your idea then potentially look for funding
Some Budget Complete all planning in section 1 then engage a development studio with Startup experience Create your own simple MVP, and seek support from others for User Acquisition Strategy, Validating your Plan and Post Launch

How to develop an MVP

  • Make sure everyone involved has access to and is completely across the completed Designs, Technical Specifications and your Product Backlog/To-do list.
  • If developing your own app – Choose a Development platform that fits your requirements and app.
    Some platforms that can be used to develop an app include Native, Cross-Platform, and Hybrid which each have different use-cases, pros and cons.

    • Native App Development
      Native app development is best used for high-performance apps or apps that require very custom or specific functionality and/or designs. Native development means that two versions of the same app will have to be created and maintained separately for both Android and iOS. Due to the nature of native app development, apps will generally take longer and cost more.
    • Cross-Platform App Development
      Cross-Platform app development is best used for most apps which don’t require very custom or specific functionality and would like their app to still look and function great on both Android and iOS. Cross-Platform development involves creating a single codebase that will be automatically translated to native code for both Android and iOS meaning that the same app doesn’t have to be created for both platforms.
      Some examples of Cross-Platform development frameworks include React Native, Flutter, Xamarin.
    • Hybrid App Development
      Hybrid app development is best used for highly cost conscious app development that doesn’t require much custom functionality. Hybrid app development also uses a single shared codebase although the difference from cross-platform is that this code is not translated to native code for both platforms instead it runs in a ‘web container’ further reducing the apps potential performance and functionality.
      An example of a Hybrid App Development framework is Ionic.
  • If developing your own app – Utilise/Create a standard process for development lifecycles
    Without a development process that everyone follows there will be no clear way to bring everyones work and ideas together and to track progress. An example of a process that can be used is the SCRUM approach, within this approach development is split up into observable iterations known as sprints. Each sprint has its own goal and deliverables that move the project incrementally towards its overall goal.

Include Analytics and User Engagement Tracking within your app

Tracking your apps analytics and user engagement is crucial to understanding how your users use your app. With this data you will be able to see important engagement metrics such as what users spend the most time on, and how they interact with your app. as well as app analytics that will reveal whether you are growing or not.

This information could give you new ideas for your app and change your perception of what you initially thought was most important/valuable to your solution.

2.5 - Deploy your MVP

Deploying your MVP

Now your MVP’s development is complete you are ready to deploy your product either to the web if you have built a web app or to the app store if you have built a mobile app.

Web App

Deployment will depend on how you have developed your product, for example if you built a React web app you would publish your app through a command on the production server. However, if you used a codeless solution that solution will likely handle deployment for you.

Mobile App

  • Upload to iOS App Store and Google play store
    • When planning to make your app available on the app store ensure that you allow time for approval and potential requested changes from both the Apple App Store and Google Play Store. This process can be as fast as 24 hours if there is no issues with your listing and app, however this process will usually take around a week.

Section 3 - Post Launch

Now that you’ve launched your app MVP it’s tempting to think this is where you get to sit back and relax, wrong!
Many Startups would say that the post launch phase of creating a new product is the most important time.

This is where you learn what your target audience is really looking for and where huge improvements are made.
For many Startups this learning period has required them to pivot completely from their original idea to a new idea that proves much more valuable for their target audience.

The phases involved in Post Launch include:

  • Tracking KPIs (Key Performance Indicators) to ensure your app is hitting user engagement goals
  • Gathering User Feedback to discover what users love and what can be improved
  • Making Improvements based on the KPIs and User Feedback you are receiving
  • Maintaining your App through OS (Operating System) updates and resolving customer issues

3.1 - Tracking KPIs (Key Performance Indicators)

Identify the relevant KPIs for the problem you are solving

To understand how your users experience your app it’s essential to monitor the user engagement on your app, keeping track of how your users are using it to solve their problems and whether they are coming back to use your solution.

Examples of useful data to track on your app include:

  • number of downloads,
  • number of users per day,
  • number of returned users over a week, (user retention)
  • number of returned users over a month, (user retention)
  • time spent on each app session,
  • time taken to solve problem using app (For example, to order food on an Uber Eats style app),
  • number of app shares through the app

Setup ways to track user engagement

There are several ways to track app usage and engagement, one invaluable and simple way is to perform in-person usability testing sessions, to watch and ask users questions as they use the app.

Questions can be asked such as, What do you find intuitive? What do you find difficult? How much is this solution worth to you?

A useful tool you can use to track usage metrics is Firebase and Google Analytics a free tool which can be used as a central place to track not only app analytics but also website analytics and advertising performance.

3.2 - Gather User Feedback

Interview your users

Interviewing your existing users is particularly useful as it will give you the overall context on how your customers use your product. Make sure to interview the user from a place of empathy and curiosity, keeping the discussion about the user and their preferences and struggles. Talking about the product directly will lead to biased results and won’t allow the user to talk about their experiences.

Consider questions that will teach you about your users experiences using your product, why they use it, how they use it to solve their problems, and what they like and dislike.

Some good questions you can ask during customer interviews

  • Why do you use our product?
  • What problem(s) does our product solve for you?
  • How do you solve this problem using our product?
  • What is the primary benefit that you have received from our product?
  • How could we improve our product to better meet your needs?
  • Did you have a previous solution to this problem?
  • If so, what do you prefer about our solution?

Survey your users

Surveying your actual product users will give you new valuable insights into:

  • Who are the users that value your solution the most
  • What these users value the most about your solution
  • What can be improved

Note: To help understand the differences between the types of people using your product make sure to assign each person surveyed a particular persona, for example ‘Founder’

What types of questions are good to ask?

  • Ask open ended questions, not yes/no questions
  • Ask questions to test your assumptions, not to validate them.
    For example, How did you solve the problem? Rather than did you use this feature?
  • Avoid questions that lead the customer to a particular response, For example, ‘Do you like this feature’.

Examples of some great questions to ask

  1. How would you feel if you could no longer use [Your Product Name]?
    a) Very disappointed b) Somewhat disappointed c) Not Disappointed
    Asking this question will allow you to judge how close you are to achieving product/market fit according to Rahul Vohra (
    If 40% of your users respond with very disappointed chances are you could be close to achieving product/market fit.
  2. What type of people do you think would benefit most from [Your Product Name]?
    Asking this question will allow you to closely understand the types of people who draw the most value from your solution, and the language that resonates with them.
  3. What is the main benefit you receive from [Your Product Name]?
    Asking this question will help to reveal the common value your solution provides its users, giving you a deeper insight on the direction to develop your solution moving forward.
  4. How can we improve [Your Product Name] for you?
    Asking this question will reveal what can be done to move more users from somewhat disappointed to very disappointed from question 1 above. A useful way to filter for the most relevant users is to consider only the users who share the common value of your solution with the users of the very disappointed group.

Provide direct support for your app

When starting out providing direct support to customers will have two major benefits, firstly it will give your customers a great experience and it will give your team a strong understanding of who your customers are and how they use your software which will help to guide your solutions development moving forward.

Enable and ask for feedback

You want to ensure that the customers who care enough are able to easily provide feedback about your product, both positive and negative. This will enable you to further understand what it is customers love and what could be improved. Feedback could be in the form of contacting your team directly, or submitting feedback/contact forms placed conveniently within your product.

When customers provide feedback ensure that you followup their feedback with an appreciative thank you and if support was required ask them how they found the support they received to ensure your customers feel considered and to allow your team to improve future support.

3.3 - Make Improvements

Make improvements based on user feedback

From the user feedback you have gathered, you will now understand why and how your users use your product, the types of users that find the most value from your solution, what problem it solves for them, what they value the most, and what they think could be improved.

With this feedback it’s tempting to think you’re ready to start making changes based on what you’ve learned but hold one moment. You want to make sure that any suggested changes align with your target audience and what they want from your product.

Make more of your users love your product

From your research you may have found common traits between the types of people who love your product and the main benefits they receive from it, for example maybe founders, directors, and managers love your product, and they love it because it allows them to easily manage their staff.

With this understanding of your target audience and the main benefits they receive from your product you can now look at the suggestions from people who also fit this audience but do not yet love your product. These people will be on the edge of loving your product but may want relevant changes that would move them to this point.

Use these insights to enable you to make changes that move more of your user base to loving your product, and hence move you closer to product/market fit.

Keep your core users loving your product

The other suggestions you want to include are those of your users that already love your product. Their suggestions will align with your target audience that share the main benefits of your product and increase the overall value of your solution for its users.

By incorporating feedback from these two groups, you will keep users loving your solution, and move more people who are close to loving your product to loving it.

Make improvements based on app analytics

Useful insights such as the features most used by your users and the time taken by a user to solve their problems can be used to identify features that are valuable for users and areas to be improved. These insights can be seen by tracking each screen that a user navigates to on your app and the length of time they spend on each.

3.4 - Maintain Your App and Support Users

What app maintenance is required?

Maintaining your app will come in a few forms:

  1. Releasing new features and improving current features based on feedback from users.
  2. Keeping your app up to date with mobile OS (Operating System) updates and potential compliance changes
  3. Monitoring app and server performance

Releasing new features and improving current features

The process of making improvements is discussed in the section above and should occur throughout the whole life of an app. Your users will constantly be looking for improvements and they are necessary for your solution to stay relevant with changes in its environment and to stay competitive in the market of available apps.

Keeping your app up to date

On the occasion mobile OS (Operating System) updates will cause issues for your app, causing the whole app issues or particular features. These will usually require simple and straightforward updates such as updating some packages your app is reliant upon or changing a small part of the apps logic.

Potential compliance and regulation changes may also require you to update your app to stay compliant. For example, if your app is processing credit card payments then you must remain PCI Compliant.

Monitoring app performance

If your app has a backend (links with a database or other servers) then it’s important to monitor the performance of it to ensure it is within capacity and will not crash. As your app grows you’ll likely require a scaling strategy in place that will automatically monitor your apps performance and scale its resources depending on what it requires. This will depend on what backend resources your app is using and how it was setup.

Supporting your apps users

Once your app is live its users are going to need support, whether it is because of an issue they’ve encountered or because they don’t know how to achieve a result. Either way both of these will yield valuable information for you and your app.

If users are encountering issues it gives you the opportunity to resolve these so they don’t continually reoccur for them and other users creating bad user experiences.

If users don’t know how to achieve a result it gives you an opportunity to improve the design and structure of your app, to make it more intuitive for users to solve their problems.

You’ll want to make it as easy as possible for users to access support. Some effective ways to offer support within your app include live chats, tickets, contact forms, and direct phone support. Consider providing direct support for your users (at least starting out) as this will give your users an amazing experience and help you to develop a strong understanding of who they are and how they use your app.

Frequently Asked Questions

How long it takes to build an app can vary greatly (from weeks to months) depending on the features and functionality required in your initial product. As we discussed earlier in this article, when getting started on a new idea it’s best practice to develop an MVP (Minimum Viable Product) with the minimal amount of functionality required to solve the identified problem for its target audience.

Development of such an MVP should take weeks not months as it should be a basic version of the product that is used to test with users and improve upon.

How much it costs to make an app can vary greatly depending on the process used to create your app as well as the features required in your initial product.

Within the process of creating your app there are several factors that will impact the cost. One factor includes creating your product plan/scope, and identifying what is achievable for your app within your desired timeline and budget.

Another factor includes how detailed your designs are, whether these are custom branded designs or simple wireframes (basic designs) used to show the general structure and features of your app.

And finally your apps development cost will be impacted by whats included within the apps development and what structure is being used. For example, is there a single developer creating your app or a complete agile team, and is full testing included as part of your development or is a minimal approach being used.

Generally the total cost of creating a new app will start from around $10,000 for a simple app and can reach up to $200,000 + for a complex app.

There are several ways to get funding for your Startup such as Angel Investment, Venture Capital, Accelerator funding, Government Grants, and Crowdfunding.

Angel Investors, Venture Capitalists, and Accelerators usually look to invest in Startup’s for an equity share when they believe the Startup has a high chance of success. Angel Investors are individuals or groups of individuals that invest their own money, whereas Venture Capitalists are employees of Venture Capital firms that invest other people’s money.

The difference between these two is that Angel Investors will generally want some level of control over the direction of the company although offer valuable business experience. Whereas Venture Capitalists offer the potential for large investment but typically want to take on Startup’s that can grow fast and have an exit strategy (such as IPO or acquisition) so they can get a return on their investment.

Accelerators are a bit different to Angel Investors and Venture Capitalists in what they offer. Accelerators are usually a fixed term program that provides access to mentoring, expert advice, industry contacts, and resources in addition to funding.

Often Startups will start by self funding their idea until they can prove/display the need for a solution to investors. This is commonly done through creating a MVP (Minimum Viable Product) and gaining traction with users.

Some other ways to display the desire for a solution include creating a landing page that demonstrates what your app will do and allows interested users to signup to a mailing list for updates on the product. Or to use manual processes that replicate what a solution would do and allows users to use it in a similar way. For example, helping users plan their holidays manually to prove the need for a holiday planning app.

Crowdfunding can be used to raise capital in cases where niche communities may highly desire a solution to a problem. Crowdfunding allows outside contributors to donate to fund development of the new product. In many crowdfunding campaigns donators money will not be taken until a significant funding milestone is hit that would allow for creation of the product. Contributors are often incentivised by the completion of the finished product, a small gift or even a credit down the line.

Some Australian Government Grants that are useful for Startups include MVP Grants and R&D Tax Offsets. MVP Grants of up-to $25k are accessible in NSW for Startups who are pre-revenue with a proof of concept ready to test. R&D Tax Offsets can be claimed by businesses for eligible R&D expenditure.

The first thing to consider when deciding on platforms to develop for is whether either platform is more commonly used by your target audience. If this is the case, then you would want to start with this platform and then consider the other platform later when you have created a product your users love.

Whether you develop for both platforms or not depends on if it fits your MVP (Minimum Viable Product) Plan (discussed above). Because your MVP is likely to change a lot based on feedback, the main goals of creating your initial product is to launch quickly, get initial users, get feedback, and improve upon the idea. If developing for both platforms is going negatively effect this process and cause you to miss your desired timelines and budget and slow down future changes then it is much better to develop for a single platform to start with.

However, if it does fit your MVP plan and you are utilising a cross-platform, or hybrid development approach with only minor differences between the Android and iOS versions of your app then it may be possible (and beneficial) to start with developing for both platforms and making your app more widely available.

Monetising your app can be done in countless ways, here we will discuss some of the common ways and generally how you should go about monetising your app.

The most important thing about monetising your app is monetising it in a way that doesn’t deter your users from the app. Ideally it should have a very minimal impact on the users overall experience and should always allow them to use some part of your solution before having to pay so they know if it will fit their needs.

Some of the ways in which you can monetise your app include:

  • Paid App
    Paid apps require users to pay for the app before downloading and gaining any access to its features. Because of this some users will be deterred because they don’t know if it will fit their needs before being required to pay. Some good examples of paid apps include many paid games you can find on both app stores.
  • In-App Advertising
    Most popular form of generating revenue from apps that is reasonably simple to implement and can be effective as long as it non-obtrusive and doesn’t affect the users experience. An example includes how Facebook shows advertisements on its news feed.
  • Subscriptions
    The Subscription monetisation approach may allow users to access parts of the app but then require users to pay a recurring fee to use other features.
    Examples include Netflix, and Spotify’s pay per month for access model.
  • In-App Purchases
    In-App purchases allows users to purchase virtual or physical goods from within the app. This approach is often used for games where users can purchase virtual currencies to be used within the game. One thing to consider before choosing this approach is that both Apple and Google takes 30% of every purchase that is made through your app (not outside of it though).
  • Affiliate Ads
    Affiliate Ads generate revenue through commission by referring users to other relevant apps, products, or services