Browse all templates

Calculate an average customer satisfaction rating

You'll also be subscribed to the Happy Customers newsletter.
Made by
Arrows
Category
Customer Success
Type
HubSpot Workflows
,
Tools used
HubSpot
,

Deliver a white-glove experience for every buyer with Arrows.

Schedule a demo

Capturing the sentiment of your customers on a regular basis can be a great way to create a baseline for account health.

But, by default HubSpot’s satisfaction tool only captures scores for “contacts” who complete a survey.

There’s no way to see how satisfied an account is overall. But we can use a 2 workflow to aggregate the data into a single account satisfaction score on the company record.

Here’s how it works:

PRE-WORK:

Add contact properties for:

  • Current Satisfaction Score
  • Previous Satisfaction Score
  • Calculated: Satisfaction Total Minus Previous

Add company properties for:

  • Satisfaction Score Respondents
  • Satisfaction Score Total
  • Calculated: Satisfaction Score Total / Satisfaction Score Respondents = “Average Satisfaction Score

Contact-based workflow:

1. First we are going to create a contact workflow triggered when “Last NPS Survey Rating” equals “Is Known”

2. Add a format data action to set the “Last NPS Survey Rating” to an absolute number (by default this property is an enumeration that can’t be calculated)

3. Copy the value of step 2 to the “Current Satisfaction Score” property

4. Use an IF/THEN branch to check if “Last NPS Survey Date” is less than 91 days ago

5. IF more than 91 days, we want to discount the score so we will:
  • Copy the property “Satisfaction Total Minus Previous” to the “Satisfaction Scores Total” property on the company record
  • Decrease property “Satisfaction Respondents Total” by 1
  • Copy the property “Satisfaction Respondents Total” to the “Satisfaction Respondents Total” property on the company record 4.

6. IF more than 91 days, we want to update the score and use a custom format data action to Add the “Satisfaction Total Minus Previous” and “Current Satisfaction Score” properties together

7. Copy the “Satisfaction Score Total” to the “Satisfaction Score Total” on the company record

8. Use an IF/THEN branch to check if the “Previous Satisfaction Score” property is known

9. IF no previous score THEN Increase the “Satisfaction Respondents Total” by 1

10. Copy the “Satisfaction Respondents Total” property to the “Satisfaction Score Respondents” property on the company record

Company-based workflow:

1. Trigger when “Average Satisfaction Score” is known

2. Create an If/Then branch based on average score ranges

3. Set the “Satisfaction Score Rating” to 🟩, 🟨, or 🟥 based on the score range

Aggregating satisfaction scores from all contacts into a single account satisfaction score on the company record gives us a better overall picture of how satisfied an account it.You could further segment your scoring using associated labels to split scores for “Champions” vs “Account Users” vs “Decision Makers” for example.

Steal this cheat sheet for running customer success in HubSpot

Not sure where to start? Download the 7 playbooks you need to scale across the customer journey.

You'll also be subscribed to the Happy Customers newsletter.

Deliver a white-glove experience for every buyer with Arrows.

Within minutes of receiving their first Arrows sales room, a prospect responded: 'Love the shared workspace format. Very efficient for storing all relevant info specifically for us.'

Evan Friedkin

Head of Business Development, Roobrik