What is vendor lock-in? We speak of Vendor Lock-in when you become dependent on a (software) supplier. This can be caused, among other things, by the use of proprietary frameworks or libraries, wrong choice of development language but also by limited ownership of IP.

KEY LEARNING POINTS

  • What is Vendor Lock-in
  • Consequences of Vendor Lock-in
  • How to prevent Vendor Lock-in

Vendor lock-in; suddenly you’re stuck

Your business is growing. You’ve made investments, such as getting software developed, and you have a product development that serves your customers. You are generating sales and you have come a long way. One Tuesday morning you receive an email from one of your key customers, it’s a request to introduce a new feature. It’s a logical request, the feature in question could be useful to a lot of other customers. You have a plan, and contact your software developer.

The latter indicates he will have time to start working on the feature in a month or two. That’s considerably later than you’d like. Then again, Rome wasn’t built in a day. You immediately ask for an hourly estimate and it is not exactly the best. But the feature is important for your product and you decide to invest.

It is now three months later. You have received a hefty invoice, the feature has not yet been implemented and by now you are starting to lose confidence. How will you tell your customer that introducing a seemingly simple feature is taking so long? Meanwhile, you have received more requests from other customers. This can’t go on like this, you have neither the time nor the budget to go through this process again. Let alone more often! While your developer continues to work on the first feature, you request a second opinion from a number of other software development companies.

Now you are really shocked, none of the software developers you approached is familiar with the development language in which the software is written, let alone with the use of the self-built libraries that are supposed to save time. They can’t help you develop new functionality. You are stuck. Or to put it another way, you are the victim of a classic case of Vendor Lock-in.

Factsheet: Vendor lock-in (Dutch)

  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden

5 tips to avoid vendor lock-in

  1. Development language and vendor lock-in

    The most common mistake that causes vendor lock-in is the wrong choice of development language. Always choose a language for which a large community of developers is available. Languages like Ruby on Rails, GO, Erlang and NodeJS are technically fantastic but developers are very scarce; you will notice this when you scale up, want to switch development partners or sell your company. For the development of enterprise applications, platforms and SaaS solutions, choose Java, Python or dotNet as development language and use open standards.

  2. Vendor lock-in and intellectual property

    In other words, who owns all the source code? Make sure your development partner does not use proprietary libraries or frameworks but chooses proven open source components with a large community and a free-to-use licence. In addition, all developed source code should become your property so that you can build on it with another developer in the future.

  3. Low-Code, No code, Custom Software and Open Source Software

    For some “internal” applications where user experience and performance are less important, low-code and no-code frameworks can offer a solution. But beware: here, too, you are bound by choice. Replacing or removing such a framework all too often results in the need for a complete rebuild. A smart selection of common open source software components combined with limited customisation to differentiate your application often gives better results and avoids vendor lock-in.

  4. Quality and vendor lock-in

    For you, the hardest thing to assess is the quality of the software developed. Has the right architecture been chosen? Is the code of good quality? What about documentation and test coverage? All this determines how quickly development can continue and whether new developers can start working with the application.

  5. Vendor lock-in contracten

    Make sure you can leave your software supplier at the time you want. A notice period of more than 2 months is out of date.

Nice touch: With the advice above, you not only prevent vendor lock-in but also lay the foundation for an application that is future-ready and that your company and its end users can enjoy for a long time to come. This will prevent IT issues and allow you to focus on growth.

The list of SaaS metrics seems endless and, what’s more, always getting longer. Whether you are trying to find out how well your business is doing, want to find new growth opportunities or are looking for other information, the right metrics can provide you with this answer. Mind you, we are indeed talking about the RIGHT metrics. Wasting your time with vanity metrics or unactionable insights is a waste. In this blog, you will find are the most valuable metrics for SaaS platforms.

KEY LEARNING POINTS

  • The key metrics in SaaS
  • Creating insight into business results
  • Being able to find new growth opportunities

 

 

ARR: Annual Run Rate

