Introducing Nara, our happiness bot

How we built a system for measuring our Founder Net Promoter Score

Nadim Lahoud
Capital Construct

--

In my last post I wrote about how we are building a community of founder-promoters here at Oxford Capital and measuring our performance by using NPS®. I promised to cover the technical aspects of how we went about procuring and eventually building the system ourselves in-house. The very fact that we managed to build Nara with little-to-no coding skills is a testament to the quality of tools, APIs and help available to everyone on the web today.

A very bad portrait of Nara, our home-grown NPS bot

Step 1: Assessing requirements

The system needs to:

  • Collect responses to the all important question: Would you recommend Oxford Capital to a fellow founder?
  • Collect responses from founders in an easy, fast and mobile friendly way that is coherent with our existing brand
  • Not add significant burden to our team to run
  • Collect demographic data about the founder
  • Assign responsibility for individual responses to a member of the Oxford Capital team (whoever ran the meeting that is being rated)
  • Ensure and encourage the founder to remain anonymous in the review process unless he or she wishes to receive a response to a complaint
  • Flag complaints immediately so that they can be dealt with quickly
  • Present data back to our team effectively and concisely

Step 2: Buy or build?

We looked at all of the off-the-shelf purpose-built NPS platforms out there*, all failed one or more of the requirements listed above. Typically:

  • They were built for batch surveying, rather than the ‘trickle’ canvassing in our use case.
  • They required our team to have a separate set of credentials and to a log-in to yet another platform, adding too much friction to an already busy deal team.
  • They were rather expensive.

*Shout-out to C4 Ventures who were the inspiration for a lot of this — they created a whole proprietary web platform to gather feedback from founders and helped us with their lessons-learnt.

Step 3: Let’s build!

Goal: Build a tool for measuring NPS after each first meeting with a founder while adding as little overhead to our team as possible and using platforms and tools in our existing stack as much as possible.

3.1 Meet the stack

  • Slack: The front-end for our team, no new login required. Team members can request a survey be sent out after a meeting simply by submitting an email address to a chat bot (Nara), who can also serve up a summary of performance when prompted — right there in our existing workspace.
  • Typeform: To create beautiful responsive forms with conditional routing to send to the founders we meet.
  • Mailgun: To push on-demand custom HTML emails containing a properly addressed survey to founders.
  • OnDMARC: Shameless plug for our awesome portfolio company but also essential to make sure Mailgun is configured properly to maximise the deliverability of our survey emails without compromising our domain.
  • Zapier: The glue that pulls everything together with next to no code.
  • MadKudu: Sales data enrichment API to look-up the first name and company name from the email address submitted by the team member.
  • Google Sheets: To collect the data and display outputs in a dynamic dashboard.

3.2 Logic and flow

First, our team member finishes an initial founder meeting and on the same day asks Nara to create and send an NPS form:

Thanks @dariuskumana for guest starring in this one :)

A few things happen in the background here:

  1. Text in the Slack channel is parsed to detect an intentional NPS request from normal chatter: Any string starting with the magic three letters and containing a valid email address will trigger the script.
  2. The email address is extracted from the rest of the string.
  3. The email address is piped to MadKudu and returns: Confirmation that it is a valid address, the name of the individual, and their company.
  4. A custom email is then sent by Mailgun from our domain with the Typeform, addressed to the founder in question and with a hidden pre-filled HTML field which ties the form to the team member who requested it. Although the form itself is anonymous, we still want each submission to be tied to a specific team member so we each know how we can improve.

Here’s what the email looks like to founders:

3.3 Results and data-crunching

Clicking on a score in the email then launches part two of the form in a browser, which is optional but the majority of respondents seem to fill-in anyway. It includes demographic and sector information about the respondent (the form is otherwise anonymous), as well as a field to leave a free-form comment or complaint.

Each new submission creates a new row on a Google Sheet (“the collection sheet”). Here we added another step which is alluded to in the email: A two week delay between the time a submission is entered into Typeform and when the result comes through to the collection sheet and the resulting team dashboard. This is meant to increase anonymity. Importantly, however, the results are immediately available inside the Typeform platform but only one person in the team has access to this and it is only checked for debugging purposes when things go wrong (never!).

The raw data in the collection sheet is then crunched into some nice time-series data dashboards in Google Sheets which display the evolution of our score over time for the team and each member, as well as all the segmentations that one can imagine. Some questions we are trying to answer: What is the overall trend? Are we scoring better in one sector than another? Are we doing badly with a certain age group? How can we change that?

As a bonus, Nara is also programmed to serve a quick summary of the results within Slack when asked nicely.

Parting notes

For a team that loves finding and backing great digital products, making Nara in-house was a lot of fun. We’ve probably come close to the limits of what can be done with ‘little-to-no-code’ tools and so in our next project I’ll be attempting to delve into some Python.

Now give Nara a clap! 🤖👏

--

--