Skip to main content

You don’t need cloud

A recent survey by Flexera found that businesses waste an estimated 30% of their cloud spend on unused or unnecessary services. For small businesses with tight margins, this isn't just inefficient—it's potentially devastating. While tech giants promote cloud solutions as essential for every modern business, the reality for most small operations is quite different.

Cloud is flexible, not cheap.

Although you can build cost-effective solutions on a cloud platform, you have to be purposeful about this and design your solution specifically for it.

The cost predictability problem

One of the most frustrating aspects of cloud services is their variable pricing models. While providers advertise low entry prices, costs can quickly spiral as your usage increases:

  • Pay-per-use pricing makes monthly bills unpredictable
  • Resource provisioning often requires overestimation to prevent outages
  • Hidden costs for data transfer, API calls, and storage can shock you at month's end

With traditional hosting or on-premises solutions, you generally pay a fixed monthly or annual fee. Your hardware costs are upfront and depreciate over time rather than being a perpetual expense. This predictability is invaluable for small business budgeting.

John O'Hara explains in one of his talks that the cloud pushes you to a consumption-based model. Although this is good news (at least for your cloud bill) when you have few or no customers, it can become problematic when your costs are directly related to your cloud consumption.

What many small businesses also fail to factor in is the specialized talent required to properly manage cloud infrastructure:

  • Cloud architects command salaries 20-30% higher than traditional IT staff
  • Training existing staff requires significant time and financial investment
  • Cloud certification programs cost thousands of dollars per employee
  • Cloud environments require constant monitoring and optimization to control costs

Ask yourself:

Are your profits going to your company or your cloud provider and the specialized staff needed to manage it?

The scale mismatch

Cloud platforms like AWS, Azure, and Google Cloud are designed for massive scalability. They're built to handle millions of users, petabytes of data, and traffic spikes that would crash most traditional servers. But let's be honest about your business needs:

  • Most small businesses serve local or niche markets with predictable user bases
  • Your customer data likely measures in gigabytes, not terabytes or petabytes
  • Your traffic patterns are relatively consistent and foreseeable

When cloud providers tout their ability to "scale infinitely," ask yourself: do I really need to scale infinitely? If your business serves a few hundred or even a few thousand customers, traditional hosting or on-premises solutions can handle that load without breaking a sweat.

Gregor Hophe describes this in the 'first law of enterprise IT':

No, you're not Google, Meta, or Temu.

The complexity burden

Cloud platforms offer hundreds of services and configurations. For tech giants with dedicated DevOps teams, this flexibility is powerful. For a small business owner or solo IT person, it's overwhelming:

  • Configuration requires specialized knowledge and training
  • Proper security setup is complex and mistakes can be costly
  • Ongoing maintenance demands constant attention and updates

Simpler solutions like traditional hosting packages or local servers with standard configurations require far less technical expertise to manage effectively.

The right tool for the right job

Before making cloud decisions, consider these key questions:

  1. Predictability vs. Efficiency: Is cost predictability more important than potential cost efficiency?
  2. Growth Pattern: Is your business steadily growing or subject to unpredictable spikes?
  3. Technical Resources: Do you have cloud expertise in-house, or would you need to hire or train?
  4. Data Volume: How much data do you actually process and store?
  5. Compliance Requirements: Do you have specific regulatory requirements that affect hosting decisions?

Not everything has to be all-or-nothing. Consider these hybrid approaches:

  • Email and Basic Productivity: Cloud-based Microsoft 365 or Google Workspace
  • Critical Backups: Cloud storage for disaster recovery
  • Core Business Applications: On-premises servers or traditional hosting
  • Customer Data: Local storage with strong security measures

This balanced approach gives you predictable costs for your main operations while leveraging cloud flexibility only where it makes financial sense.

So no cloud then?

I'm not anti-cloud; in fact, quite the contrary. But design for the scale you need and ask yourself what's more important for your business: cost predictability or cost efficiency? As every architect knows, there is no right or wrong answer; everything is a tradeoff.

Conclusion

While cloud services certainly have their place, they're not the universal solution that cloud vendors would have you believe. For many small businesses, the predictable costs and appropriate scale of traditional IT solutions can be a more sensible choice.

Before jumping on the cloud bandwagon, carefully assess your actual needs, technical capabilities, and budget constraints. You might find that keeping your feet on solid ground makes more business sense than having your head in the clouds.

 

More information

Uncomplex: Modern Hardware for Better Software – InfoQ

Architecture is a game of constraint satisfaction. - The Architect Elevator

Cloud computing Stats: Flexera 2023 State of the Cloud Report

Popular posts from this blog

Kubernetes–Limit your environmental impact

Reducing the carbon footprint and CO2 emission of our (cloud) workloads, is a responsibility of all of us. If you are running a Kubernetes cluster, have a look at Kube-Green . kube-green is a simple Kubernetes operator that automatically shuts down (some of) your pods when you don't need them. A single pod produces about 11 Kg CO2eq per year( here the calculation). Reason enough to give it a try! Installing kube-green in your cluster The easiest way to install the operator in your cluster is through kubectl. We first need to install a cert-manager: kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.14.5/cert-manager.yaml Remark: Wait a minute before you continue as it can take some time before the cert-manager is up & running inside your cluster. Now we can install the kube-green operator: kubectl apply -f https://github.com/kube-green/kube-green/releases/latest/download/kube-green.yaml Now in the namespace where we want t...

Azure DevOps/ GitHub emoji

I’m really bad at remembering emoji’s. So here is cheat sheet with all emoji’s that can be used in tools that support the github emoji markdown markup: All credits go to rcaviers who created this list.

DevToys–A swiss army knife for developers

As a developer there are a lot of small tasks you need to do as part of your coding, debugging and testing activities.  DevToys is an offline windows app that tries to help you with these tasks. Instead of using different websites you get a fully offline experience offering help for a large list of tasks. Many tools are available. Here is the current list: Converters JSON <> YAML Timestamp Number Base Cron Parser Encoders / Decoders HTML URL Base64 Text & Image GZip JWT Decoder Formatters JSON SQL XML Generators Hash (MD5, SHA1, SHA256, SHA512) UUID 1 and 4 Lorem Ipsum Checksum Text Escape / Unescape Inspector & Case Converter Regex Tester Text Comparer XML Validator Markdown Preview Graphic Col...