Building a world class customer support team for SaaS

Work Gets Done, Customers are Happy. This is the ethos that our customer support department lives by at OpenWater. Sure, we have all sorts of metrics that we track, but everything we do must tie back to that primary objective. If work is slipping through the cracks, and customers are frustrated, nothing else matters. However, the statement itself is vague and ethereal. What does ‘Work Gets Done’ even mean? By what standard do you measure ‘Customer Happiness’? How does this impact the day to day life of support reps and implementation specialists?

Customer support must be nimble and react quickly to ever evolving business challenges. In the early days of a startup, everything is on fire and every staff member is wearing many hats. As your business matures, people begin to specialize and roles are more clearly defined. As the team size grows, leaders emerge and take on additional responsibilities. This has been the story of OpenWater’s support team for the past decade, and continues to improve as we move forward. But regardless of what strategies we use in day to day operations, our mission remains the same: Provide unparalleled customer support. And we achieve this through built-in accountability.

Shortly after OpenWater launched its application and review product in 2012, the founders Tim and Kunal hired their first full time customer support rep. He did a phenomenal job given a product that was littered with bugs and limited capabilities. He created a help center with a dozen articles, fully implemented and onboarded every new customer, and then provided customer support all by himself. He burned out and quit.

Of course this was an incredibly valuable lesson and wake up call. We didn’t yet understand what was required of us to do this job and how to appropriately staff it. At the time I was a 23 year old programmer in our web design business that we kept running to subsidize our product line. I offered to take on the customer support challenge and help figure this out.

There was a lot of pain in the beginning, but it was also fun. It helped that I was a software developer providing customer support because I was able to actually build workarounds in real time. Customers thought I was a magician, but I knew that this was not a scalable solution. Over the next several months, we started to form a coherent picture of all the processes required to do the job and began hiring both at headquarters and remotely across the United States and Canada.

Early days of scaling customer support

The first major issue we needed to resolve was the distinction between onboarding and customer support. Every new customer received a completely free implementation. Certainly the customers loved it, but we learned it made no financial sense and ate up valuable time from the support reps.

This was an important decision point for us. We had to come to terms with what our product was. Application and review software requires configuration. There is no way around it. It is easier to implement submission forms and workflows in OpenWater compared to other SaaS products, but still requires dedicated set up time. We decided to invest heavily in creating guides and walkthroughs to train customers on how to configure their own programs, but would offer implementation as an add-on consulting service. It ended up as a net positive because customers who were well trained and configured the platform on their own became power users. The extra revenue from customers purchasing the implementation service allowed us to hire more customer support reps. Today, OpenWater has one of the most comprehensive help centers in the SaaS industry at

Round robin vs. dedicated support

The next big decision was the style in which we offered customer support. Would we have a pool of customer support reps and wait for the next ticket to come in the queue? Or would we provide a dedicated support rep for each customer?

This is a hotly debated question. Many B2B SaaS companies today follow a model where you have a dedicated Customer Success rep and a separate customer support department that responds to tickets. I never understood what Customer Success people do and every time I interact with one as a client myself, they tell me they will route me to someone who can help. But that can be a topic for another article, so let’s just focus purely on customer support. A ticket based queue is favored by most companies because you can measure the velocity of a ticket, its resolution, the volume of tickets, and then staff up accordingly. This feels right and makes the finance department and executives happy because it’s just numbers. X + Y = Z. A round robin ticket queue is efficient. But is it really the best? The answer is: it depends on the type of SaaS product you are offering.

Round robin ticket queues are really effective in the following scenarios:

  • Consumer facing support, B2C
  • Many common, repeatable transactions, submit X, receive Y
  • There is a very high volume of the same questions being asked that can be quickly resolved (help me reset my password, help me cancel my account)

In these scenarios, a pool of basically trained customer support reps can line up and take the next ticket or incoming phone call and respond with great speed, much like a school of sharks attacking the carcass of a whale floating around the ocean. It would not be unusual for someone to answer 100 tickets in a day or answer the phone 20 times in this scheme.

OpenWater does not operate this way. Instead, we have dedicated support reps for every customer. In a way, we ended up with this approach by inertia. Due to the nature of customer onboardings, the support rep who assisted the customer became quite familiar with how that customer’s workflow functioned. When that customer would write in, it was simply easier and faster for the support rep who was already familiar with that workflow to respond. Otherwise, a lot of time would be wasted every single time a new rep would have to get context to even understand the question being asked. One of the most frustrating aspects of customer support in the B2B SaaS world is that every time you call in to support, you have to explain how you set up the platform and why certain decisions have been made, just to get to your question. And so it became easier for both our side and the customer to have the same people interact consistently.

The benefits did not go unnoticed. Customers built relationships with our support reps and over time the reps were building a bank of customers that they were ultimately responsible for. Today, each support rep is effectively accountable for supporting between 50 and 60 customers. Customers don’t write in to OpenWater support. Instead, they write in to Genna, Helen, Mary Rose, and a host of other awesome people. Some of our reps have been supporting the same customers for years and know them better than they know themselves. When you build a relationship with a customer, they are happier, and work gets done quicker. The customer is also much more likely to renew or expand their use of your product. We codified the dedicated support rep into our policy.

As with anything, there are trade offs that should be acknowledged when going the dedicated support rep approach. The first sacrifice is traditional phone support. Most customers are comfortable with getting a call back and it works best if they email in saying “Hey, call me when you get free at #####”. This gives the support rep an opportunity to finish what they are doing. There is also an unlimited number of calls the customer can schedule on to the customer support rep’s calendar at least 1 day in advance. Every once in a while, a grumpy customer will complain that they just want to call in and have their rep answer the phone right then. Another drawback is what happens when your employee is sick or goes on vacation. To address this, we instituted the concept of small teams.

