Often (too often), I am approached by people who think I make apps and want me to give them a price to make theirs. Most people outside the technology industry figure that these are fairly trivial efforts, but that couldn’t be further from the truth. They’re right, sort of. I’ve designed and helped make quite a few apps over the years, since before people actually called them apps. And while I don’t code much anymore myself, I’ve managed businesses and teams that created apps and services which have cost everywhere from hundreds of thousands to millions of dollars to create. I’ve also seen simple apps get built in a few months’ time. But even so, there is no such thing as a cheap and basic app. I feel a sense of déjà vu. I fielded these same types of inquiries constantly when I was starting out as a website builder in 1993. In those days, websites were pretty rudimentary and primitive, and the tools used to create them and the capabilities they enabled were not tremendously complex. One person (namely me) had the capacity to do the design, the art direction, the server-side code, and the web user interface–often to the neglect of bookkeeping, in my case.
Nowadays that’s really no longer possible. I still snicker when sitting in meetings where we talk about moving a few pixels around on a screen or changing the shading of a button (the kind of thing I’d do myself between sips of Jolt Cola in the 1990s), but it takes a substantial team to create a credible web service that offers a meaningful experience to end customers. There is some respite from this, though: If you’re just looking to sell stuff there are hosted services like Shopify, and if you’re just looking to publish stuff, there are open-source software web frameworks like WordPress that can make this pretty easy to customize on the cheap.
But for making apps? Not so much. People assume, without really thinking through the problem at hand, that apps are easier to create than a full-blown website. In reality, they are ever so much harder. First of all, you have the problem that there are multiple platforms (iOS, Android being the primary ones) for creating an app. Want to serve everyone? You’ll need to support more than one platform. Want to choose just one? Remember that there are a lot fewer iOS (iPhone, iPad) users than there are Android (Samsung, LG, HTC, and more) users. However, in a strange quirk of fate more iOS users actively seek out and use apps.
And sure, more sophisticated developers will tell you that there are open-source and commercial frameworks that promise to allow you to write a single codebase and support multiple mobile phone platforms. Depending on the complexity of what you’re looking to do, that may or may not solve or exacerbate your problem. But the more important, dynamic people often fail to understand is that apps are just a beachhead. The overwhelming majority of apps you see in the App and Play stores communicate with a server somewhere on the Internet in order to store, retrieve, and compare information—particularly apps that have social features or which operate some sort of service. So really, the app is just the tip of the iceberg. You’ll have to think about what sort of functions the server element of your solution needs to perform. Data stored on one app cannot be shared on another user’s app without transiting your server, remember. So, broadly speaking, most apps are really just a user interface slapped on to a series of tasks performed by an internet server floating out there somewhere in the cloud.
Most developers tend to specialize. If you’re creating an app for iOS, generally that coder will have specialized skills for that development environment (xCode or Swift). If you’re building the Android version of your app, there are coders who work in Java or other frameworks created for that platform. Neither of these developers will probably want to tackle the server-side element of your service… which requires yet another set of skills and programming tools.
Furthermore, apps are not typically fire-and-forget. Once your team finishes coding and testing, and you release your app, you are now obligated to maintain it. Shifts in the frameworks, operating systems and the screen resolutions of the devices themselves means you now have to keep on top of these changes and adjust your app to accommodate these. So building and running an app is a protracted ground war which is powered exclusively by your money.
The core message, then, is that this app thing usually isn’t so simple as it might seem. There are many forks in the road and pitfalls that can either cost or save you a mountain of money initially, or down the road. If you bump into me on a street corner and share your big idea, I’m not going to be able to quote you a price and a timeline on the spot. It is just not that easy. Anyone who convinces you that you can simply knock out an app for your business from their basement, in their spare time, is most likely focused on parting you from your money.
Ian Bell has been bending bits into business since 1993 and is creator of Tingle, RosterBot and other things celebrated and ignominious. Follow him @ianb on Twitter. This article originally appeared in 2016 for Profit Magazine.