Programming

The increasing third party costs of running a SaaS business

Photo by  Émile Perron  on  Unsplash

There is no doubt that in recent time, the barrier to entry to building your own SaaS (software as a service) product has been lowered to the extent that almost anyone can jump in and build a solution to solve a problem.

However, an immediate after effect of this surge in SaaS offerings out there means that your average customer is completely spoilt for choice, and differentiating your offering from those of your competitors has become the problem du jour.

How to work on the ‘edge cases’ that can make or break your startup? It means you have to focus on things like customer retention and strategies/tools that can record massive amounts of data about how your customers come to you, and then what they do once they start poking around your system. This myriad of metrics and information usually means that you need to invest in a host of third party tools in order to get these capabilities into your own app.

Now, I am a believer in the old adage of “don’t build it yourself if you can buy it off someone has who has already done the hard work”. Our friends over at Baremetrics have already done the homework and designed a tool that will tell you whether it is more economical to build a solution you need in house, or pay a third party provider for it.

But over time, while talking to several marketing experts about how we could improve growth in my own SaaS product by increasing user retention and satisfaction, I kept hearing that we needed to provide things like:

  • Detailed user onboarding workflow

  • Screen recording to track behaviour and movement through your app

  • Knowledgebase of help articles

  • Video based training via an online academy

  • Automation tools for importing/exporting and linking data

  • In app chat for instant support response

  • CRM (customer relationship management) tool for drip email campaigns and “central point of truth” for all your customer data

  • Mailing list management software

  • Blog site with relevant articles plus hints and tips for your customers

  • Analytics and data warehousing tools

This is of course on top of a bunch of other tools that you need in order to build and host your offering in the first place, such as:

  • Hosting with AWS/Google Cloud/Azure etc.

  • Landing pages for marketing campaigns

  • Prototyping tools

  • Bug tracking and CI (continuous integration) & build tools

  • Source code repository hosting

  • Security infrastructure

  • NPS (net promoter score) measurement tools

  • Billing management systems

  • Financial accounting/payroll systems

and much more.

We recently did an audit of the cost of third party tools that we use here at my own SaaS business, and we worked out that all of our monthly tools that we used to track the above was around the $3000 per month mark (and that is with about half of our tools on free or discounted plans!). Now, given that our base pricing for our SaaS is $100 per month, it means that 30 of our customers are basically there just to pay for our third party toolset. None of those 30 customer’s revenue can go towards paying for general marketing costs, or to pay wages for our team.

Because we are still a fairly small and growing company, 30 customers is quite a sizeable percentage of our total base. I know what you are thinking - “Meh, that won’t be a problem once you have a million customers!”, but then it still will, because a lot of these third party tools pricing are based on the size of your customer base, so our hosting and support tool costs will increase linearly along with the size of our customer base at a constant rate.

To this end, I am now revisiting the idea of swapping a lot of these third party tools back ‘in house’ again. For instance, we recently explored a variety of customer onboarding tools, but given the fact that most of these tools run to around $200/month on their basic plan (that’s another 2 customers we have to find and keep just to pay for that tool), we decided to go back to writing our own onboarding sequences for new customers.

Sure this took some time to do, but at the end of the day, we could incorporate steps into our onboarding that third party tools could not hope to replicate - for example, studies have shown that the sooner you can make the customer feel that they “own” your tool, the better the chances they will stick around and explore. So, the second step of our onboarding process encourages the customer to upload their company logo to their trial company. This way, they see their company logo and name at the top of every app screen they visit during their exploration. We have seen trials to paid subscription conversions improve as a result of just this one change alone!

One of our ‘self rolled’ onboarding screens within our app.

One of our ‘self rolled’ onboarding screens within our app.

Same with our billing system backend. At a recent conference I attended, I was bombarded by third party payment processing handlers who promised they could handle things like bounced payments and expired credit cards for us - all for a monthly fee plus percentage commissions.

