How To Make an App

By Samantha Pederslie

Many exciting startup ideas involve apps, but founders may find themselves troubled with how to actually make an app. 

A single extraordinary app idea can lead to a landslide of success. Run with an idea, start a company, attract investors, secure a seed investment; suddenly, you're running a startup with a real, live app available for anyone to download. Nowadays, apps are regularly expected by consumers. This is clearly evidenced by their app store spending habits. Startups that fail to adapt and thrive on the mobile platform are only doing themselves a disservice. Given the seismic shifts in consumer behavior in 2020, knowing how to make an app is a salient skill for any founder. 

In this guide, I’ll show you the basic steps to take an app from idea conception to execution, which can be applied to almost any context. Let’s begin!

Step 1: Come Up With an Idea

If you have already formulated your app idea, you’re done with the first step! If you’re still brainstorming, I have three useful techniques to speed up the process. 

Note: It’s crucial to realize that it’s extremely rare to come up with an app idea that’s never been done before. Statista reported that the Google Play Store and Apple App Store combined offer over 4 million apps as of Q3 2020 -- and there’s no shortage of ideas being repeated and “riffed” on. To think realistically, it’s helpful to remember that most concepts will be some kind of a variant or amalgamation of other ideas. Thinking this way keeps you grounded and you’ll be able to direct your creative processes in a useful way. Let’s talk about the first technique. 

Technique 1 - Rejuvenate Existing Ideas

Given the aforementioned rarity of complete originality, this technique is an obvious first step. Think of a way to bring a unique twist to an existing concept, or even blend features and elements from different apps. 

Many startup apps are founded from a personal conviction; maybe you use two different shopping apps, and like features from both. Chances are, if you see great value in certain features, others will too. Thinking about the apps that you enjoy on a daily basis is an ideal baseline to start thinking about ways you can build upon them with your own innovative twist. 

Technique 2 - Solve Your Own Problem

The very nature of startups is that they’re fast-paced, flexible, and made up of people from a variety of backgrounds. Find out what problems you and your colleagues face in everyday life that could be potentially solved with an app. As with the previous technique, you most likely won’t be alone in experiencing these problems and you might find yourself striking a chord with various subsets of consumers. 

Even if an app already exists to solve the problems you’re thinking of, keep them in mind. There’s always room for improvement, and consumers are always looking for superior alternatives. This leads us straight to the next technique. 

Technique 3 - Enhance an Existing App

Apps can underperform for a plethora of reasons -- maybe it’s missing a vital feature, there aren’t enough updates, or the app author isn’t heeding user feedback. One of the greatest opportunities here is finding a popular app with a pattern of negative feedback that generally goes ignored. 

User feedback is arguably one of the most primary drivers of your startup's success, especially in software and app development. There’s a reason why the Agile methodology constantly stresses using frequent iterations to address waves of user responses (otherwise known as feedback loops.) If an app author is ignoring their users, they’re inadvertently creating a window of opportunity for you to create something superior.

how to build an app

Step 2: Know Your Competition

As with the formation of any business idea, analyzing the marketplace and competition is a vital step to success. You need to know how the problem you’re seeking to solve is being addressed by other apps. Don’t let the pure presence of competition discourage you -- as we discussed earlier, it’s nearly impossible to come up with a completely new idea. Yet, there is always room for innovation and improvements. If anything, competition signals that there is a clear and present demand for a solution to the problem at hand. 

When it comes to competitive analysis for making an app,  the key is determining how well the existing apps are satisfying the primary need of users. It’s highly possible that many of the apps out there are outdated, stagnant, or are just failing to achieve the quality desired by consumers.

A simple and accessible way to check out your competitors is to create a spreadsheet or matrix based on ratings and reviews. Take note of various attributes for every competitor, which we’ll talk about in these next sections.

App Name

This attribute is mostly for ease of identification within your notes, but sometimes app names can carry certain keywords to help their standings in search results. As you gather all of your competitors, it’s a good idea to look for any patterns or repetitions in the apps’ names. 

Feature Set

Now, think about what features these apps are offering. It’s useful to make three types of observations:

  1. What core features are essential (what features do all of the competing apps tend to share?)
  2. What features are unique amongst the other apps?
  3. What features are missing completely from the competing apps?

When combining this attribute with the later research on ratings and reviews, you can find out which of these features customers tend to like or dislike.


