In the ye olde days of the early 2000s, you were tech savvy if you had a website for your business. Fast forward to 2017 — if you operate any kind of business at all, a website is a must-have (and possibly even an app).
While you may think that finding someone to build your website is the most expensive part of launching your product, there are a host of other costs involved in making the website a reality in the first place.
Like our previous post on how much an app costs, we're going to help break down the ongoing costs of maintaining a website. To help us with this, we’re going to bring back SafePark, our made-up app from the post, How to Write a Product Requirements Document.
tl;dr: SafePark is a freemium app that helps users find public and street parking close to them by pulling information from Google Maps, city parking, and other users.
Using SafePark, we’re going to walk you through the ongoing expenses of maintaining a website. The biggest components of your website will be your domain name and your hosting service, mainly because you need these two for your website to function.
We’ll also look at periphery costs, such as API licensing costs, code repositories, and payment processing to give you a more concrete idea of what to consider as part of the cost of having a website.
Note: The information below is meant to illustrate, using concrete numbers, the various costs of maintaining a website. Your actual website costs will vary depending on your website's functions and hardware needs. The information below is an example, not a guideline or an end-all-be-all of website costs
One of the most expensive components of hosting a website and app can be the cost of the server. If your website doesn’t require a ton of disk space, services like WordPress, GoDaddy, and HostGator can provide hosting for a rate of free to twenty dollars a month, depending on your storage needs.
While it would be significantly cheaper to use a hosting service like GoDaddy, SafePark is both a mobile app and a website. Mobile apps often require more advanced infrastructure to support them and more disk space, depending on the features they provide.
Because SafePark makes multiple API calls to fulfill user requests, it requires a fair amount of storage, memory, and speed, in addition to a database and load balancer. For the purposes of this comparison, we’ve limited SafePark’s reach to New York, San Francisco, and Los Angeles to simplify our hardware requirement estimates.
In order to choose a hosting server, we need to figure out what kind of hardware we need. For that, we need to estimate how many people could be using SafePark at a given time to determine how much space we require.
If we had 10,000 users from each of these three cities, for both the SafePark app and website, roughly using the app four times a day on average, we would have 1,200,000 API requests daily. If we had 240,000 requests per hour, that equals roughly 33 requests per second.
To handle the amount of requests from users and to pull information from APIs, SafePark requires at least four servers, two caches, one database, and one load balancer to keep the app and website stable for users.
With the above requirements in mind, we looked at these six hosting services and priced them according to roughly equivalently sized hardware requirements across the board.
In terms of hosting services, Amazon Web Services, Google Cloud Platform, and Microsoft Azure are the frontrunners. That being said, in terms of pricing, Heroku is a little different from these three because Heroku offers Platform as a Service rather than Infrastructure as a Service.
What this means is that Heroku allows you to deploy your application without worrying about infrastructural hardware, like load balancers, servers, etc. — you can push your code and have it go live. Convenience, of course, makes it more expensive. So, depending on your needs and know-how, your hosting costs may vary quite significantly.
Domain names are the least expensive part of building and maintaining a website. That being said, getting a particular domain name can be challenging. Sometimes you might have to settle for altering your ideal domain name or pay premium prices for a .com, .me, .io, or an alternate ending if the name you want has already been taken.
In our case, safepark.com as a domain name was unavailable, so we had to use safeparkspace instead.
However, the good news is that there are many different combinations for domain names depending on your budget.
Also, websites sometimes have sales for the first year or first few years for particular extensions. safeparkspaces.me is only $1.99 per year on 1 on 1, for example.
For this post, we surveyed six domain name providers and priced the more commonly used extensions of .com and .org, and added a .me for those looking for a unique extension.
SafePark will primarily pull from two APIs: Google Maps and Streetline API.
Streetline is a company that has been working with cities around the United States to provide parking API information. They’ve worked with cities such as New York, Los Angeles, Reno, and Indianapolis to provide parking information to users. Those interested in developing parking-related apps can contact Streetline for an API key.
The other API that SafePark will pull from is Google Maps. Google Maps will allow SafePark users to find a parking spot close to them, with street map view for convenience.
While Google does offers premium plans, based on credits, SafePark is able to operate using Google’s standard plan, which offers unlimited requests to iOS and Android systems, meaning that SafePark can serve its mobile app customers at no cost.
However, SafePark’s web customers may cost SafePark money every month, depending on how many of them use Google Map’s web API to find a parking spot before they leave home.
Under Google’s standard plan, SafePark would be able to pull 25,000 map loads daily from the web API for free. However, if there are more than 25,000 map loads, SafePark would be charged at $0.50/1000 loads, capped at 100,000 loads.
The same $0.50/1000 loads overage charge is used for API requests, such as geolocation, directions, and distance matrices, but the free usage cap is set significantly lower, at 2,500 requests. Anything over 2,500 requests would be charged by the overage, per day, as shown below.
That being said, it is highly unlikely that there will be 40,000 pulls on geolocation, directions, distance, and street images on SafePark’s website daily. In fact, most users will probably stick to the mobile version.
However, to make it easier to visualize the possible costs, we broke down the monthly and annual costs of Google’s API for SafePark based on best use case, normal use case, and worst use casescenarios, listed below.
Note: This section was primarily focused on what types of APIs SafePark needs to operate. Unless you’re in the parking app development business, you’ll have to do some homework and research which APIs you might need for your enterprise. You might want to see which APIs your competitors are using as a starting point for API ideas — or as a springboard to see if you can improve on their services with your own product.
You might ask, “Why do I need to pay for a code repository?” Well, the good news is that there are plenty of free repository options out there, so unless you’re storing a lot of code, chances are you don’t have to pay for a code repository (repo).
The question then becomes: why do you need a repo, or, why should you have a repo. The answer is, in case you need to back up, scale up, or roll back changes, a repository is a great safety net. With a repo, you can set up a history, set up a continuous build, onboard new team members, and deploy fixes.
Often, if you have a small team, you can get code repo services for a limited numbers of users or amount of space for free.
SafePark, for example, has 10 employees, five of whom are developers. For SafePark, three code repositories can provide it with free services while other services cost less than $500 a year for peace of mind.
The main difference among code repositories are the version control systems they support and the auxiliary services they provide, in addition to keeping a record of your code changes.
GitHub, for example, only hosts projects that use the Git version control system (VCS) while Bitbucket supports Mercurial VCS. GitHub integrates with JIRA, Crucible, Jenkins, and Bamboo while Bitbucket integrates with Asana, Zendesk, AWS, Microsoft Azure, Google Cloud, and Heroku.
Before choosing a repo, take a minute to consider what version control system you want to use, what features you need, and how many users will be contributing to your code repository.
Although SafePark is freemium app, it also has a website version for those who enjoy planning their outings at home, on a larger screen. Users can upgrade to premium from either the mobile app or the website’s payment portal.
If the premium version of SafePark is $5.00, and 15,000 of the 30,000 users in New York, San Francisco, and Los Angeles upgrade, SafePark would be able to recoup its App Store fee and make $52,401. With Android, SafePark would make $52,475.
When users upgrade to premium on the website, using Stripe or Braintree, if the same 15,000 users all paid $5.00 for the app, SafePark rakes in $68,325.
As you can see, building and maintaining a website means incurring a lot of recurring costs, from $2,500 to $30,000, depending on your hardware combination and the number of incidental charges you rack up along the way. While hiring a great developer is important, remember that it won’t be your most expensive ongoing cost.
Now that you’ve written your PRD and are getting ready to hire a developer, hopefully this post has given you an idea of just how much you’ll need in your war chest to keep your company afloat.
That being said, keep in mind that you have a lot of choices. Because there are so many combinations available in terms of hardware and services, you want to find the options that best suits you and your needs.
If you’re a non-technical founder, don’t be afraid to ask your technical advisor or potential freelance developer candidate for advice as to what tech stack or hardware will work the best for you. While this may seem quite daunting, with a little research and good advice, you too can be off to a good start.