I am sure they were great and all, but I ended up writing our own Dunning routines and processes for handling expired cards all within our own codebase, which gives us far better flexibility as to how we can handle them.

The other thing I have been exploring is the consolidating of multiple services all into one. We recently signed up for HubSpot’s sales and marketing toolchest, and it appears that we can now stop subscribing to about 5 other vendors (in app support chat, support knowledgebase, newsletter manager, drip campaign system, landing page hosting) and do it all within the one system. HubSpot isn’t cheap, but we can reduce our monthly third party service bill by around $1000/month, so that certainly helps to offset the cost, especially while we are on their ‘startup’ plan initiative.

While we are talking about startup initiatives, I do love that a lot of companies out there provide deeply discounted pricing plans for new SaaS businesses, I am a little perturbed that most companies (such as Amazon) only provide them to funded companies. In my view, a company who has just received millions in funding can certainly afford to pay for Amazon assets to host their MVP, whereas a bootstrapped startup that is running on the smell of an oily rag could certainly do with a discounted (or free) temporary offering so there is no negative impact on their cashflow while they are building their customer base.

Most of these startup initiatives also expire after a specific timeframe (e.g. after one year). That also seems a little strange, as some startups can boast a meteoric rise within a few short weeks, whereas others may take years to break profitability. Far better to peg the discounts or free tiers to measurable metrics such as number of paying customers, or monthly revenue, in my opinion.

I am thinking that as the ancillary costs of running and promoting a SaaS business continues to rise as it is now, we will see more and more startups going back ‘in house’ for their analytics, onboarding and support tools, and we will see a consolidation (and pricing reduction) in the number of third party offerings.

What are your thoughts? Does it make it more cost effective to move some of these functions back ‘in house’ again for your startup?

The problems of selling a 'modular' software system

Modularity comes at a cost…

Modularity comes at a cost…

For years, a lot of software has been sold on a ‘modular’ basis, with the view that customers can buy only the critical functions that they need now, at a lower cost, then add on extra functionality and capabilities as their needs (and their budget) grows.

For over 25 years, I sold a legacy accounting system that was completely modular based. This system had over 20 modules and we had customers using as little as 3 modules, right up to the full suite. At the outset, this seemed like a great idea - after all, a smaller business that was just starting out and had a couple of employees didn’t need full inventory and warehousing. Just the basic debtors and creditors control, and perhaps a general ledger with bank reconciliations. As their product lines (and their cashflow) grew, we could add inventory control, and perhaps purchasing.

However, we repeatedly came across situations where customers would actually refuse to upgrade, even though they needed the extra modules because they were struggling to cope with just a subset of features. We also had customers who would purchase the extra modules, receive training and implementation assistance, then a year later we’d go on site and realise that they simply weren’t using them any more.

This always bugged me and I couldn’t understand their rationale behind this. To me, it was counter productive and wasteful.

Then it happened to me.

We have been using HubSpot’s free CRM offering here at my startup HR Partner for a few months now. Our very small team loves the software, and I like how it integrates with our support system, our G-Suite emails and other services we use. It was a great contact management tool, however we were starting to push against the edges of the capabilities, so two weeks ago, seeing as we were growing and increasing our cashflow, I decided to bite the bullet and sign up for HubSpot’s full sales and marketing professional suites - a not insignificant investment in terms of time and money.

ezgif.com-webp-to-png.png

After the first week of training and setting up configurations and being excited about things, I noticed after a few days that my team members, and myself, were reverting back to just using the contact management functionality. I mean, we had these great tools for capturing form information, setting up automated email reply sequences, automatically scheduling demo bookings etc. all with a press of a single button (and sometimes not even that), but we were going back to typing long hand repeated emails and booking demos the ‘old way’.

This process made me realise that sheer working habits and ‘muscle memory’ dictates a lot of the ways that a team will work. Old habits die hard.

