Calculate an average customer satisfaction rating

Steal this HubSpot workflow to calculate an average satisfaction rating across all contacts at a company

Use this template in Arrows

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

Calculate an average customer satisfaction rating
Made by
Arrows
Category
Customer Success
Type
Workflows
Tools used
HubSpot

Steal this cheat sheet to run CS 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 our newsletter, which includes new posts added to The Vault.

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.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.