CircleCI had a problem. New sign-ups were hitting a roadblock early on, and were quitting out. A well timed message to those customers helped turn these struggling moments into useful conversations. These conversations, in turn, led to conversions.
CircleCI provides Continuous Delivery for software development teams. This means that each time our customers push code to GitHub, we run all of their tests, and might deploy their applications to production.
Since we’re a key part of our customers’ developer flow, one of our core values is great support. One of CircleCI’s first UI features was a “help” button; we had to nag Intercom (then in private beta) to get access to it.
Our other core value is that we support whatever our customers can throw at us. While services like Heroku demand you conform to best practices, we recognized that part of our job is to support customers’ existing applications, even if they’re doing weird things that are way off the beaten path. This core value created an unusual problem.
What was the problem?
Customers expected that if their tests passed on their machines, that they would always pass on CircleCI. In practice, tests fail for a huge variety of reasons, everything from differences between OSX and Linux, to not being tested correctly on a developers’ local machine.
We automatically set things up so that their tests can run in one click, so when their tests failed, it must be our fault, right? The problem is that potential customers rarely become customers if their tests don’t work. So we were losing customers because they didn’t know why their tests were failing.
How could we talk to these customers? How could we ensure that they talked to us instead of giving up? How could we learn their pain points and fix them, and turn a failed test suite into a positive customer experience?
Intercom to the rescue
We reach out to customers all the time. But we wanted to make it really easy for customers to reach out to us and start a dialog about their problems with us. There are too many products out there that have a “fire and forget” policy to customer service, and that’s not the experience we want for our customers.
Our solution was to add a lot of encouragement to contact us. We added big red attention-seeking button that said “Report…”, and an error message highlighting that you could reach out to us right now. And naturally, we hooked them both up to intercom.
Now we receive a time-sensitive and context-sensitive report about our customers’ issues, and when we reply, customers see our smiling faces next to the solution to their problems.
We wired the buttons straight into intercom. Here’s what it looks like. When you click “Report…” or “report this issue”, it brings up the Intercom dialog prefilled with the important information:
This probably looks familiar. It’s the usual Intercom message box, prefilled with “I think I found a bug in Circle at $your-current-url”.
Let’s look at the original CoffeScript:
So it’s pretty straightforward. Just use Intercom’s jQuery to step through the same actions as a user clicking.
Better customer experience
We have the philosophy that everything that a user reports is a bug: if they’re not able to successfully use the product, it’s a problem in the product. By giving customers the ability to talk to us at the exact moment when they have a problem, we’ve learned about hundreds of bugs, from places where we could be communicating better, to problems in our platform.
As well as learning, we now have an extra opportunity to provide a wonderful experience, especially to new users. This has turned hundred of prospects into customers, customers into CircleCI evangelists, allowed us to fix lots of problems with copy and marketing, and turned bad experiences into great ones.
Give Circle a Try
If you’re looking to increase your dev team’s productivity through Continuous Integration and Continuous Delivery, you should check out CircleCI. The Intercom team has been using it for a year, and everybody loves it! If you start a trial today using this link, Circle will give you 50% off the first 3 months.
Why did this work?
Paul’s post is a good example of identifying moments where customers are stuck and using messaging and good support to un-stick them. By being pro-active, making it clear you’re available, and defaulting to smart messages Circle maximise their chances of keeping a customer in the loop. It’s also a good reminder that every single piece of friction during on-boarding costs badly, and this problem only gets worse with scale.
So to improve your onboard, identify these moments, investigate them, and eliminate them while you can. Often it’s just a case of starting a conversation.