Selling your software on-premises? This is the ultimate strategy you should follow up with
Are you planning to deliver your SaaS product on-premises or through AWS/Google Marketplace? This post gives you my past experiences, advantages, and disadvantages you may encounter when implementing this decision.
This will be a lengthy piece, so grab a coffee or two.
If you decide to propose your app on-premises, I recommend considering it only if you can generate substantial revenue (at least 10 times your highest annual pricing) and if your target customers are willing to bet on it due to security and privacy reasons.
On-premises installations are usually preferred by buyers for perpetual licensing to show as CAPEX. Most companies spend their OPEX early and have CAPEX left, so owning the product is more advantageous.
With this method, instead of making annual payments for the product, you pay the upfront cost for 3-5 years, and starting from the second year, you receive additional invoices for updates and maintenance, ranging from 15-20%.
Therefore, you will be at a crucial decision point depending on your cash flow situation.
If you believe that the customer will stay with you for at least 5 years and remain loyal in the long term, you may reconsider this path, as having too many perpetual licenses on your financial statement may raise concerns for your investors.
Hence, if you are raising money soon, make sure this is not a showstopper.
If you are working with a large company for on-premises installation, you may not need a licensing solution. However, if you are selling a low-cost product (<$5000) to small companies, you need to include a license key control within the product.
This way, the license can be renewed close to the contract expiration.
You will need to either develop your own solution (not recommended) or purchase one of the license management software available in the market for generating, controlling, auditing, discount coupon, and group discount of license keys.
If your product pricing starts from 5-10K per year, I suggest you align your priorities and focus on more important tasks, as I don't think you will need a license manager at t=0 moment.
Now let's discuss software updates.
Since you probably have no connection with the customer's CI/CD system, the installation you will do for the customer will not be updated with a single click like your service in the cloud.
The process of new version and update will be cumbersome as you will have to go behind the VPN. Using SMS-supported VPNs (sometimes jumping through 2-3 machines) at specific hours will eventually cause a major headache.
After you have done your on-premises installations, you will receive numerous requests from customers.
Don't create a fork and develop minor versions for each one of them. Avoid creating a separate branch for the customer in your Git repository.
As your customer base grows, try to maintain a single code base and support it with configurations and feature flags.
领英推荐
If you are installing on-premises for the first time and working with a large company (e.g., a bank or a telco), be prepared to receive numerous requests for security and compliance tests for your existing software.
Some features that you never thought of in a cloud environment will be required from you.
Some of these may be overlooked by your customer's security teams, but some are non-negotiable. You should sit down with your customer and discuss how to complete this process as quickly as possible.
The enjoyable part is that everything will be ready for the next customer :-)
Some customers may be using their own managed machines on AWS/Azure/Google platforms instead of barebone machines (private cloud). It would be much easier to transfer your product to AWS Marketplace or Google Cloud and have the installation done from there instead of on-premises installation.
In addition to the above, you should also review your installation and update files. If the infrastructure in AWS/Azure/Google is different from the platform you are using, you should update these files.
One small advantage of these marketplaces is that the payment can be made directly by the marketplaces, not by you. In addition, when you exceed a certain monthly sales threshold, their teams will start promoting and selling the product on your behalf.
It's beneficial to propose a Proof of Concept (PoC) before installation. Even if you don't propose it, the other party will likely offer it. Make sure that the platform where the PoC will be conducted is similar to the platform where you will install the product, so that you can easily transition the PoC to production and add testing and tagging to it.
The contract stage can take months. After the installation is completed, it may take at least 3 months for the initial work to start. Therefore, it is not uncommon for 18 months to pass between the initial contact and the installation.
The customer will have their own monitoring software. They may ask you to install a small agent for them or use a URL-based ping to check if the service is up and running.
Despite all the problems and headaches, I can't think of any other factor that can connect the customer to you as much as onpremises. Once you are inside, it becomes impossible for the customer to say "this is too expensive/featureless/troublesome, let's switch to another product" especially when you start integrating with 3rd party products.
In addition, the customer will provide you with their own contract and your contract will become less important. Pay close attention to the clauses in the contract, especially payment and penalty provisions.
Speaking of the payment, almost always include the initial installation cost in the contract. Many large companies expect this from you, so don't hesitate to include it.
You can also add support costs alongside your license, but be prepared for negotiation during the purchasing process.
During negotiations, be willing to give up the initial installation cost if possible. Try not to touch the recurring license fee as much as possible.
Some companies may want to switch to permanent licensing after the second year if they see the value. They may say "We paid for two years, let's pay for one more year and make it a permanent license" or they may specify it with a clause in the contract. Do not accept it.
Providing on-premises services can be a really challenging process. By paying attention to the above points, you can navigate through the possible.
Executive Vice President | Deputy General Manager | C-Level Executive
10 个月This article is exceptionally lucid and informative, thank you G?rkem