How much does Cloud Hosting Cost?
One of the most common questions we get asked here at Wirehive, is how much does cloud hosting cost?
Sadly as you might expect, there isn’t a simple answer to that question. A company like Wirehive that offers bespoke cloud solutions tends not to have set pricing. What you pay depends entirely on what you need your cloud infrastructure to do for you, as well as a mass of other factors.
However what we can do, is look at some of the things that may increase, or decrease the price, in order to give you more of an idea of what you might be looking at paying.
Before we start, it’s worth clarifying the sort of thing we are talking about when we say Cloud Hosting. If you are looking to get a simple website online and simply want a static server for it to sit on then this probably isn’t for you. But if you have a website that needs to do interesting things, like deal with spikes in traffic without slowing down, or even vanishing completely. If you want to integrate innovative services like image recognition, chat functions, or other artificial intelligence based services. If you want a site to be replicated in different regions for a global audience, or if you simply want to ensure that should a server fail your site doesn’t vanish, then this is indeed exactly what you should be looking at.
The Alternative to Cloud Hosting
Cloud hosting can seem to be quite expensive at face value, so before we go on to look at why that isn’t truly the case we’re going to need some context.
We’re going to start by looking at what it would cost if you wanted to do this the traditional way.
Assuming you want your own dedicated server, owned by your company, sitting in a datacentre, maintained by you then we need to look at both capital and operating expenses for that.
Once you have bought the machine itself, paid for the space in a rack, and the bandwidth for 12 months you are probably looking at something in the region of £6000 - £8000. Add to this the fact that you will need to also factor in the salary of someone to set this up, maintain it, and fix it when it breaks. So it’s safe to say that it could easily start to look closer to £35,000 for a year.
Obviously, as we mentioned earlier, if all you want is pages on a website to appear when someone types in your URL then this is a ridiculously expensive way to do that. You are much better off finding a traditional, old-fashioned hosting company and paying them to put your site on a shared server.
But, and isn’t there always a but, that is not cloud hosting.
To discuss that we are going to work on the assumption that you are looking at having a cloud infrastructure on one of the big three. Amazon Web Services, Microsoft Azure, or Google Cloud Platform. And that you are going to look to utilize some of the added value that these services provide over and above simply getting a website online.
Is Cloud Hosting right for your Business
The first thing you need to decide is which of them is going to be the best fit for your business. It used to be a truism in business when discussing hardware, that no-one ever got fired for buying IBM. They were the market leader, and their products were considered to be the benchmark. In terms of cloud that is now the way AWS is considered.
However that doesn’t necessarily mean that choosing to put your infrastructure on AWS is always going to be the best choice for your business. That’s probably a subject for a different time though. So we’ll assume that either you have done a good assessment yourself, or have hired someone like the Wirehive Cloud Consultancy team to help you work out which solution is the best fit for your business and we’ll move on.
As we are trying to answer the question how much does cloud hosting cost, it is worth mentioning that all three of the major cloud providers have various tiers for pricing based on how much service you consume. This starts with a free tier at the lowest level of consumption.
However that is only the start. The question you really need to answer is what do you want your cloud to do?
Reducing ongoing Cloud Hosting costs with autoscaling
Do you want your site to autoscale? By that I mean do you want to only pay for the services your site is using but still be able to grow and shrink according to demand.
That is perfectly possible. But it isn’t simple to achieve.
The site architecture needs to be created in a way that allows this to take place without causing issues for the end user. And rules need to be created to ensure autoscaling happens quickly and efficiently, both upwards and back down again.
In the simplest possible sense what this means is that your single instance (another name for a virtual machine) becomes two, or three, or four instances when it needs to, and drops back down to one when the extra capacity is no longer required.
As you might expect this makes the running costs of the hosting platform much cheaper. The traditional alternative is to calculate the maximum capacity you might have to cope with, and pay for a server that is able to cope with that demand whether you need it or not just in case you may need it at some point later.
Clearly that is not the best use of your money, but the downside of an efficient autoscaling system is that it is much more complicated to set up than a massive dedicated server.
An Autoscaling Example
In terms of Amazon Web Services you'd need to set up Route 53, a load balancer, an autoscaling Elastic Cloud Compute instance (EC2), a Relational Database Service (RDS), Simple Storage Service (S3), and CloudFront. And all that needs to be monitored by CloudWatch, which also needs setting up correctly. The base level cost of which can be estimated using the AWS simply monthly calculator found here - https://calculator.s3.amazonaws.com/index.html
Designing and implementing that architecture up correctly requires a one off cost. So to save money on your ongoing cloud service you need to spend money up front getting the architecture correct.
Architect more = spend less later.
Keeping your Cloud Hosting services online
Autoscaling may well be the most well known feature of cloud hosting, but it is far from the only one.
As companies do more and more of their business online, and more and more of their business systems are hosted on the cloud, disaster recovery becomes more and more important. A simple static site going down is bad enough, but a large and complex cloud environment vanishing can destroy a business.
Microsoft Azure can be architected in such a way that it is able to fail over from one of their “regions” to a different region should the need arise. For the record there are currently 42 regions across the globe for Microsoft Azure, with another 12 in development.
In effect, a primary region is chosen and all traffic is routed to the services hosted in that region. Should those services, or even that entire region become unavailable, then all traffic is instead routed to a secondary region.
There are three ways this can be set up.
The first is to set up one region as active, and a second as passive. Should the primary region fail, the design for the second is already set up, but the virtual machines are not yet in existence. They are created in response to the demand created when the first region fails.
This is obviously the cheapest solution, but does mean that there could be a significant delay while the second region comes on line. We all know the impact downtime can have on a business, and so if your business is ecommerce, or relies on cloud services to function this might not be the best solution.
The second way is to have an additional region not only set-up, but actually populated. Virtual machines have been created, but are not utilizing any capacity unless they need to.
Clearly this will mean a larger ongoing bill than the first option as background levels of consumption will be higher, but it reduces the risks associated with downtime. There isn’t going to be much difference in the amount of work to set this up when compared to the first option.
The last option is simply to have multiple regions running in parallel. Both regions are continuously active, and a load balancer splits traffic between them. If one region goes offline, then the other simply takes up the slack.
Truly personalised services for your customers
Both of our examples so far have looked at some of the amazing features of cloud, but in terms of how a site behaves. Let’s look at an option that focuses on how individual customers behave.
Let’s say you have a well established holiday booking website. You’ve probably already got Google analytics running on it to ensure you track visits to the site as accurately as possible, but there are many more things that Google Cloud Platform can help you with.
You may even have some form of recommendations built in to your site. Something like “People who booked this holiday also looked at this one” like Amazon.com does. But wouldn’t it be better if those recommendations could be based on the exact behavior of the customer instead of just general rules.
You’d create a scalable front end that records user interactions as pure data, and that data would permanently stored in such a way that it can then be accessed by one of Google’s machine learning platforms. To comply with the GDPR this data would have to be transformed in such a way that it cannot be traced back to a specific user, before being analysed and fed back into the web platform in the form of personalized recommendations.
This sounds far fetched, but combining App Engine, Cloud SQL, and Apache Spark using Cloud Dataproc offers exactly this service if set up correctly. You could be showing recommendations to a customer based on their browsing on your site, not just their booking history. You could even show them recommendations based on the viewing history of other people who fit their demographic. The possibilities are endless.
Clearly a set-up like this on GCP would increase the cost of your ongoing cloud hosting price, but it also has the potential to significantly improve your profits.
So how much does cloud hosting cost?
As seems to be a theme of this article you can see that the more services you need, or choose to implement the larger the price.
However there are two basic facts that can always be considered to be true.
Firstly billing for cloud is done on a consumption model, meaning that capital expenditure is not necessarily relevant. Owning the infrastructure to carry out these complex, innovative and reactive services would almost always work out more expensive over the lifetime of the estate.
Secondly it is possible to significantly reduce the size of the ongoing bills by investing in high quality, well designed architecture at the start of the migration.
So nearly 2000 words later I still haven’t managed to answer the question - how much does cloud hosting cost? But I hope I’ve helped you understand a little about why it is an impossible question to answer, and why it is that cloud services absolutely need to be designed specifically to meet the individual needs of your company.
If you’d like to talk about some of the ways we have saved businesses large amounts of money by moving their infrastructure to the cloud then please drop us a line. We’d genuinely love to hear from you.