Now, note the revenue models of the apps. They could use the freemium revenue model, where users must pay to unlock certain content. It’s common to see apps using the advertising revenue model, where users can download the app for free in exchange for viewing ads. The subscription revenue model has risen in popularity recently, where users pay a set amount in a recurring cadence. Once you’ve identified that, make these two observations:

  1. How do the users react to the different revenue models? For example, many people react negatively to excessive ads or “paywalls” to certain content, and would rather just pay a single price up front. 
  2. Is there a way you could potentially monetize your app differently from the competition? This could set you apart in a highly competitive marketplace.

App Publisher

Apps can be published by anyone, from individuals to large corporations. The difference is that large companies often have much more resources (time, money, and people) when it comes to developing and maintaining apps. Competing with these companies head-on is generally more difficult, but it can make you think more creatively about your app. 

If the name of the publisher is still ambiguous, you can often look at the contact page and see if there’s an office space, team name, or other information that points to a large company as opposed to an individual. 

Last Updated

Now, see if the app is being regularly updated by the author. Any app that’s updated constantly can be seen as active competition, while neglected apps should signal an opportunity for taking over market share. 

Ratings & Reviews

Reviews offer plenty of insights for competing businesses, not just app users. Reading through reviews and conversations is a form of social listening. Try to determine if there are any patterns in the negative reactions. Infer what gives consumers delight, and what pain points are present (if any). These observations should serve as a guide for things to avoid when you set about developing your own app.

If the competing app has very few negative reviews, conduct “field research” by downloading the app for yourself and noting how the interface, features, and/or overall experience has earned the app a positive reputation. This should simultaneously supply you with an example of how to prioritize features for your own app.


While you can’t find an app’s download amount listed on the App Store, you can use other resources such as SensorTower to get an estimate. This number should give you a loose approximation of the competitor’s market share. 

Idea Validation

What if you can’t find a lot of competition out there for your app? Your idea could be truly new and innovative, or it could be that the idea simply isn’t viable. Reflecting upon your concept can help you determine which one it is.

First, create an elevator pitch about your app concept -- summarize the intended purpose of your app within 30 seconds. Practice this pitch with yourself and others extensively, as the key to an elevator pitch is clear messaging. Ask your friends and family to play the devil’s advocate, and to look for vulnerabilities in your concept. This is an extremely important and grounding experience, as constructive criticism can help you to uncover a new problem you hadn’t considered before. For many startup founders, it can also make them address issues that they put "on the back burner” in the midst of their excitement. 

making an app

Step 3: Define Your App’s Features

At this stage, you haven’t conducted any testing or elicited any user feedback. Your idea is intangibly residing in your mind, so get it down onto paper and think about what you would like the “perfect version” of your app to be.

Thinking about monetization and revenue models is important too, but don’t let it dominate your planning at this point in the process. User adoption should always be the first priority. Try to identify what your overall goal is, as this will form a framework for the rest of your work that could be costly to change later on. You’re not outlining the nitty-gritty of the app design just yet, you’re thinking about what a user should be able to accomplish with your app. 

Defining Core Features for an MVP

MVP stands for “minimum viable product”, which emphasizes launching small iterations of your product in order to get it into the hands of users as quickly as possible. These users can help you understand what should be prioritized in your app’s features. Take this feedback, improve your app, and then re-release it as an update (thereby creating a feedback loop.) 

The main benefit of the MVP is that you can save vast amounts of time, effort, and money. Building an app in a vacuum is never a good idea; you can take considerable time to come up with a product that ultimately no one cares about. 

Take a look at the list of features you wrote down, and determine the core features that would make the app minimally (yet acceptably) functional. This “version 1” should address the main needs of the target customer, but it shouldn’t have extra design and features just yet. It often occurs that the lower-ranking features were never needed by users at all. 

Step 4: Create App Mockups & Prototypes 

At this stage, you want to start thinking about what the user’s experience will be like when using their app. What will they see? What pathways will they take to interact with the various features? These key points can help you start off simply before getting into the “meat” of the app’s design. 

Main Screens

This varies completely depending on what your concept is. However, the best way to go about this is to simply imagine yourself using your app. What sections and screens can you think of to best exploit your app’s functionalities? For example, you might have a settings tab, a shopping tab, and a profile tab. How many different sections would be logical? You don’t need to worry about getting it completely right off the bat, but writing down a general idea will help you later on in the design process.

Main Navigation

Now that you have an idea of what sections you might include, think about how your users will access those sections. Many apps opt for navigation mechanisms such as a tab bar at the bottom or a sliding menu bar on the side. Observe what navigation styles feel the most natural and intuitive to you in your favorite existing apps. The key is to make sure that users never have to think about how to find something.


