Archive for the ‘SaaS’ Category
March 21st, 2010
Microsoft recently released the “Web Application Toolkit for Freemium Applications” for building applications based on the freemium model. I am not a big fan of the Freemium model myself, but I thought it would be interesting to take a closer look at the toolkit anyway.
First off, let’s recap the freemium model. According to Wikipedia:
Freemium is a business model that works by offering basic Web services, or a basic downloadable digital product, for free, while charging a premium for advanced or special features.
Thus, to build applications for the freemium model, we need to be able to
- Have multiple feature sets and manage these
- Have users associated with one or more feature sets
- Have a user’s chosen feature sets reflect in the application GUI presented to the user
- Have a user’s chosen feature sets automatically reflect in the billing
It might also be nice to
- have users grouped into categories with catchy names and associate feature sets with each category
- be able to easily move users between categories, possibly by self-service
This is what the toolkit should ideally help us achieve.
In broad terms, the toolkit works on two concepts: features and SKUs, and it uses the ASP.NET Membership functionality to associate users to SKUs. SKUs are sets of features and each SKU has a unique identifier called a slug. SKUs are mapped to users by means of standard ASP.NET Roles having the same name as a SKU slug. Thus, there will be a “Gold” SKU identified by the slug “gold” and all users in the role “gold” are associated to the Gold SKU.
If you buy into this way of grouping features and associating them with users, the framework provides:
- Page extension methods for displaying/hiding content based on the user’s SKU
- Action attributes to allow or prevent the user from executing certain actions based on the SKU
- A MVC 2 Area with controllers and views for managing SKUs
The components described in the three bullets above are definitely valuable in any application based on the freemium model. However, their actual implementation leaves something to be desired. The provided functionality isn’t componentized properly and there is a general lack of extension points: to really use the toolkit, you need to buy into a lot of arbitrary design decisions which are unlikely to suit your application. Moreover, there is just a gust of code smell around it: views aren’t properly decoupled from business logic, no DI is used etc.
All in all the Web Application Toolkit for Freemium Applications is a nice initiative from Microsoft and it contains some relevant thoughts. If Microsoft decides to put some effort into the toolkit to provide extension points etc., it may even be able to kickstart your next freemium application. At the moment, however, the toolkit is pretty blunt. It is nothing more than a sample implementation which may provide inspiration but does not deserve to be called a toolkit.
The Web Application Toolkit for Freemium Applications is available on MSDN.
March 21st, 2010
I was recently searching for a SaaS offering for email management and stumbled upon a product that looked interesting.
The provider’s website frontpage is pretty decent. It presents three main gateways if you want to learn more about the product and its benefits:
- A video tour
- A set of video interviews
- A bunch of third-party reports
I really like the idea of using online videos to present a SaaS product. If you ask me to use 15 minutes to concentrate my thoughts and strain my eyes to read your product presentation, I will consider it. If you ask me to invest 15 minutes in watching a video, I will be happy to kick back and enjoy the show. A video presentation available online 24/7 is a great approach for many SaaS companies.
Thus, I clicked the “Take the video tour here” button and chose the first video from a list. To access the videos, you then need to sign up in the guestbook:
“So, just to get to see a set of videos introducing your service, I have to fill in all those fields? And you’ve even added aggressive, red asterisks to the majority of the fields, indicating that they are required and depriving me of any hope that you might let me off easy? Hmmm, I wonder if someone has tweeted anything interesting?”.
The point is: the service provider doesn’t need this information just to show me some videos, so they shouldn’t ask for it! And certainly not require it!
As I mentioned in my previous post, every step the prospect has to take to become a paying customer, is a potential barrier to entry. In this case, the provider has lost me before I even know if their product is fantastic. Once I have checked Twitter, put on another kettle for coffee and gotten back to the computer, I will fire up a new browser, hit Google and restart the search.
Only require information from the user when it is necessary. If you need information like company name etc. to set up a test account, provide defaults. If some piece of information is only required when using a particular feature of your application, only ask for the information when that feature is first used.
March 11th, 2010
When delivering a SaaS offering two factors are crucial to profitability
- Customer Volume
- Customer Acquisition Cost (CAC)
You obviously want a large customer volume and a low CAC. To this end you will typically employ the power of viral marketing and cheap and scalable online marketing. Hence, you will not have sales people in the field actively herding customers through the sales funnel. Instead, your online initiatives and community need to be able to turn leads into customers autonomously. Actually, the sales cycle is not a sales funnel as much as it is a sales vacuum hose. Customers have to be sucked into your business. Since no-one is around to actively respond to prospects’ whims and wishes and since prospects have a free will (gasp!), the slightest barrier to entry in your sign-up process can have a large impact on your customer volume.
If you read up on some of the lore on designing a webshop and its checkout process, you will see that a lot of energy is put into streamlining the buying process. At every step of the process, a webshop risks loosing customers if they can’t figure out where to go next or if they are just distracted.
When selling SaaS, streamlining the process from initial interest until you can charge the customer is even more important and even harder to get right. SaaS vendors usually offer the option of trying the product for a period of time before buying. This means that there is ample room for something to trip the customer up.
The process of getting someone to sign up for your service looks something like this:
- Get them to visit your website
- Get them to read about your product and realize that it might address their pain
- Get them to try out your product
- Get them to sign up
- Get them to renew their subscription
Each step in the process is a possible barrier to entry, so you have to think very carefully about each step. Heed the advice of webshop designers, e-commerce consultants and usability gurus, but keep in mind that turning a prospect into a paying SaaS customer is a much more complicated process than making a customer go from A to B in a webshop.
When designing your sales cycle, you should keep the 5 steps above in mind and actively seek to make the transistion between each step as effortless as possible.
November 19th, 2009
Today I had the privilege to feature as a guest on Mr. Frost’s Podcast, a show hosted by Microsoft Developer Evangelist Daniel Melgaard Frost. The topic of the day was Software as a Service (SaaS), but the discussion digressed into areas such as EnergyMap.dk, dependency injection and ASP.NET MVC.
The podcast will be available on Daniel’s blog sometime in the future.