Exotel Campaigns

How might we enable the customers to drive growth and engagement using calls and SMS?

The Context

Exotel is a cloud telephony platform. It powers voice and SMS communication of businesses. The customer base of Exotel covers both small businesses and large enterprises. Exotel supports call and SMS campaigns, and it generates significant revenue.

My Role

I was responsible for research and design. I worked along with product managers and engineers. Also, involved sales, customer success and customer support teams throughout the process.

The Problem

A campaign service on top of cloud based telecom infrastructure has a lot advantages over the traditional call or SMS campaigns. But we haven't explored those possibilities to provide better campaign experience. The campaign offering was primitive, and we received a lot of customer feedbacks related to it.

Who Uses What?

Campaigns were majorly used for promotional purposes, to drive growth or to engage customers. That means the users vary from growth hacker in the marketing team to customer engagement or operation manager. Also, there are transactional use cases for campaigns. For example, pick up scheduling in e-commerce.

Research

We have been doing continues customer interviews to identify issues and opportunities related to the product and platform. Along with that, the analysis of customer support tickets helped us to get an overview of issues related to campaigns.

Questions and Findings

Insights

The major insights from the research were the following.

  • Campaign creation is painful since there are multiple things to be taken cared such as template approval, creating flow, adding and managing recipients.
  • Analysis of result is not straightforward. Campaign wise reports are not available for download. The user needs to go through series of steps to access the reports.
  • The campaign is static. It is limiting the transactional use cases since there is no option for personalisation.
  • The contact list is not flexible. It results in extra burden in analysing and reporting.
  • The user needs to go through the same steps again and again while creating the campaigns with subtle differences.

The Design Sprint

To address the significant issues, we decided to conduct a Design Sprint (format proposed by Google Ventures).

Sprint Team

The team was one product manager and two designers. We included people from sales, marketing, customer success and engineering in different sessions during the sprint.

Long Term Goal and Sprint Questions

After series of discussions, we agreed on the following long term goal.

"Empower our customers to drive growth and engagement using calls and SMS".

We also decided to answer the following questions through the sprint.

  • How do we ensure customers default to Exotel campaigns to drive growth and engagement?
  • How to make the campaigns more flexible and extensible?
  • How do we ensure timeliness and delivery?
  • How can we help customers to analyse the results of the campaigns?

Long term goal, sprint questions and vision map

Expert Interviews

We had identified and scheduled expert interviews before hand. The participants include people from Sales, Marketing, Customer Success and Engineering. We investigated their vision, feedback and concerns related to the campaigns. We also asked their opinions on long term goal and sprint questions. Based on that we made minor modifications for the sprint questions.

Deriving Themes

By combining data from customer interviews and stakeholder interviews, we came up with How Might We questions. Each person in the sprint team did it individually. After that together we grouped the how might we notes to derive themes and patterns.

Organizing How Might We Questions to Derive Themes

Breaking Things Down

By understanding the customer concerns, and other feedbacks, we identified three parts of the overall experience.

  • Scheduling
  • Delivery
  • Analysis

Scheduling

This where the user creates and schedule a campaign. Scheduling a campaign has multiple steps, and some steps use other product features. This understanding leads to the following discovery.

"The campaign experience depends on the experience of its depended features". It means we have to address issues those dependent features.

Delivery

Once user schedules the campaign, it should reach to the recipients in the specified time. Delivery rate, delivery time, etc. plays a significant role here.

Analysis

Measurement of the success or impact of the campaigns is critical for the customer. The current offering was not up to the mark when it comes to the analysis and the reporting

Inspirations and Lightning Demos

After defining the problems, we decided to study how others are solving similar problems. Each person worked individually and came with presentations demonstrating analogous inspirations. Interesting ideas are captured so that the team can use it later in the sprint.

Capturing Ideas from Lightning Demos

Exploring Solutions

At this stage, the walls in the sprint room were full of questions, notes, and ideas. Since the sprint team was small, everyone needed to work on all three major stages of the campaign experience. Everyone worked on creating solutions for each stage (scheduling, delivery and analysis). The team made use of four step sketching process. Each one presented their ideas, and the team shortlisted best ideas.

Reviewing Solution Sketches

Storyboarding

We decided to convert the entire flow into a storyboard so that everyone gets the overall picture. It also helped us to communicate the whole experience with people outside of the sprint team.

Quick and Dirty Storyboarding

Prototyping

The next stage was prototyping the solution. We assigned tasks for sprint team, and each person worked on different part of the prototype. One person was responsible for combining everything into one. Because of the time limitation, we had to skip a lot of details. At the same time, we made sure that, the prototype includes the core ideas.

Home Page for Campaigns

Testing and Iterations

On the fifth day of the sprint, the prototype is presented to the people internally and collected the feedback. And during the customer interviews on the weeks followed, the prototype is presented to customers and made revisions.

Exploring Options for Import Contacts

Search and Filter

For a given account, people across departments uses the dashboard. Some accounts have more than fifty users.To quickly discover the campaign user is looking, the search should be robust enough. The user can search the campaign by name, filter the campaign by status, who created, type of the campaign and date range

Campaign Home

The Wizard: Divide and Conquer

One issue with the current campaign was of context switching. The campaign depends on other features. For example, the flow builder where the user can create call flow for the campaign, the address book where the user can store the contacts, etc. We needed to ensure that the flow is not overwhelming users. Considering the complexity of the entire process, we decided to chunk the tasks so that user can deal each step with discrete mental space.

Home Page for Campaigns
Create campaign flow

Make it Personal

Most of our customers were using campaigns for promotional purposes. Even though there are transactional uses for the campaign, people were not using it because there is no option to send personalised messages. During our customer interviews, this pattern was evident. Personalisation opens up a lot of opportunities that was not possible before. To enable these possibilities, we came up with a more advanced contact list manager

Content and Schedule

Custom Fields

The user can create custom fields when they create the list. Before, it was too rigid and only supported some pre-defined fields.

Tags

The user can tag each field and use these tags as placeholders in the messages while composing them. If the user wants to include the name or personalised offer code or anything else, it is now super easy.

List Fields and Tags

Recurring Campaigns

To simplify the process of creating similar campaigns, the team came up with recurring campaigns. The customer can schedule a campaign which runs on a specified time frame. Combining this with new list feature opens up the opportunity to automate the campaign. For example, a growth hacker can automate a recurring engagement campaign for newly signed up users each week. Once the campaign is scheduled, customers can dynamically update the list each week.

Create Recurring Campaign

Duplicate campaigns

During our research, we figured out people were creating campaigns with little differences. For example, just the content changes or the time. It was painful for them to go through the same steps again and again since there was no way to duplicate the campaigns. To address these issues we came up with an option to duplicate the campaigns.

Duplicate Campaign: Confirmation

APIs for Everything

One of the questions addressed was about making the campaign flexible and extensible. There significant number of customers who uses the current call and SMS APIs. People have implemented the broad spectrum of solutions using these APIs. We decided to bring the same flexibility for campaigns and list. Once APIs are available, people can create solutions that fit their unique needs.

Contact List
Create list flow

Detailed Specifications

I created detailed documentation to communicate the design to the engineering team. It included the behaviour spec and user interface spec.

Behaviour and UI Spec