Everything you need to know about building mobile apps

Learn what a mobile app can do for your business, how to build a great mobile app, and much more. Enter your email below for our free ebook.

3 Ways To Build An App Compared

Since you’re here, I’m assuming that you want to build a mobile app for your site. While we could pretend that using AppPresser is the only way to get this done, that’s not the truth. There are other options that have different costs and benefits to those that AppPresser provides.

There are three approaches you can take to get your app launched. You can hire an agency or freelancer to build you a custom app. You can build yourself a custom app. Finally you can use an app builder like AppPresser to build your app. Let’s look at the pros and cons of each.

1. Hire an Agency

If you have the money to pay an agency, this is the easiest approach. You can get exactly what you want, and you don’t have to worry about the technical stuff.

Pros to Hiring an Agency

The biggest advantage to hiring an agency is that you don’t need to learn anything about code or app building. You can talk with the agency you hire about your vision and they’ll build you the app you’re looking for.

By cutting out your learning time, you can get you app launched faster. This experienced agency, is just that…experienced. They’ve built apps for other customers and should already know how to solve many of the common problems that will come up during the app development process.

Good agencies can build you great applications in a fraction of the time it would take you to get the same level of experience needed to ship a high quality app.

Cons to Hiring and Agency

One of the big drawbacks to hiring and agency is the expense of building your apps. They can cost from $10k on the low end to $100k+ on the high end. Expect this type of expense for each platform your building on as well. That’s $10k for the iOS app and $10k for the custom Android app.

By going with an agency, you’ll also need to go back to them when it comes time to update your app or if any bugs are found. Unless your app is very simple expect a monthly retainer agreement to keep your app current and bug free.

The final draw back to hiring an agency, is that it can be hard to change if the relationship isn’t working or the agency doesn’t have time to take on your app updates. The new agency will have their own way of doing things and will have to learn your codebase before they can get working on the updates and fixes that are needed. This same drawback applies to deciding to move the app into a DIY setup where you continue the development of your company’s app.

If you’ve got a large budget, then looking at an agency is a solid way to get your app out the door with the least amount of hassle in the shortest timeframe.

Posts in This Series

2. Code it Yourself

This is how I started making apps. It’s great for a lot of reasons, but it also has a lot of pitfalls you need to watch out for.

When I started, I picked this approach because I didn’t want to use an app builder (because I thought it was “cheating” or not flexible enough), and I thought it would be fun. While it is fun, there are issues with choosing to go this way for your app.

Benefits to Building Your App Yourself from Scratch

First, if you’re building your own app the only limitation is your time and skill. You can spend the hours needed to get the app functioning exactly as you want it to function. You can tweak it to your heart’s content based on how you want it to work.

Learning to build apps yourself also gives you valuable skills. You will be learning new programming languages and new API’s. Both of these things can increase your value if you’re working for yourself, or working inside a company.

Finally, if you’re the one building the app you don’t have to wait for a third party like an agency, to fix any issues that come up. You are empowered to make the changes as soon as they’re needed.

Cons to Building Your Own App from Scratch

The primary benefit to learning to build your own apps, is the primary drawback. If your skill is not up to the challenge of what you want to do, then expect to spend a lot of time learning how to get your app working. I remember when I started building apps it might take me a few hours to even understand enough to ask the right question so I could start to find the proper answers and continue to make progress on the app.

This learning curve makes it the most time consuming approach, and if you factor in the cost of your time it can be the most expensive approach you can use to build an app for a mobile device. Any learning challenges you have may also be multiplied across the iOS and Android platforms. Just because you can do something on iOS, doesn’t mean it works the same way on Android.

The biggest reasons to use this approach is to be in full control. You can learn how to make apps and leverage that into future projects. But you need to ask yourself, is it worth the learning cost? Is your business building apps for other people?

Apps are complex. Much more complex than websites. The content is API driven, you are using native device features, frameworks like Cordova or React Native, app store signing keys, push notification SSL certs, etc. It’s a long list of stuff you’ve never done before.

Each one of these things has a learning curve, and the number of things that can go wrong is staggering. Not only that, but each feature you build is like re-inventing the wheel.

If you’re a developer, it’s easy to think: I can connect to any API, that’s simple. I can build a login, or file upload, or whatever. Yes, you can. So can I, and I can tell you, that’s the easy part.