ARR or Annual Run Rate is your monthly recurring revenue (MRR) on an annual basis. It is a prediction of how much revenue your business will generate annually based on your current MRR. ARR assumes that nothing in your current business will change throughout the year. The metric does not take into account new connected customers or expansion revenue.

Do you calculate ARR simply by multiplying ARR by 12? Yes, it is that simple.

ARR is far from the most accurate way to predict how much revenue your business will generate this year, however, it is a helpful metric for predicting growth.

ARR is based on your current MRR, assuming nothing else changes for the rest of the year. However, something always changes. But when you combine your ARR with your average churn rate and MRR growth, you can start planning how things like new product lines, price changes and campaigns will affect your sales.

ARPU: Average Revenue Per User

ARPU is the average amount of revenue you earn monthly from each of your active customers. MRR / # active customers = ARPU

For example, if your monthly recurring revenue (MRR) is $100,000, and you have 1,000 active customers, your ARPU is $100 [$100,000 (MRR) / 1,000 (active customers)].

ARPU is calculated based on active customers, not the total number of users. A big mistake SaaS companies make when calculating their ARPU is dividing their MRR by the total number of users. ARPU is based on revenue. Since free users do not contribute to your revenue, they should be excluded from your calculation.

One of the most obvious reasons to track ARPU is because it directly correlates to your MRR. If you are able to increase your ARPU, you increase your MRR (assuming you connect customers/users).

ARPU also gives you insight into the long-term viability of your business and your ability to scale. For example, with an ARPU of $5, it becomes very difficult to scale because you depend on having a large number of customers. And the more customers you have, the more resources you have to devote to support and engineering. It can then be difficult to make your business profitable.

Churn

Churn is the percentage of customers or sales lost in a given period (usually monthly). Most SaaS entrepreneurs monitor two different types of churn.

Customer churn: percentage of customers lost