The term “usability” is rather intuitive -- it’s how easy it is to use a product for its desired purpose. Usability feeds into a wider field called user experience (UX), which looks at how users feel when they’re using a product. 

Thanks to UX, how you choose to design your app can create a source of delight for users. Through smart design, you can eliminate the user’s struggles and surprise them with visually-pleasing animations. Essentially, you should make the app as easy to use as possible. UX often involves psychological and biological factors -- for example, it’s less easy to press a button at the top of the screen because our thumbs can’t reach that far. 

If it’s your first time thinking about UX, read Apple’s Human Interface Guidelines to get a basic idea of what works. The ensuing user feedback after launch will help you to zero in on that perfectly tailored user experience.

Onboarding Sequence

In some cases, you might need a welcoming tutorial to instruct people on how to use your app. An onboarding sequence helps break down the barriers for people to use complex apps. 

how to make an app

Step 5: Create Graphic Designs

At this point, you’ll want to visualize what your app will look like (similar to an architectural rendering before condos are built.) The graphic design should show the final look of the app, and it should also serve as a useful visual tool for pitching to investors. 

The graphic design will heavily determine what the user interface and user experience (UI/UX) of your app will look like. This is often an ideal stage to hire a UI/UX designer to help you represent your concept in a sophisticated, professional-looking way.

There are a few options that you can consider to accomplish this step.

  1. Hire a freelancer. Sites such as Toptal and Upwork are great marketplaces to find freelancers. Visual inspiration sites such as Pinterest and Behance offer an array of sources for freelance UI work. 
  2. Recruit a partner who has mobile app design experience. Reach out to people in your network that are in the tech industry, and see if they know any designers that might be willing to help you with your design. 
  3. Use pre-made app design templates. You can purchase app designs that can be customized to your liking, which is much cheaper in comparison to hiring someone to create a design from the ground up. However, a large caveat to consider is that your app may end up looking like others in the marketplace, which hurts your competitive advantage. 
  4. Learn how to design an app yourself. If you love design, you can always teach yourself how to create user interfaces through a variety of resources available on the Internet such as Design+Code. Keep in mind that this generally saves you money, but it will cost you more time as it’ll take a lot of work to make your designs look professional. 

Now, you’ll have a visual representation of what your app will look like. Logically, you can start building your app now. However, it’s wise to create a marketing plan first. 

Step 6: Make a Marketing Plan

We already talked about the sheer number of apps present in the marketplace. To make sure that your app actually gets exposure, you need to plan carefully on how to reach your target audience. 

Marketing can occur at virtually any point of the process -- whether it’s before or after the app was launched. Here are some pre-launch marketing strategies to use. 

  1. Create a landing page and a pre-launch email list. A landing page is considered the bare minimum for when your app hasn’t launched yet; it gives people a place to learn more about your app. The landing page should include a call to action for visitors to sign up for the pre-launch email list, so they can be notified of the app’s progress and eventual launch. Services such as Mailchimp offer ways to collect emails for little to no expense. 
  2. Make a media kit for your app. This is geared towards journalists who want to write articles about your apps. Many startup founders overlook this step, but it only makes it easier to earn word-of-mouth. The media kit includes some key information about the app, as well as its logos and other branded graphics. You can link this kit on the landing page, so journalists can access it with ease.
  3. Talk about your journey while developing the app. This should be organic and like a journal -- simply write on social media about your process in making the app. Audiences enjoy hearing about the various “wins” and setbacks that occur during the development of an interesting app. When it comes to launch, you’ll find that you’ve already generated a devoted audience that will support your app with voracity. 
  4. Work on your app store optimization (ASO.) Basically, you should optimize any keywords, titles, and descriptions in the metadata of your App Store listing. Take the time to do some research on what specific keywords work well for your context.

When the app is introduced to the App Store, you still have lots of marketing work to do. Here are some strategies that are great to attract audiences upon launch.

  1. Write a press release. This is relatively inexpensive, and it grabs the attention of various media outlets. 
  2. Do paid marketing. There are countless strategies to choose from here, but we’ll talk about that later. If you have some money available to pay for marketing, it can really help to get your app noticed in the marketplace.
  3. Notify the pre-launch email list. These emails were gathered from your launch page earlier, and you should use them! Make sure they know that your app has launched, and be sure to include information on how they can download it.
  4. Do anything you can to get word-of-mouth. The platforms that you choose to do this on will vary depending on the nature of your app. Countless niche interest groups and communities exist on Facebook, Reddit, and more. Make sure that your contributions aren’t just thinly-veiled promotions of your app -- that’ll get you banned. Aim to create meaningful connections and discussions, and only mention your app when you think it will help other people. This can be an ideal place to share your app development journey as well!