A team of teams

Several years into our venture, the customer support team grew to about six people. It became difficult for me to manage all of them directly and thought it would be best to create Team Leads. These team leads would oversee 3 to 4 support reps and be the first contact point for an escalation for the customer. Team leads at OpenWater have an extensive amount of experience and authority. If a support rep is out sick or on vacation, another rep on the same team will fill in for that person, or the team lead may fill in themselves. In the rare event that a customer is displeased with their dedicated support rep, the Team Lead will reassign the customer to another rep within their team. Each team acts as a unit and even has their own culture. This was a major pressure release valve that freed me up to solve new operational issues we were facing.

Implementation vs. Support

It was Q3 of 2016 when we noticed that the support team staff’s frustration was increasing. We had hired two more extremely talented people but the team was still overwhelmed. Something was broken. After speaking with team leads and customer support reps, we discovered the source of the frustration was with implementation. When a new customer would sign up, we would assign them to a customer support rep whether they chose to purchase an implementation or build the program out themselves. The reality was, providing customer support and implementing customer workflows are two very different jobs.

When working on an implementation, what you really need is 4 hours of uninterrupted work. That’s impossible when you are also providing customer support to 50 businesses. We looked across all the active implementations among the entire staff and realized there were enough projects to justify hiring an implementation specialist who did nothing but work with customers to get a project live, freeing up the support reps to focus on helping their customers.

With today’s iteration of our “Team of Teams”, each Team Lead has 2 or 3 customer support reps and 1 implementation specialist. They all work together and help each other out. When an implementation specialist completes a project setup with a customer, the customer is transitioned to a dedicated support rep on the same team, all under the same umbrella of a single Team Lead. Continuity is key. Accountability is built in. Work gets done, customers are happy.

However, there did emerge a scenario where we kept the support / implementation combined as one role… introducing the Enterprise Team.


Most SaaS companies face a hard decision when it comes to supporting enterprise customers. These customers generally require substantially more consulting services, well beyond what would be considered a typical small scale implementation project. If a normal project is 30 to 100 hours, these enterprise projects are 100 to 500 hours. These customers often have the most complex workflows with intricate integrations of multiple systems. They may have heavy use of our APIs or advanced front end designs. As OpenWater grew in popularity, larger and larger projects kept coming in, straining our existing team.

Some SaaS companies simply just say No to all of this. What you see is what you get and won’t touch any custom development. Nothing wrong with that at all — it’s simply a choice and sometimes we do refer customers to technology partners if we feel a project is beyond our reach. But we do often take on complex projects and these will be assigned to our Enterprise Team. These customers are on traditional maintenance agreements that ensure we have committed resources available for both project management and development. For these customers, the support reps act as both customer support and implementation and have more experienced technical backgrounds. They may not be programmers themselves, but they can speak the language and communicate with developers directly. Due to the nature of these projects, each support rep is assigned about 15 customers, instead of 50 to 60. And one support rep only has 3 customers.

Measuring success

The most important metric we have determined that impacts customer satisfaction is response time. We switched to using as our primary support tool in 2016. The live chat feature was scary. Our biggest fear was that our support reps would be swamped with requests, but this turned out to be unfounded. We used intercom’s routing features to automatically route a new chat request to the customer’s dedicated support rep. And if the customer had decided to email, that email would still get routed to the same rep. It all happens in intercom and the rep can respond using one tool, whether it is live chat or email. Everything gets routed to where it needs to be. The Team Leads have full coverage and purview over what is happening.

We have trained our support reps to respond as soon as they see a message come through with “Hey [name], got your message, will look into it right away”. And this is a real message, not one of those automated responses. Customers appreciate this immensely because they are reassured that their support rep is on it. That’s what customers want in the end – to know that this human being is working on resolving their problem. This also buys time for our support reps to properly investigate the issue and not feel rushed. Our median first response time is typically 4 minutes, with some support reps as low as 45 seconds. Completion of initial investigation averages 10 minutes which may result in an immediate resolution, or further escalation or screen share.

We care very much about our intercom Conversation Ratings. These are ratings that the customer clicks and leaves comments about how they feel about the support they received. We typically exceed 99% satisfaction rating, and read every comment that comes in. We showcase our favorite comments during the monthly company wide meetings.

We also do periodic NPS surveys — those pesky surveys you get that ask you “How likely are you to recommend OpenWater to a friend or colleague” with a scale of 1 to 10. I wrongly dismissed these surveys for a while, but they do yield essential feedback from customers. And some customers get very passionate in the comments section. We read all of them. We actually delineate between end users who interact with our customer support and those that don’t, and there is a stark decline in NPS scores among those who do not speak with our support team. This demonstrates how critical support is to ensuring customers are happy.

Collaboration is everything

OpenWater was already a remote company before COVID. When the pandemic hit, there was no meaningful impact to our operations. We use all sorts of tools to manage our infrastructure, but the most important are Intercom and Slack. Despite being remote, it is important to make sure no one person works in a silo, isolated from everyone else. It’s not possible to do this job without your teammates. And if work gets done, customers are happy, then everyone can celebrate and have some fun too.


Our application and review support department has grown to 3 teams + an integrations team and an enterprise team, led by our director of customer support, Alexis Rodriguez. There’s a lot more to discuss regarding our support apparatus and auxiliary units that provide help to the department. There is also an entirely separate department supporting our Event Cloud product line which has a different support model than any of the ones I shared today. I hope you enjoyed some of the behind the scenes, insights, and lessons learned over the last decade in growing this department from 0. Stay tuned for more articles in the future!