The other thing I realised is that we probably tried to change too much too quickly. Had I rolled out the new features piecemeal over a few weeks, it might have been easier for the team to get completely familiar with one feature before having to learn another one. To that end, I am still rolling out all the fabulous automation that HubSpot has, but slower, and with a little more discipline. I am also listening to the feedback from team members during the rollout, to hear what their thoughts are on each little feature, plus seeing if they have any suggestions for improvement, rather than just setting everything up myself and telling them to go use it.

One last thing I’ve noticed is that if a software system has a lot of features, and most of those features are hidden away out of sight (because the customer has never activated those modules), then it is much, much harder to lead the customer on the path of discovery towards those new modules. We came across this scenario time and time again with the legacy accounting system I spoke about earlier. Our customers would simply have no clue that they could do ‘x’ in that software because they had never seen anything in the system that even hinted at it. It was only during regular on site consulting calls that we would have to talk to the customer about it whenever we discovered there was a need for it.

Even with HubSpot, I am astounded every day when I see what added functionality there is within the system. I would have completely redesigned some of our business practices and processes differently had I known what we would have unlocked by signing up for the full plan. To change them now is much more difficult than setting them up a certain way at the outset.

Taking all this into consideration, I am glad that we designed our flagship SaaS app HR Partner differently. We considered having a ‘modular’ structure at one stage (and indeed, at one stage we even hid the extra modules on the menu that we thought our customers would not use yet), but eschewed that path to provide an ‘all in the box’ solution. The only thing we charge extra for is the Timesheet module, but only about 10% of our customers actually use that, and it is not really an ‘optional’ thing anyhow, but rather something that you would need straight away.

So if you sign up for HR Partner, you get everything available to you at the same monthly subscription price. Users who are curious can click around and self discover new functionality, and they can ask us about it if they need a hand setting it up - or else they can simply play and experiment at their own pace. No need to talk to a consultant or support person and get roped into paying extra. Also, by knowing that the functionality is there, they can better plan to implement it in the future, or set up processes now which will accommodate the extra features down the track.

Do you sell modular software systems? I would love to hear your thoughts on the pros and cons of this methodology.

The Folly of 'Unimportant Data'

CR-BG-Computer-Backup-System-Hero-08-16.jpeg

Having been involved in computers for nearly 4 decades now, I have a healthy view towards data backups. Both my Macs are backed up to a local Time Machine drive on my network, PLUS to Amazon Glacier. I also have important development & client files copied to Google Drive and DropBox on a regular basis. Onsite and offsite backup.

I backup nearly all my critical data that I work with daily. However, I also have a ton of data which (I thought) I consider unimportant. This comprises of:

  • Old videos that I have edited and uploaded to Youtube etc.

  • Copies of photos from my wife’s phone

  • Images for all software installers I’ve used while setting up my PCs

  • Interesting videos or lessons that I have downloaded from Youtube over the years

  • Collections of interesting guitar tabs I’ve found online, etc.

Basically, stuff that I thought I could find again later if I really needed them.

Then, this week, the 3TB external drive that I had all this stuff on finally gave up the ghost and died. “No biggie” I thought to myself. “It was nice to have, but I’ll just get a new drive and start accumulating this unimportant stuff again from scratch”.

But then, in that same week:

  • My wife asked about a photo from her old phone that she couldn’t find any longer, and was it in my backup?

  • My son called to ask if I had a raw copy of a video I had edited for him some years ago as he needed another section (that I had edited out in the final render) for an audition he had to do.

  • I found out I had to reinstall an audio plugin for one of my old recordings, and the original publisher no longer had the older version of the plugin (which I needed to match my audio project) available for download on their site any longer.

How coincidental was that? All of a sudden, I needed this “unimportant” data that I thought I could throw away.

So this week, I’ve sent the external drive away to a data recovery service to see what they can do about bringing it back to life. The offer a free inspection to examine the extent of the failure, and quoted my AUD$300 to recover the data if they can. I figure $300 is worth it to me to just have all that data at my fingertips again, and if I do get it back, I will immediately be setting up a Glacier backup for all of it.

