Write NPS scores onto the customer record
NPS responses update the matching Salesforce Contact, putting the score and the comment on the customer record.
New submission on your customer feedback survey
Update the matching Contact in Salesforce and log the score on the record
One-directional. A submission triggers the action — nothing is written back into your form.
Survey results usually live in a reporting tool nobody opens during an account review. Writing the score onto the Contact means the account manager sees it where they are already looking, next to the open cases and the renewal date.
Customer success teams surveying after a project or a support interaction get the most from this. The comment matters more than the number: a seven with a specific complaint attached is a conversation, and it is on the record before the next call is booked.
Setting it up
- 1
Add the fields to Salesforce first — a number field for the score, a long text field for the comment, and a date field for when it was given. Nothing can be written until they exist.
- 2
Send the survey to a known audience by email or personal link, so the address on the response matches the one held on the Contact.
- 3
In Zapier, point the "New Submission" trigger at the feedback survey.
- 4
Add a Salesforce Find Record step on Contact matched by Email Address, and leave create-if-not-found off. An unmatched response should be reviewed, not turned into a new Contact.
- 5
Add an Update Record step on Contact using the record ID the search returned.
- 6
Map the 0–10 question to the score field. It arrives as text, so put a Zapier Formatter step in between to convert it to a number.
- 7
Map the reason for the score into the comment field, and set the date field to the submission date so an old score is never mistaken for a current one.
- 8
Add a filter after the search so the Zap stops when no Contact is found, then test with a real customer address before switching it on.
What maps where
Using the Net Promoter Score Survey as the starting point. These are its real fields — swap in your own and the mapping works the same way.
| Form field | Salesforce |
|---|---|
| Email Address | Matching key that finds the existing Contact; nothing is created |
| On a scale of 0–10, how likely are you to recommend us to a friend or colleague? | Custom NPS score field on the Contact |
| What's the main reason for your score? | Custom comment field, shown beside the score |
| What could we do to improve your experience? | Logged on a follow-up Task for the account owner |
| Which of our products or services did you use? | Custom field recording what the score refers to |
Variations worth knowing
A Zapier filter on the score can add a Create Record step on Task, owned by the Contact's account owner and due the next working day. Passives and promoters only update the record; detractors put something in a person's list.
Account managers work at the account level, not the person. Add a second Update Record step on the Contact's Account, writing the latest score and date there as well. Contact fields keep the individual history; the Account field shows where the relationship stands now.
If something isn't arriving
People answer from a personal address, or the Contact is stored under an alias. Send the survey to the address Salesforce holds, and route the unmatched ones to a spreadsheet or a channel for someone to match by hand rather than creating Contacts blindly.
The answer arrives as text, and an option labelled something like "9 — very likely" is not a number. Add a Zapier Formatter step to pull out the digits before the update, or set the survey's options to bare numbers.
Frequently asked questions
How does a survey response find the right Contact?
On the email address. Send the survey to the address held in Salesforce and the Find Record step matches it directly. A public anonymous link has nothing to match on, which is why this flow suits surveys sent to known customers.
Does the previous score get overwritten?
Yes, if you write to a single field. Keep the history with a custom object or a Task per response and let the Contact field hold only the latest. Every response also stays in formformform, so the earlier scores are never actually lost.
Can we run the survey anonymously and still use this?
No. Updating a record means knowing whose record it is. Run anonymous surveys as a separate form and read those results in formformform, keeping the identified survey for feedback that has to reach the account team.
Related automations
- Add webinar registrants to a Campaign
Webinar registrations create or update a Contact and add that person to the right Campaign as a member.
- Create a Lead from every demo request
Each demo request becomes a Salesforce Lead with source and company filled in, ready for an SDR to work.
- Log quote requests as pipeline Opportunities
Inbound quote requests arrive as Opportunities at the right stage, with budget and scope already on the record.
- Open a Case from every help request
Submissions on your help form open a Salesforce Case with priority and origin set for assignment rules to route.
- Route partner applications into a review queue
Partner and vendor applications land in Salesforce as records in a review queue, not as forwarded email.
- Add newsletter signups to Zoho CRM as tagged contacts
Every newsletter opt-in becomes a Zoho CRM contact carrying a tag you can build a campaign list from.
Build the form first
The automation needs somewhere to fire from. Publish a form, connect it once, and every submission from then on runs this flow.
Start free