How to choose the right SaaS architecture for your startup?
Having worked as a solution architect and designed multiple SaaS applications over the years, I could see most startups struggling to choose the right SaaS architecture for their product offering. In this article, I’ve compiled all my learnings into a cheat sheet to help startup founders, who’re looking to build SaaS applications, make a pragmatic decision backed by proven facts and data.
How does SaaS Architecture Impact Pricing and Profitability?
Customers are increasingly choosing the ‘pay as you go’ pricing model, as this model offers flexibility as compared to a one-time pricing model. In order to enable ‘pay as you go’ for your customers, you need the right architecture to support it. When we say a right architecture, it should allow your startup to track usage of services and offer customers the flexibility of managing infrastructure as per their requirements.
A poorly designed architecture creates limitations in setting the right pricing strategy for the offerings, thereby impacting the acquisition of new customers. On the other hand, a good architecture not only helps in setting the right pricing model but also accommodating special architecture-design requirements, such as scalability and customisability. For having a clear idea of pricing model before setting up SaaS architecture, a startup needs to get answers to these questions-
- How would your customers pay?
- For what services (computation and values) would the customers pay?
- How will the usage be measured and invoices be created for the customers?
In a SaaS setup, costs incurred in managing operations impact the profitability to a large extent. The optimisation of operational expenses involved in managing SaaS model depends on three crucial factors - infrastructure cost, IT administration cost, and licensing cost.
However, the bigger question is- how do you ensure that these costs are well-optimised and priced correctly? I’ve listed below a few examples to demonstrate the same-
Salesforce Online- Salesforce provides lead management system for sales and marketing team for enterprises. The online version uses cloud (so none of their customers needs to worry about hardware and IT procurement) and charges customers based on size of sales and marketing teams (so that they don’t have to pay one-time high license cost).
Sql Azure- Sql server is the industry leader when it comes to RDBMS, and provides a hosted solution wherein customer needs to pay high license cost, hire a DBA for regulating backup, geogrphical replication, and disaster recovery (important for databases). But, azure sql is a cloud-based system that’s accessible online where you only pay for storage and IOPS, with rest taken care of by azure (cloud provider).
WordPress – Every enterprise needs a content management system, and WordPress has been on the forefront of this. WordPress provides an online platform with white-labled solution, customisation, and multiple integrations for their customers. WordPress collects customer usage data and charges on the basis of it.
Why is it Important to Pick the Right SaaS Type?
This might a common question popping up in your mind. Let me explain with two different examples-
Example 1- Let’s consider an instance where a startup introduces isolated application VMs (Virtual Machines) for all its customers. In majority of cases, these boxes will remain under-utilised. With customers paying only for utilisation, the startup could end up with huge losses.
Example 2- Consider a second instance where all customers of the startup share the database servers & application servers and paying only for utilisation. This is a fair game for the startup as all of the hardware and automation are being properly utilised. However, in case of a sudden increase in utilisation of these servers by one of the customers, other customers might have face performance issues and unexpected breakdowns.
When a startup starts building a SaaS application, it essentially bears the hardware and automation costs. Hence, it’s crucial to ensure that all of the above-mentioned costs are well optimised by picking the right SaaS architecture based on your offerings. Damage control is still possible in the above-mentioned examples but you will definitely lose a big share of time and opportunities.
What are Different Architecture Types of SaaS Applications?
Type 4 (Doesn’t require data & runtime isolation)
This is the most basic type of SaaS application. In this type, you assume all of your customers to grow uniformly, and accordingly customer ID is created. These customer ID’s are added to all of the tables/collection and all customers share the database and application hardware.
Type 3 (Requires data isolation but no runtime isolation)
This is one-step advanced as compared to the type 4. In this type, different data stores are put in place for different customers, however, the application is shared by all the customers.
Type 2 (Requires data & runtime isolation on cloud)
This type involves separate applications and separate data stores for all customers. In this case, the cost of isolation is typically passed on to the customers.
Type 1 (Requires data & runtime isolation, but not on cloud)
This type is a version of the type 2 wherein customer wants data to be stored on their own network and not on the cloud. Herein, the customer still opts for ‘pay as you go’ or a pricing model that’s based on users/features as per on-boarding.
How to Pick the Right SaaS Type for your Startup?
Depending on the type of industry and nature of data, a customer’s requirement for security and shareability varies. A startup can try to understand the needs of multiple customers, and refer to the flowchart given below to select the right SaaS architecture type-
On a Final Note
As the startup grows, it isn’t easy to mould the existing architecture to accomodate demands from the growing user base. Hence, it’s always good to choose the right SaaS architecture at the start, so that you don’t lose out on business because of rigid architecture.