Step 7: Build Your App

This step is where the process of making an app finally achieves some tangibility (and it’s arguably the most exciting step.) As with anything, there are a variety of methods to go about building an app, with varying costs.

  1. Learn to code, and build it yourself. The benefit here is that you get complete control over your app development, and it’s personally enriching for many. However, it will most likely take a lot of time as you work with the learning curve. If you’re interested in becoming a developer, take this opportunity to get invaluable experience!
  2. Hire a freelancer. As with the graphic design step, you can find freelancers on the Internet to help you build the app. This is great for those who are more interested in the business side of the process and/or don’t have the time to learn how to code. 
  3. Partner with a company that builds software for equity. At MassLight, we help startup founders focus on their vision by providing them with customized and professional software development. Tell us about your idea, and our software engineers will set to work planning interfaces and design for a unique and sophisticated app. 
  4. Partner with a programmer. Finding a partner with technical expertise can be difficult, as they’re in high demand. This option is best for those with a verified history of launching successful business ideas. 

Once you’ve built the app, your work isn’t over. One of the most vital steps in the development stage is testing -- bugs and errors can completely ruin the user experience, and they can even get your app rejected in the App Store review process. Therefore, it’s only logical to aim to eliminate as many bugs as you can prior to launch to ensure the satisfaction of the early adopters of your app.

Step 8: Submit Your App to the App Store

Your app is now tangible and ready to launch. Now, you have to actually launch the app onto the Apple App Store so that users can access and download your product. The main obstacle here is the App Certification Team. The process happens in a few steps:

  1. Review your app against the App Store guidelines. Make sure your app qualifies for everything so that it doesn’t get rejected for something trivial.
  2. Fill in the app’s metadata. You can use App Store Connect to write your app’s listing, and to note the title, keywords, description, and other details. This is also where you can upload screenshots and videos to give users a preview of the app on its listing page. 
  3. Upload the app from Xcode to App Store Connect. At Xcode, you simply send your app’s code to Apple under the corresponding listing that you created. 
  4. Return to App Store Connect, and submit your app for review. The metadata and code should be organized neatly, and you can write notes for the reviewer from the App Certification Team.
  5. Wait for a response. The reviewer will be checking your app against the App Store guidelines, and they’ll be testing for negative user experiences such as bugs and crashing. 
  6. Receive approval. This takes about 2-3 days. Of course there’s a chance that you get rejected. Don’t let this discourage you; you simply need to fix the app according to what is breaking Apple’s guidelines. If you received an approval, congratulations!

If you decide to work with MassLight, they’ll manage all of the aforementioned for you.

Step 9: Execute Your Marketing Plan

Besides the marketing plan that you created earlier, here are some marketing strategies that make a difference specifically for apps.

  1. Get featured in the App Store. There’s no particular guaranteed pathway to achieving this. However, if you produce an app that sets out to accomplish its purpose with high quality standards, chances are you’ll earn the spotlight.
  2. Have a paid-to-free campaign. If you decide to charge for your app, you can make it free for a temporary period so that you can attract more downloads. 
  3. Work on your ASO (app store optimization.) Adapting your metadata can help your app to appear more often in search results and other discovery methods. It’s important that your keywords and taglines are highly relevant and adjacent to your competitors.


making an app
Step 10: Take Advantage of User Feedback

In the previous steps, we talked a lot about the importance of feedback loops in app development. Now that your app is up and running, you should start receiving some feedback. Accept criticism with positivity, and appreciate that someone is giving you ideas on how to improve. Take this time to show your users that you’re dedicated to maintaining and growing your app by consistently releasing improvement updates and bug fixes. Combined with an effective marketing plan, genuinely caring about your users’ satisfaction will ultimately lead to the success of your app over others in the marketplace. 

At MassLight, we provide startup founders with unparalleled software engineering and technical expertise in exchange for equity. Find out more about our innovative build-for-equity program, and how MassLight can help you take your app all the way from idea formation to the marketplace.  Contact us to tell us about your business idea!

About Us

Started in 2000 in Washington DC, Masslight has served the DMV for 18+ years. We serve enterprises and startups with full-stack development and long-term project management services.

Contact Us

masslight logo
©2019 MassLight Inc.
Website by Oneness Co-Creative