NPS Survey in HubSpot: Full Setup and Configuration Playbook
How RevBlack builds automated NPS survey programs in HubSpot: standard vs custom survey, automation setup, detractor follow-up, and the most common fixes.
Table of contents
Most companies find out a customer is unhappy when they churn. By then, the window to intervene has closed. RevBlack consistently sees the same gap across B2B SaaS companies: CS teams manually emailing customers for feedback, no systematic way to identify Detractors before they become churn, and no benchmark to track customer loyalty over time. The data exists, it just was never collected in a structured way.
An automated NPS survey program in HubSpot fixes this by capturing customer sentiment at defined moments in the customer journey, routing Detractor alerts to CS in real time, and giving leadership the trend data needed for board reporting and CX improvement decisions. When the architecture is built correctly, a single survey send can feed customer health scores, expansion pipeline, and churn prediction workflows simultaneously.
This playbook covers the end-to-end implementation of an automated NPS survey program using HubSpot's native survey tool, including the standard NPS path, the custom survey path, automation configuration, and the most common problems and fixes.
What Problems Does an NPS Survey Program in HubSpot Solve?
An NPS program in HubSpot solves the systematic visibility gap that leaves CS and Sales teams reacting to churn instead of preventing it.
Problems this solves:
- No systematic way to measure customer satisfaction at scale
- Missed opportunities to identify at-risk accounts (Detractors) before churn
- Manual, inconsistent follow-up after feedback is received
- Lack of structured data to benchmark customer loyalty over time
- CS and Sales teams unaware of which customers are likely to refer or expand
Definition of success:
- NPS survey is sent automatically at defined trigger points
- NPS score is tracked, visible, and reportable
- Survey data is captured as contact and deal properties for reporting and segmentation
When Should You Implement an NPS Survey Program?
An NPS program makes sense when leadership needs customer sentiment data but has no reliable way to collect it at scale, though a few conditions need to be in place before the automation is worth building.
Pain points that trigger this project:
- "We don't know how happy our customers are until they churn."
- "Our CS team is manually emailing customers to collect feedback, it's not scalable."
- "We have no benchmark to track customer loyalty over time."
- "We're missing expansion opportunities because we don't know who our Promoters are."
- "Leadership wants a customer health score but we have no data."
Prerequisites before implementation:
- HubSpot Service Hub Professional or Enterprise (required for the Surveys tool)
- Contacts have a valid email address and are actively managed in HubSpot
- Deal and contact lifecycle stages are defined and being used consistently
- At least one clear trigger point has been identified (e.g., 30 days post-onboarding, renewal date, product milestone)
- CS or Account Management team is ready to own Detractor follow-up
- Marketing or RevOps has access to create workflows and custom properties
Which KPIs Does NPS Reporting Impact?
An NPS program in HubSpot affects six metrics that span customer satisfaction, churn risk, and expansion revenue, giving leadership both a lagging indicator of loyalty and leading indicators of risk.
Who Is Involved in This Project?
An NPS program touches CS, Sales, and Product, each team uses the data differently, and aligning on who owns what before launch prevents the Detractor follow-up process from falling through the cracks.
What Tools Are Required?
The NPS program runs entirely inside HubSpot, no third-party survey tool is required for most implementations.
HubSpot Service Hub (Surveys): Native HubSpot survey tool used to create and send the NPS survey. Handles email delivery, response capture, and score storage on the contact record automatically.
HubSpot Workflows: Automation engine used to enroll contacts in the survey at the right trigger point, segment respondents by score category (Promoter/Passive/Detractor), send internal notifications, and enroll contacts in follow-up sequences.
HubSpot Custom Properties: Custom contact properties store NPS score, NPS category (Promoter/Passive/Detractor), survey sent date, and last survey response date. These properties enable segmentation, reporting, and workflow branching.
HubSpot Reports and Dashboards: Used to build NPS trend reports, response rate tracking, and Detractor/Promoter breakdowns visible to leadership and CS leadership on an ongoing basis.
HubSpot Sequences (optional): Sales sequences can be used to automate multi-touch follow-up for Promoters (referral/expansion nurture) or for Detractors when a CS rep needs to execute a structured save playbook.
What Do You Need to Know Before Starting the Implementation?
The answers to these questions determine the survey architecture before any configuration begins, getting them wrong forces a rebuild after launch.
Must know:
- Which trigger points should initiate the NPS survey? (e.g., 30 days post-onboarding, 60 days before renewal, quarterly cadence)
- Which HubSpot tier does the client have? (Service Hub Pro or Enterprise required)
- Who owns Detractor follow-up, a specific CS rep, the assigned contact owner, or a shared team inbox?
- What email address and sender name should the survey come from?
- Should the survey suppress if the contact has already received one in the last 90 days?
- What are the defined score thresholds? (Standard: 0–6 Detractor, 7–8 Passive, 9–10 Promoter)
Nice to know:
- Is there an existing NPS baseline the client wants to beat?
- Does the client want to include an optional open-text follow-up question?
- Are there any contact segments that should be excluded? (e.g., contacts in active support cases, recently churned accounts)
- Should Promoters be auto-enrolled in a referral or case study outreach sequence?
Might be relevant:
- Does the client use any external tools (Delighted, Typeform, Medallia) that need to be deprecated or integrated?
- Are there compliance or GDPR requirements affecting survey opt-in or data storage?
- Does leadership want a Slack or Teams notification for Detractor responses in addition to HubSpot tasks?
Standard NPS Survey or Custom Survey - Which Should You Use?
Choosing between the Standard NPS survey and a Custom Survey with an NPS module is the most important decision to make before building, and it determines the entire architecture.
HubSpot offers four survey types under Service → Feedback Surveys: Customer Loyalty (NPS), Customer Satisfaction (CSAT), Customer Support (CES), and Custom Survey. For an NPS program, the choice is between the Standard NPS survey and the Custom Survey with an NPS module. Both are available on Service Hub Pro and Enterprise.
Important: If the client wants to ask the standard NPS question alongside additional custom questions (e.g., product area rating, reason for score, open-ended feedback), the Custom Survey is the right choice. The Standard NPS survey only supports the single locked NPS question plus one open-text follow-up per sentiment group. Any more than that requires the Custom Survey.
How Do You Implement an NPS Survey in HubSpot Step by Step?
RevBlack implements NPS programs in six phases, audience first, survey second, automation third. Building the survey before validating the audience list is the most common cause of data issues on the first send.
Phase 1: Audience Setup
- Based on the pre-implementation questions, confirm whether the client needs the Standard NPS survey or a Custom Survey with an NPS module. Document the choice and the reason before building.
- Go to Contacts → Lists and create an Active List for the NPS target audience using contact, company, deal, or ticket properties as criteria. Example: Lifecycle Stage = Customer AND Became a customer date is more than 90 days ago AND Email hard bounce reason is unknown.
- Review the list count to validate volume. Flag any data issues (missing emails, incorrect lifecycle stages, missing contact owner assignments) before launch, Detractor automation depends on contact owner being set.
- Identify contacts to exclude, churned customers, internal contacts, accounts currently in an escalation. Add exclusion conditions to the list criteria or create a suppression list.
Phase 2: Build the Survey
For the Standard NPS survey path:
- Navigate to Service → Feedback Surveys and click Create Survey.
- In the left panel, select Customer loyalty (NPS). Choose your delivery method, Email or Web page, and click Create.
- On the Survey tab, configure: the From name and From email address, the email subject line (e.g., "Quick question, how are we doing?"), and the follow-up question prompt per sentiment group (Detractors: 0–6 tab, Passives: 7–8 tab, Promoters: 9–10 tab). These follow-up prompts are the only question text editable in a Standard NPS survey.
- On the Recipients tab, choose your targeting method. Select Start from scratch, click Create criteria, and add filters matching your audience. Alternatively, select Static contact lists and choose the list built in Phase 1.
- In the Frequency section, select One off or Recurring. For recurring, set the cadence (e.g., every 3 months). Review the Enroll existing contacts toggle, by default it is off, meaning contacts already in the system who currently meet criteria will not receive the survey unless this is enabled.
For the Custom Survey path (when additional questions are needed):
- Navigate to Service → Feedback Surveys, click Create Survey, and click Next (the Custom Survey option appears after clicking Next, not on the first screen).
- Select your delivery method — Email, Shareable link, Web page, or Workflow, and click Create.
- In the left panel, drag and drop questions into the survey canvas. To add the standard NPS rating block, drag the NPS module from the Question types section. Note: the NPS question text is locked even here, you can set the company name but cannot change the question wording.
- For each additional question, drag in the appropriate question type (Star rating, Radio select, Dropdown, Single-line text, Multi-line text, etc.). Click each question to edit the text, add help text, toggle required on/off, and create or assign a survey response property to store the answer. Each question needs its own survey response property.
- Configure the Recipients tab and Frequency the same way as the Standard NPS path. Note: if using Workflow delivery, skip the Recipients tab, the survey send will be triggered by a workflow action instead.
Phase 3: Configure the Automation Tab
- On the Automation tab of the survey editor, configure follow-up actions for each sentiment group. Click Create workflow next to Detractors, Passives, and/or Promoters and add actions in the right panel.
- Detractors: Create a task assigned to the contact owner (due in 1 business day). Send an internal email notification or Slack alert via webhook. Optionally enroll in a re-engagement email sequence.
- Promoters: Create a task for advocacy or referral outreach. Send a follow-up email requesting a review or referral. Optionally set a contact property to flag this contact for Marketing's promoter lists.
- Passives: Log the response. Optionally flag for re-survey at the next cycle. No immediate action required unless volume is notably high.
- To receive real-time alerts when responses come in, add users or teams in the Notifications section on the Automation tab.
- For a Standard NPS survey with a recurring cadence, note that HubSpot does not send reminder emails natively for NPS surveys. If reminders are required, build a separate workflow that checks for contacts with survey response status = Sent but not Responded and sends a follow-up email after a set number of days.
- Click Publish to activate the survey.
Phase 4: Verify Survey Response Properties Are Populating
- After the first responses come in, open a contact record that submitted the survey. In the Activity feed, confirm a Feedback Submission entry is logged.
- In the left sidebar of the contact record, look for the property group named after the survey. Confirm the following survey response properties are populated: Submitted Date, Sentiment, Primary Rating Value, and the follow-up comment if applicable. For Custom Surveys, confirm each custom question's survey response property is also populated.
- On Service Hub Pro or Enterprise (Standard NPS survey only), confirm the standard contact properties are updating: Last NPS survey rating, Last NPS survey date, and Last NPS survey comment.
- If running a Custom Survey with an NPS module and the Analyze tab shows 'Not Applicable' for the NPS score, this is a known issue. Verify the NPS module is properly mapped to a survey response property, and consider surfacing the score via the custom survey response property instead.
- Go to Service → Feedback Surveys → your survey → Responses tab to confirm all incoming responses are logged. If a response appears in the log but not on a contact record, check that the survey email was sent to the contact's primary email address in HubSpot.
Phase 5: Validate Automation
- Open the survey's Automation tab. Under each sentiment group, confirm the workflow toggle is ON.
- For a test Detractor response, verify that a task was created on the contact record, the internal notification was sent, and the contact's activity timeline shows workflow actions completed.
- If you built any additional standalone workflows in Automation → Workflows using survey response properties as enrollment triggers, confirm those workflows are on and enrolling. Check the enrollment history for skipped contacts and review the skip reason.
Phase 6: Set Up Reporting
- Go to Service → Feedback Surveys → your survey → Analyze tab. Review the current NPS score, response distribution, and trend over time. For Standard NPS surveys, this is the primary reporting surface.
- To filter the Analyze tab by a contact property (e.g., customer segment, region, or account tier), click More filters in the left sidebar and apply the filter.
- For dashboard reporting, go to Reports → Dashboards and add a contact-based report filtered by Last NPS survey rating. This gives at-a-glance distribution visibility.
- Share the Analyze tab access with CS leadership and relevant stakeholders. For async reporting, export survey response data as a CSV from the Responses tab.
What Are the Most Common NPS Implementation Problems and How Do You Fix Them?
Most NPS implementation failures in HubSpot trace back to six specific issues — most of them related to survey type selection, property mapping, or automation configuration.
Problem 1: Survey Response Properties Not Populating on the Contact Record A contact submitted the survey but the survey response property group is missing or empty on their record.
Solution:
- Confirm the survey type is Customer loyalty (NPS), not a Custom survey. Only the Standard NPS type writes to the standard survey response property group and populates the Last NPS survey contact properties on Pro/Enterprise.
- Check that the email the survey was sent to matches the contact's primary email in HubSpot. Responses to secondary or alias emails may not associate to the correct record.
- Go to the Responses tab. If the response is logged there but missing from the contact record, check for duplicate contact records with the same email address.
- For web widget delivery, confirm the HubSpot tracking code is installed on the page and the contact has an active browser cookie. Anonymous visitors will not have responses associated to a contact record.
Problem 2: Custom Survey NPS Score Shows as 'Not Applicable' in Reports When using a Custom Survey with an NPS module, the NPS score card in the Analyze tab shows 'Not Applicable' instead of a Detractor/Passive/Promoter result.
Solution: This is a known HubSpot limitation. The NPS module result in a Custom Survey does not automatically populate the Last NPS survey rating contact property.
Workaround: Build a workflow triggered by the Custom Survey submission that reads the NPS question's survey response property and writes the value to a custom contact property (e.g., 'Custom NPS Score'). Use that contact property for reporting and segmentation instead of relying on the native NPS score card.
If a true aggregate NPS score card is required, consider whether switching to a Standard NPS survey and a separate follow-up sequence for custom questions is a better architecture than embedding NPS in a Custom Survey.
Problem 3: Automation Tab Workflows Not Triggering Contacts are submitting the survey but Detractor or Promoter actions are not firing.
Solution:
- Go to the Automation tab and confirm the workflow toggle is ON. These workflows do not appear in Automation → Workflows, they are only visible and editable from within the survey editor.
- If re-enrollment is needed for contacts who submitted a previous survey cycle, confirm that re-enrollment is enabled in the workflow settings. By default, contacts who were previously enrolled will not re-enroll on subsequent submissions.
- Check the contact's activity timeline for a Feedback Submission entry. If the submission is logged but no workflow actions appear, open the workflow from the Automation tab and check the action log for errors.
Problem 4: Survey Emails Not Delivered or Low Open Rate Contacts are not receiving the survey email, or open rates are unexpectedly low.
Solution:
- Verify the From email address is connected and authenticated, SPF and DKIM records must be set up for the sending domain in HubSpot Settings → Email → Sending Domains.
- Survey emails use the Customer Service Communication subscription type by default. Contacts who have unsubscribed from this subscription type will not receive the survey, HubSpot suppresses them automatically.
- For Custom Surveys sent via email: the email contains a 'Start survey' button rather than an embedded rating, which inherently reduces completion rates vs. Standard NPS in-email rating.
- Test deliverability by sending to an internal test contact before launching to the full audience.
Problem 5: Last NPS Survey Rating Not Updating on the Contact Record Survey responses are visible in the Responses tab but the Last NPS survey rating contact property is not updating.
Solution:
- This contact property is only available on Service Hub Professional and Enterprise.
- This property is only populated by the Standard NPS (Customer loyalty) survey, not by a Custom Survey with an NPS module. In that case, use a workflow to copy the NPS module's survey response property value to a custom contact property.
- If the portal is on Pro or Enterprise with a Standard NPS survey and the property is still not updating, check for a sync delay (allow a few minutes) or duplicate contact records on the same email address.
Problem 6: NPS Score Cannot Be Added to a Custom Dashboard The client wants the NPS score visible in a shared dashboard alongside other CRM metrics.
Solution: This is a known HubSpot limitation, the NPS score card in the Analyze tab cannot be natively added to custom dashboards.
- Option 1: Use the Analyze tab as the primary surface and share access or export on a recurring schedule.
- Option 2: Build a contact-based report using Last NPS survey rating (Standard NPS, Pro/Enterprise only) for distribution visibility on a dashboard.
- Option 3 (Enterprise + Data Hub): Use the custom report builder with a dataset to calculate a rolling aggregate NPS. Scope this as a separate project.
What Are the Next Steps After Implementation?
An NPS program is a recurring system, RevBlack builds the governance cadence alongside the architecture so the data stays reliable and actionable beyond the first send.
Recurring tasks generated:
- Monitor Detractor workflow task queue weekly to ensure CS follow-up is happening within the defined SLA
- Review the survey's Analyze tab monthly with CS leadership, check NPS score trend, response volume, and sentiment distribution
- QA the audience criteria before each recurring survey cycle, remove churned customers, update lifecycle stage filters as needed
- Re-export the Promoter segment to Marketing quarterly for advocacy and referral outreach
- Verify survey response properties are still populating correctly after any portal changes (Service Hub tier changes, email domain updates, etc.)
When should you revisit this playbook?
- After 90 days: Review baseline NPS score, response rate, and Detractor workflow completion rate. Tune re-enrollment settings and suppression windows based on actual data.
- Quarterly: Validate the audience criteria reflects the current customer base. Check for contacts with outdated lifecycle stages or missing owner assignments.
- After major product changes or pricing updates: Consider an out-of-cycle NPS send to gauge customer reaction.
- After a HubSpot tier upgrade: Revisit whether newly available features unlock improvements to the current setup.
- If response rates drop significantly: Re-evaluate whether switching delivery method or adjusting the audience criteria can recover engagement.
What projects does this unlock?
- Customer Health Score: NPS is a core input to a broader health scoring model combining product usage, support ticket volume, and engagement data. For teams building the full lifecycle architecture, the Lifecycle Stage and Lead Management guide covers how NPS data feeds into lifecycle stage transitions.
- Advocacy and Referral Program: Active lists filtered by survey response Sentiment = Promoter enable a structured referral or customer reference program.
- Churn Prediction Workflow: Detractor data feeds into a churn risk scoring model to prioritize CS interventions at renewal time. For teams building a full lead and customer scoring model, the RevOps Lead Scoring Playbook covers the scoring architecture this plugs into.
- Voice of Customer (VoC) Reporting: Survey follow-up comment responses feed a qualitative reporting layer, exportable from the Responses tab.
- Renewal Playbook: NPS score captured 60–90 days before renewal is a leading indicator of renewal risk and can trigger a dedicated save workflow.