It’s not that hard to build a feature like a login, but every good developer knows that the hard part comes after you build the feature. It’s the weird bugs that pop up because of a CORS error, or a server permission issue that is hard to track down. Multiply that by every feature you build and will have to fix while building the app. Then they pop up again later after the app is in the app store and real users get their hands on your beautiful creation.

Even if you manage to get the app built, what happens if your app is rejected? If push notifications stop working. Do you know how do you fix it? What will you do when Apple releases a new version of iOS that breaks your app, add more time for fixes and re-release. What about that bug that only affects 10% of your users and they all leave 1-star reviews?

I’m not trying to scare you, I’m just pointing out that this stuff is not easy. Your team can do it, you guys are skilled. But when you do the calculations, you need to remember that everything won’t be smooth sailing so account for the rough patches. Then add 10% more, because you know those rough patches are always rougher than you can guess.

The AppPresser team has already dealt with these issues a dozen times, and we already wrote fixes in our framework. This fact is something to consider as you look at getting your app launched.

3. Use an App Builder (like AppPresser)

AppPresser in action

App builders allow you to build your own app very affordably.

Our app code has been production-tested and refined because of all the clients we have using the same platform. It’s going to take a number of projects to build that experience in house.

It’s more refined because the app builder specializes in a certain type of app, and they have lots of people using it and reporting back what works and what doesn’t. Their job is to refine the code as much as possible, and they have lots of test cases, whereas a lone app is only tested once, by your team.

Pros to Using an App Builder

While there is some learning to do with an app builder, it already has hundreds of battle tested hours put into it. It’s already been used with many projects and as bugs were found, they’ve been fixed. When users had issues building parts of their app, documentation was generated to help the next person building an app.

Because you don’t have to spend hundreds of hours learning all about programming and integrations, AppPress is very affordable in terms of your time and money. You’re not going to spend 50 hours trying to figure out how to get your push notifications working. If you run into a problem with it, we have a support team to turn to who has dealt with and solve issues for other clients before.

Using an app builder is going to be one of the fastest ways to get your app into the app store’s. If you’re looking for an eCommerce store, we already have integrations for WooCommerce and for communities we have AppCommunity. By using AppPresser, you’ll get the benefits of the updates we make for both of these integrations.

Cons to Using an App Builder

The biggest drawback to using an app builder is that you can’t get into every nook and cranny to customize everything possible. At times, you’re going to have to stick with the way we’ve build things for our users. There will always be edge cases where the standard way AppPresser performs a function, is not the best way for a specific customer.

The other drawback is that you’re dependent on the creators of the app builder to keep updating their tool so that you can get more features. At AppPresser we have a strong track record of continuing to push our platform, and we provide regular updates so that you know what’s happening because nobody likes being left in the dark. You need to make sure that the app builder platform you go with is on a continual development cycle or your app will quickly look out of date and functions will stop working correctly for your users.

An app builder is certainly not for everyone. If you have a highly custom app you need to build, like the a pizza delivery app that tracks the deliveries in real time, you’ll need to use one of the other methods we’ve talked about.

However, if your app fits into a category that has already been done many times before, it’s a waste of time and money to reinvent the wheel.

It’s a trade-off, because you can’t do anything you want. If you code it yourself, every single thing can be moved around as you wish. With an app builder, you can change the colors and move some pages around, but the features are pretty much set.

What you get for this trade-off is a great app for very little money and time. If you think of this as your “version 1” and something you can build on later, an app builder a great place to start. Because it takes less time you can spend time on the other crucial aspects of your business, like marketing the app to your users.

If you’ve got time and interest, then learning to code the app yourself lets you have full control. You do end up spending lots of time learning, and many business owners find it’s hard to run the other aspects of their business while they’re trying to learn how to build a great app. You still have to worry about marketing the app, and generating the content for your site, while you’re learning to build a great app.

For those with a large budget and a huge vision for a custom app, hiring and agency is a great option. You get to give them the vision and they build an app for you. You get to focus only on the marketing and other aspects of your business.

No matter which option you choose to start with, make sure that you understand the trade-offs before you invest in building your app.

Leave a Comment

Scott Bolinger