The Disconnectivity of Remote Working

Photo by  trail  on  Unsplash

Photo by trail on Unsplash

Throughout the 30+ years of running my own business, I have explored all aspects of teamwork.  From having my own in house team, to having a totally remote team, to a combined mix of the two.

Which do I prefer? Now THAT is an interesting question.

I would consider myself an introvert, and I do prefer working by myself in my own home office a lot of the time.  However, some of my best working memories have been when I have been in an office situation and working alongside others.

There is something about the human connection of being in the same space as others.  A myriad of non verbal cues and communication that goes on, most at a sub conscious level, which lends itself to a better sense of being part of a community which is pulling in the same direction.

Case in point - my current startup is a fully remote setup.  For the past two years, it was really only myself and another co-founder, who worked in a small town literally on the other side of the world.

Now, my co-founder and I had a great working relationship, and we produced a ton of stuff together.  All communication was mainly via Slack and email, and we used to talk on a daily basis PLUS have a weekly web video catch up.

My co-founder left the startup about 2 months ago.  The first week was really challenging, as I directly missed talking to someone while working away on new ideas.

But by the end of the first month, I started to get used to working by myself again.  After all, I had run the startup by myself for about a year before my co-founder joined me.  So it felt basically the same as it did before.

By the end of the second month, I was actually struggling to recall even working with my former co-founder.  This concerned me, as I always considered myself a sensitive person who liked to reminisce about happy memories.  So why was it suddenly so difficult for me to recall any of those good times we had had?  My co-founder's departure was amicable, so this wasn't as a result of any ill feelings.  Rather it just seemed that those experiences and memories were just floating out of reach, and without anything to anchor them too, they just seemed to waft away whenever I tried to recall them.

Even when I would go back through a Slack conversation to find an old screenshot or idea, I would re-read some of our conversations - but I struggled to actually remember the emotions or personality behind those chats.  Re-reading them seemed somehow cold and impersonal and I couldn't tell if I was tired, or angry, excited or happy while typing those paragraphs.

As a direct contrast to that, I can still clearly recall events that happened in my office over 20 years ago when I worked only feet away from the rest of my team.

Tiny things like a shared look, collapsing on the floor laughing at an 'in house' joke, or the casual punch on the shoulder as someone congratulated you while walking past your desk - all those things just added so much to my working experience that I, even as a self confessed 'lone wolf', missed them terribly.

There is something about being around people who are experiencing the highs and lows of their lives (even outside of work) that is strangely enriching and bonding.

To extend this even further - I was looking through my Facebook feed just this week, and I realised that I have become close friends with a vast majority of people that I have worked with face to face over the decades.  Remote workers much less so.  For some reason when a former remote staff member posts about their family or holiday or other life event, I find myself a lot less engaged with their thoughts and feelings.  There is still an element of them being an unknown 'stranger' so that any such intimate details of their lives instills a sense of guilt that I tend to deliberately avoid seeming too familiar or presumptuous when reading their posts.

While my recently departed co-founder and I had discussed an actual company meetup where we (and potential future staff) could meet face to face, it never happened during our working time together.  And now that my co-founder has moved on, I have accepted that we will probably never, ever meet in real life.

I am in the process of building up a whole new remote team now though, and am looking at strategies to try and counter this feeling of disconnection with those that I will figuratively work alongside for the coming years.

Regular company face to face meetups are definitely on the cards.  But I am also thinking that we might need to put something else in place outside of those times.

But what could take the virtual place of those little moments like tossing a paper plane across the office to see whose desk it would land on, or the understanding look that I would share with a colleague across from me after hanging up from a talking to a difficult client, or the good natured group ribbing that would happen when a co-worker brought a delicious smelling lunch into the office?  I have yet to see a web or mobile app that can replicate this sort of interaction.

Perhaps I have to go and invent it?