(# cancelled customers last 30 days / Active customers 30 days) * 100

Revenue churn: percentage of revenue lost

(MRR Lost to Downgrades & Cancellations last 30 days ÷ MRR 30 days) * 100

In most cases, when you hear a SaaS entrepreneur talk about churn they are talking about losing customers. But revenue is equally, if not more, important. In fact, with customer churn we only consider customers who cancel their account altogether. Churn on revenue gives a more realistic picture given we can take into account downgrades, for instance.

SaaS companies depend on long-term customers to grow. The longer your customers pay, the better. If you are not able to control your churn, it will eat away at your revenue to the point where your business becomes unsustainable. No matter how many new customers you can acquire every month, if you fail to retain them long-term, you are basically on a hamster wheel going nowhere.

It is important to actively analyse and reduce your churn. Even if you have a low churn rate (say 2% or less), you need to constantly look for ways to keep it as low as possible.

For most SaaS companies, a churn rate of 5-7% is considered “healthy”. Once you start hitting over 10% monthly churn on a regular basis, it is a sign that something is wrong and you really need to do a deep dive into what is going on with your business.

Whitepaper SaaS ontwikkeling (Dutch)

  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden

Net Dollar Retention

NDR is a metric, expressed as a percentage. It illustrates the (changed) revenue of current users that a company can retain compared to another period, taking into account downgrades, upgrades and churn.

(Starting MRR + expansion – downgrades – churn)/ Starting MRR *100 = NDR

NDR, or Net Dollar Retention, is not as well known as MRR, but it is a particularly valuable metric. Especially for SaaS entrepreneurs. But why is NDR so important? First of all, it is quite possible that your MRR is growing while you are actually losing money. This can happen, for example, when the revenue stream from new customers exceeds the net loss of revenue from your existing user base.

Suppose your company starts this month with €100,000 in MRR. It books €50,000 in new subscriptions, zero in expansion revenue, suffers €20,000 in downgrades and €5,000 in churn.

In this example, your MRR increases by a whopping 25%. And yes, you can open the Champagne for that. But your NDR comes out to only 75%. You lost 25% of your MRR from your current userbase. And what was your marketing budget? What did you spend to acquire these new users? NDR will be the most important metric for SaaS entrepreneurs is 2021.

"How well is your business doing? Where are opportunities for growth? Measurement=knowing also applies to SaaS."

MRR: Monthly Recurring Revenue

MRR is the amount of revenue you get from your customers every month. However, MRR is different from your company’s total revenue. For example, if you have a SaaS business and also sell additional one-off services, such as setup fees, consulting or other one-off payments, these should not be included in your MRR. As the name suggests, MRR only includes revenue from recurring payments/subscriptions.

MRR can be divided into two groups:

  • New MRR: Monthly Recurring Revenue from new customers.
  • Expansion MRR: Monthly Recurring Revenue from existing customers.

It’s probably no surprise, but you need MRR to keep your business running. If your MRR is increasing, it means more revenue is coming in every month. You are bringing in more revenue than you are losing, and hopefully you have healthy MRR growth.

But if you have long periods of declining MRR, you need to look into what is going on. Are customers churning faster or more than usual? Are you not bringing in as many new customers? Are you missing opportunities for expanding MRR?

The more you understand where your MRR is coming from and how it is evolving, the easier it is to create a strategy for growth.

Contraction MRR

Contraction MRR is MRR lost from existing customers. Lost revenue can come from customers downgrading their plan, reducing the number of users on their plan, not being able to pay, or anything else that reduces the amount of money an existing customer pays you monthly.

Contraction MRR does not include customers who have cancelled. It should only include lost revenue from customers who are still active.

In most cases, contraction is a value issue. People feel they are not getting enough value from their current subscription to justify the price (for whatever reason), so they reduce their value or make other discounts.

Expansion MRR

MRR is additional MRR that comes from existing customers. It can come from users who upgraded their account, bought an add-on product, added additional users to their account or anything else that increases the amount of money they pay you each month.

In some cases, you can build MRR’s add-on capabilities directly into your business model. For example, if you sell a B2B SaaS product aimed at teams, you can charge per seat. As your client’s team grows, they add additional users to their account, creating expansion MRR.

“Let us help you focus on growing your software. After an initial meeting, you will have a clear picture of the possibilities and an estimate of cost and lead time.”

Guido Sival
Business Development Director GlobalOrange

CAC: Customer Acquisition Cost

CAC is the amount of money you spend to acquire a new customer. To calculate CAC, divide all customer acquisition costs by the total number of customers acquired in a given period. This is the basic formula:

Total CAC cost / number of customers acquired.

Not all SaaS entrepreneurs calculate this total CAC cost the same. Some will include everything like advertising expenses, salaries and tools, and others prefer to just include advertising expenses. The former is a bit more complicated to do, and the latter is a bit less detailed.

CAC is important because it helps determine the profitability of your business. If you spend more to acquire customers than the revenue they generate, you are not making money. Even if your MRR increases every month, you won’t make a profit unless you can get more money from clients than it costs you to acquire them.

LTV: Lifetime Value

Customer lifetime value (LTV) is an estimate of how much revenue you will make from the average customer before they cancel.

Average monthly MRR per user / User Churn Rate

If your CAC is greater than your LTV, or you just want to increase your LTV, there are plenty of things you can do:

  • Adjust your pricing
  • Shorten your churn time
  • Optimise your CAC
  • Increase your expansion MRR

Quick Ratio

Compared to the other metrics on this list, quick ratio is a pretty traditional metric. But sometimes it is necessary just to check how things are going and how your growth trajectory is progressing. The Quick Ratio (also called the Acid-Test) is a number that indicates how efficiently your business is growing at its current sales and churn rate. Generally, the higher your Quick Ratio, the more efficiently you can grow your SaaS business.

(New MRR + Expansion MRR) / (Contraction MRR + Churned MRR) = Quick Ratio

The purpose of the Quick Ratio is to tell you how efficient and sustainable your growth is. Your Quick Ratio should not be the end result for your business, as there are many factors at play. But it can give you a good idea of where your business is going.

Lead Velocity Rate

The Lead Velocity Rate of a SaaS platform is the percentage of qualified leads the marketing department manages to bring in. In fact, the Lead Velocity Rate illustrates the development of your pipeline. LVR shows how many qualified leads you are converting to paying customers.

(# Qualified leads current month – # Qualified leads last month) / # Qualified leads last month X 100 = % Lead Velocity Rate

The Lead Velocity Rate (LVR) can be calculated by first subtracting the number of qualified leads last month from the number of qualified leads this month. Then divide by the number of qualified leads last month and multiply by 100 to convert it to a percentage.

What is a prototype?

As we wrote in previous blog posts, gathering feedback from users is perhaps the most important thing you can do to further shape your product. During the development of your product, you will need to validate hypotheses or assumptions. It is perhaps best to think of a prototype as an example, a taste of what your product could be like. However, it is not how a prototype grows into a mature product. Both products can be used to test a hypothesis.

What is an MVP again?

A comprehensive definition of a minimum viable product (MVP) can be found here. But in short, an MVP is the simplest version of your product that allows you to actually provide value to your user and satisfy and engage them. Building a simple but well-functioning version of your final product ensures that you can quickly go live and start doing business.

How does an MVP differ from a Prototype?

A prototype is about presentation towards stakeholders and testing processes and concepts. An MVP can do this too but is also a good technique to realise a product. It is a first iteration of your product should be good enough to solve a problem for your users. It should be ready to use and effective. Good enough to generate immediate sales from a smaller group of early adopters. Indeed, your MVP should be so good that this group of early adopters become ambassadors of your product.

Prototypes are never used in a product; an MVP, on the other hand, is…

Benefits of an MVP:

  • Launch product in the market as soon as possible
  • Generate sales immediately
  • Start collecting feedback immediately
  • Basis for possible other products
  • Effective use of development hours

Concrete differences between an MVP and a Prototype:

  1. An MVP is actual realisation of a first version of a product. A prototype tests the feasibility of a concept.
  2. A prototype serves for as a presentation to stakeholders, an MVP is developed to generate sales and learn a lot from early adopters.
  3. A prototype is a mock-up, often in the form of videos, a clickable or a presentation. An MVP is ready to be launched.
  4. A prototype demonstrates promised value, an MVP delivers tangible value.

Get our white paper MVP development (Ductch)

  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden

“Defining a good MVP is an art. I’d love to tell you more about it!”

Guido Sival
Business Development Director GlobalOrange
Prototype MVP
Goal Test the feasibility of a concept or proof of concept Maximum learning, gathering feedback and realisation first version product
Focus Presentation to stakeholders Fast development of valuable product
Features Features that may not make it into the final product Basic functionality to create maximum value
Developed for Small audience, testers and stakeholders Early adopters
Legacy Removed after testing First iteration product
Feedback sought on Product, concept or idea First version of working product (1)
Includes Mock-up, videos or presentation First version of working product (2)
Value Demonstrates promised value Delivers tangible value
Developed when Business case not proven / risks unknown Business case proven / risks acceptable
Testing Needs in market Solution provided
Turnover Needs in market Turnover of early adopters

Artificial intelligence, machine learning and deep learning. They are often mentioned in the same breath. Yet they are far from similar. What is the difference between these three technological developments?

The difference between artificial intelligence, machine learning and deep learning:

  • Artificial intelligence or AI is functional intelligence outside the human brain. We distinguish between strong and limited AI. The strong or broad variant focuses on developing software that can reason and solve problems independently.
  • Machine learning is concerned with developing software that improves its own performance. Machine learning leans heavily on statistical science.
  • Deep learning is a subset of machine learning, based on multilayer neural networks. There are numerous examples of deep learning where the technology effortlessly beats the human brain.
ai, machine learning en deep learning in een overzicht

Deep learning

Deep learning is also called structured or hierarchical learning. Deep learning is part of a wider variety of machine learning methods. This technology can take place in three ways:

  • Controlled: in this case, the algorithm is given an input and an example of an output. The algorithm learns based on the example.
  • Uncontrolled: in this case, the algorithm is not given an example of an output.
  • Semi-controlled: this variant is halfway between controlled and uncontrolled deep learning.

Deep learning is successfully used in areas such as image recognition (faceID or medical scan assessment), speech recognition (Alexa, Siri, et cetera) and translation (Google Translate). Merging various deep learning applications can create even more powerful applications. Examples include the self-driving car and real-time speech translation where you can talk to a Chinese person in Dutch and he or she effortlessly understands you.

Machine learning

Machine learning, or machine learning, is quite a broad field of research within artificial intelligence and software development. In software development, machine learning refers to the development of algorithms and companion software that allow computers to learn. This software gets better at its task the more often it performs it. The developing performance of machine learning software is expressed by the following formula.

T = Task
X = Number of exercises
P = Performance

T x X = P

Machine learning leans heavily on statistical (data) analysis and focuses on algorithmic complexity in programmes. Also, machine learning is strongly related to data mining, which involves an automated search for relationships or occurring patterns in a large amount of data.

deep learning model weet wat je tekent

Machine learning can be roughly divided into three categories:

Supervised machine learning
Supervised learning uses data labelled by humans. Supervised data is mainly used to predict events. Supervised learning is best chosen when the desired output of an algorithm is known. In supervised learning, an algorithm learns a series of inputs together with a series of inputs in combination with the corresponding (desired) outputs and the comparison with unwanted outputs. Based on the discrepancy between them, the model adapts.

An example of supervised learning is Apple’s Photos on iOS and Mac OS X. If the user tags a few friends in a number of photos, the software is able to recognise and independently tag these people in photos from now on.

Classification
A subcategory of supervised machine learning is classification. Classification is best defined as the attempts to predict an output when the input is known. To do this, the model needs a labelled example in the form of text, speech or an image.

Unsupervised machine learning
For data that is not labelled, unsupervised learning lends itself best. In this variant, the software attempts to discover new patterns in the data without knowing the type of data or labels in any form. This form of machine learning works well for clustering, for example, where data is organised based on similar characteristics.

Reinforcement machine learning
This way of machine learning is strongly based on a theory from psychology. Reinforcement behaviour is nothing but learning by trial and error. This is what a computer is eminently capable of doing. In the case of reinforcement learning, a computer investigates the ideal outcome by simulating it frequently. This form of machine learning is widely used in navigation applications or gaming.

Practical example of machine learning:

SimpledCard: machine learning saves time and prevents fraud

SimpledCard is an innovative fintech application that allows internationally accepted payment cards to be issued without the intervention of a bank. Receipts are linked directly to transactions via a mobile app.

For SimpledCard, we applied machine learning in the following areas:

Transaction monitoring
The application monitors all transactions and learns to recognise fraudulent transactions itself. This saves the time that was required to manually check transactions and receipts.

Voice recognition
Various actions in the app can be voice-controlled, such as an instruction to replenish the balance on the card by a certain amount.

Recognising receipts
The application itself recognises receipts and automatically fills in the necessary information for accountability, such as the description and amount.

“GlobalOrange has thought well with us and, by applying machine learning, simplified the application. Our end users now have to spend much less time checking.”

Steven van Rij
Head of product – SimpledCard

Artificial intelligence

When we talk about artificial intelligence or AI, we mean a created (and therefore artificial) phenomenon that exhibits intelligence to a greater or lesser extent.

Wikipedia (what else) defines intelligence as follows:
‘Intelligence is a general concept from psychology that describes a mental attribute with many different functions; such as the ability to notice similarities and differences in perceptions, orientate oneself in space, reason, make plans, fathom and solve problems, think in abstractions, understand and produce ideas and language, store information in memory and retrieve from it, learn from experiences.’ – Wikipedia

The fact that Wikipedia refers to a mental attribute implies that intelligence would be purely reserved for living beings. Artificial intelligence is therefore about an inanimate object, such as a computer, possessing the ability described above.

We distinguish two forms of AI: limited and strong artificial intelligence.

deep learning toegepast op robots

Limited artificial intelligence

Limited artificial intelligence is limited to small areas in which certain behaviour appears intelligent. It could therefore also be called specialised intelligence. It appears intelligent, but only in a specific area. This could include the algorithms deployed by Google to facilitate internet searches, but also visual inspection or certain expert systems. At the time of writing, limited AI is the holy grail of software development.

Strong artificial intelligence

Strong artificial intelligence is about software that can solve problems on its own. Theoretically, it is possible for such a system to develop its own consciousness. In that case, software thus acquires its own identity.

Such a consciousness can manifest itself in two ways. The first possibility is that the software’s intelligence is based on that of humans. In this case, the computer thinks and expresses itself as a human being. The second possibility is that the software develops in a non-human way. It is difficult to describe what such a construct would look like. Fictional examples are familiar from films such as iRobot, The Terminator and The Matrix.

As you probably suspect: right now, it is impossible to build strong AI. Wait-but-Why is a nice blog that elaborates on this.

Summary

Deep learning is a discipline of machine learning, in which layered neural networks learn from large amounts of data. By machine learning, we refer to algorithms whose performance improves the more often they are exposed to data. Artificial intelligence is a (software) construct that can independently perceive, reason and react.

A new, innovative application does not come out of the blue. Earlier, we wrote about how the principles of Lean Manufacturing can be deployed. Now we dive a little deeper into that. From problem to product, how does GlobalOrange ensure successful software development?

KEY LEARNING POINTS

  • 7 Principles when developing digital products
  • Agile-scrum methodology within GlobalOrange projects

 

The 7 principles

AVOID WASTE

Don’t spend time on unnecessary work by focusing purely on the most valuable aspects of the project.

  • Define basic workflows in advance
  • Define clear and stable specifications
  • Design and brainstorm before planning your project
  • Make sure your ‘user stories’ are ready before the start of the first sprint
  • Small project? Small team!
  • Choose an MVP for the first iterations of your project
  • Define achievable goals
  • Avoid swapping tasks among team members

 

BUILD QUALITY DIRECTLY INTO YOUR PRODUCT

Instead of looking for ‘bugs’ or possible errors after developing your software product, optimise the development process so that it creates fewer or no errors. This saves time and work.

  • Prevent hacks and other ‘wood/rope solutions’
  • Facilitate code reviews
  • Start quality checks immediately
  • Have developers work in pairs
  • Fix bugs immediately

 

TRANSFER 'POWER' TO THE TEAM

Create an environment where each team member can contribute his or her maximum potential. Provide a free environment where each team member dares to speak up and where team spirit can grow.

  • Respect your team members
  • React quickly
  • Listen carefully
  • Empathise
  • Be assertive
  • Empower your team members
  • Challenge each other

 

POSTPONE COMMITMENT

The later you make important decisions, the more information you have to make that decision.

  • Decide as late as possible
  • Keep as many options open as possible
CREATE KNOWLEDGE

Building and increasing available knowledge increases long-term productivity and makes teams more flexible.

  • Create sufficient documentation
  • Ensure knowledge sharing
OPTIMISE THE WHOLE

Constantly look for opportunities to optimise value addition. Take a step back and look at the situation as a whole.

  • Look back sufficiently
  • Learn from other projects
  • Implement changes immediately
DELIVER QUICKLY

Ensure quick delivery of software products to gather feedback as soon as possible.

  • Define ‘Red Routes’ in advance
  • Define basic workflows before starting the project
  • Start with an MVP
  • Define a ‘Happy Flow’
  • Keep. It. Simple.

 

Download the 7 principles factsheet (Dutch)

  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden
  • Hidden

Higher quality, lower costs

The founders of Lean Software Development, Tom en Mary Poppendieck, apply 7 principles in software development. Their application helps organisations develop software faster, with higher quality and at lower cost.

Successful projects

In our factsheet, you will read what these principles are and how GlobalOrange uses them in combination with the agile-scrum development methodology to execute our projects as successfully as possible.