# Send a SurveyMonkey survey when a HubSpot deal is won

> When a deal moves to Closed Won, the new customer is added to your onboarding survey and the invite goes out three days later.

- Workflow type: code
- Services: SurveyMonkey, HubSpot, Google Sheets
- Categories: Sales, Customer Support
- Published: 2026-08-10

## What it does

- Watches HubSpot for deals that move into Closed Won, so sending the survey never depends on someone remembering.
- Looks up the deal and the main contact on it to get the customer's name and email address.
- Adds that person to your SurveyMonkey onboarding experience survey and builds their email invite.
- Schedules the invite for three days after the close date, so it lands once onboarding has actually started, and logs every send to a Google Sheets tracker.

## What you'll need

- A HubSpot account with deals and contacts, and the ability to set up a notification when a deal stage changes
- A paid SurveyMonkey plan and a survey set up to send by email
- An existing email invite collector on the survey you want to send
- A Google Sheets spreadsheet to use as the tracker

## Prompt

Every time a deal is moved to Closed Won in HubSpot, I want the new customer added to my SurveyMonkey onboarding experience survey automatically, so nobody has to remember to send it. Trigger this from a HubSpot webhook that fires on the deal stage change, and only continue when the new stage is Closed Won.

Start with HubSpot Get Deal for the deal id on the webhook payload, requesting associations so I get the associated contacts along with the deal name and the close date. Take the primary associated contact and call HubSpot Get Contact to grab that person's first name, last name, and email address. If the deal has no associated contact, or the contact has no email address, stop and do nothing rather than sending a broken invite.

Add that person to SurveyMonkey with Create Contact using their email, first name, and last name. Then, on my existing email invite collector for the onboarding experience survey, use Create Message to build the invite, Add Message Recipient to attach the contact I just created, and Send Message to schedule it.

Do not send the invite the same day. Schedule it for three days after the deal close date, so the survey lands once onboarding has actually started. The SurveyMonkey Send Message operation supports scheduling a future send time rather than only sending immediately, so this should be one scheduled send and not a second workflow that waits.

Last, append a row to my Google Sheets tracker with Append Values recording the deal name, the contact email, the close date, and the scheduled send date, so we always have a record of who was surveyed and when.

## How to customize

- Change the delay. Three days is the default, but you can send the same day or wait a week.
- Point it at a different survey, or at a different email invite on the same survey.
- Add columns to the tracker, such as deal amount, owner, or pipeline.
- Limit it to certain deals, for example only deals above a certain value or in one pipeline.

## FAQ

### Will this work on a free SurveyMonkey plan?

Not for this version. Sending a survey by email invite requires a paid SurveyMonkey plan. Free accounts can share a survey by link instead, so if you are on the free plan you would send the customer a survey link rather than a scheduled email invite.

### Do I need to build a new survey for this?

No. It uses the onboarding survey you already have, along with the email invite you already send from it. Nothing new gets created on the SurveyMonkey side except the individual invite for each new customer.

### Why wait three days instead of sending right away?

A survey that arrives the same hour a contract is signed asks about an experience the customer has not had yet. Waiting three days means onboarding is genuinely underway, so the answers are about the real thing. You can change the delay to whatever fits your onboarding.

### What happens if the deal has no contact on it?

Nothing gets sent. If the deal has no contact attached, or the contact has no email address, the workflow stops rather than creating an empty invite. That keeps bad records out of your survey list.

### What if a deal moves in and out of Closed Won?

Each move into Closed Won is treated as a new event, so a deal that bounces back and forth could be queued more than once. The Google Sheets tracker gives you the record of who was already surveyed, and you can add a check against it if that happens often in your pipeline.

Use this prompt in General Input: https://www.generalinput.com/prompts/send-a-surveymonkey-survey-when-a-hubspot-deal-is-won