Workflows
What your survey does with a response — notifications, reminders, actions, analysis and Shopify write-back
Workflows are everything a survey does after someone responds. Open a survey, go to Settings → Workflows, and pick a tab:
Notifications
Who on your team is emailed when a response comes in
Reminders
A one-time nudge to people who were sent or shown the survey but didn't respond
Actions
Rules that run when certain answers are given — webhooks, emails, integrations, Shopify
Analysis
Sentiment analysis and smart classification of responses
Shopify
Writing responses, tags and customers back to your Shopify store (Shopify accounts only)
Every tab shares one Save Changes button.
Notifications
Email notifications decides when Zigpoll emails your team about this survey:
Email for every partial or complete response
Email only for completed responses
Email only when the respondent gave an email address
Email only when there is a write-in
Do not email me
Notifications go to your account's recipients unless you enter different addresses in Notification email recipients. See what a notification email includes, plus account-wide recipients, weekly recaps and troubleshooting, in Notifications.
Reminders
Nudge Non-Responders sends one reminder to anyone who was sent or shown the survey but hasn't answered. The reminder cancels itself if they respond first. Set the delay, and optionally customize the reminder subject (email) or message (SMS).
Nudge Non-RespondersActions
The Actions tab runs actions at the survey level, based on how someone answers across your entire survey.
How it works
Click Add Action Logic to create a new rule.
Set one or more conditions — for example "survey is completed", "survey is partially completed", or a specific question's answer. Conditions can be combined with AND/OR logic.
Choose one or more actions to trigger when the conditions are met.
Press Save Changes.
Available actions
trigger webhook — Send a POST request to a URL with the full response data.
send email — Send an email template to the respondent (send email to respondent), to your notification recipients (send email to myself), or to addresses you enter (send email to address). send survey request emails the respondent another survey.
Integration actions
If you have integrations connected, their actions appear automatically. For example:
Slack — send a notification to a Slack channel
Jira, ClickUp, HubSpot — create an issue, task or deal
Zendesk, Gorgias, Richpanel, Gladly — open a support ticket or conversation
Notion — add a row to a Notion database
Klaviyo — subscribe to klaviyo list adds the respondent to a Klaviyo list you pick. Use it when only some respondents should join, for example those who give a certain answer. See Klaviyo for list options and the marketing-consent warning
Mailchimp, Drip, Brevo, dotdigital, Omnisend, Marketo — subscribe or add the respondent as a contact
Braze, RudderStack, Customer.io, Attentive, Iterable, Permutive — track the response on the respondent's profile
Google Sheets — write response data to a Google Sheet. Zigpoll creates the sheet automatically when you save, with headers based on your survey questions — you'll be emailed a link when the first response comes in. See Sync Survey Responses to Google Sheets
Shopify actions
If you have a Shopify store connected, these actions are available:
add tag → add customer tag / add order tag
add metafield → add customer metafield / add order metafield
generate reward → generate discount code, add store credit, add free shipping
Saving the answer with {{ value }}
Tag and metafield actions take a value. Enter {{ value }} to save the submitted answer instead of fixed text. One rule then covers every answer option, instead of one rule per option. For tags, pick response in the dropdown next to the field, and Zigpoll fills in {{ value }} for you.
On a question's own logic,
{{ value }}is that question's answer.On the Workflows Actions tab,
{{ value }}is the answer to the first question named in the rule's conditions. If the rule only says "survey is completed", it's the first answered question in the survey.For a multi-select answer,
{{ value[0] }}is the first selected option,{{ value[1] }}the second, and so on.
Why a literal {{value}} shows up in Shopify. The placeholder must be the whole value. Zigpoll only replaces it when the field holds nothing but {{ value }} (spaces don't matter) or {{ value[n] }}. Anything else is written exactly as typed:
Text around it, like
survey-{{ value }}— write a fixed tag instead, or tag with{{ value }}alone.Other brackets, like
{value}or[[value]].{{ value }}typed into Shopify Customer Tag on the Shopify tab. That field is always a fixed tag; use an add customer tag action for answer-based tags.
On the Actions tab, if no answered question can be found for the rule, Zigpoll skips the write rather than saving the placeholder.
Combining multiple actions
You can add multiple actions to a single rule. For example, when a survey is completed you could send a Slack notification, create a Jira issue, and subscribe the respondent to a Klaviyo list. Adding the same tag to both the customer and the order is fine. Shopify never stores a tag twice on the same record.
You can also create multiple independent rules with different conditions and actions by clicking Add Action Logic again.
Analysis
Sentiment analysis — scores the sentiment of each Write-In. On by default.
Smart classification — sorts each response into one of the labels you define (for example Shipping, Product quality, Price). Turn it on and enter your labels. Zigpoll classifies new responses as they arrive.
Shopify
Shown for Shopify accounts only. These settings write survey data back into Shopify whenever a response is tied to a matching order or customer.
Write to order details
Adds each answer to the order's Additional Details section.
Write to order notes
Adds the answers to the order's Notes.
Write to customer notes
Adds the answers to the Shopify customer's notes.
Write to customer metafields
Writes each answer to its own metafield on the customer, for use in Flow, segments and themes. Turning it on shows Metafield Namespace.
Tag customers
Tags the Shopify customer. Set the tag in Shopify Customer Tag (default Completed Zigpoll Survey). On by default.
Create new customers
When a response includes an email that isn't a Shopify customer yet, creates the customer.
Accepts marketing
See below.
More Options → Order lookup attempts
Shopify processes orders asynchronously, so order data can lag the response. Zigpoll retries the lookup by default; set it lower if you'd rather your actions and integrations fire sooner.
When Zigpoll writes to Shopify
Everything on this tab, the Shopify actions, and the Shopify Flow triggers run together, once the response settles:
About a minute after the last question, when the person completes the survey.
About 10 minutes after their last answer, when they stop partway, or when Allow edits is on. Partial responses are written too.
For order-based surveys, Zigpoll then looks up the order, retrying for several minutes if Shopify hasn't finished processing it (see Order lookup attempts). So a tag or note can take a few minutes to appear. Refresh the customer or order in Shopify before assuming it failed.
Order Details and Order Notes reach other systems
Zigpoll's post-purchase templates turn Write to order details on. To stop writing to the order while keeping the data in Shopify:
Open the survey and go to Settings → Workflows → Shopify.
Turn off Write to order details and Write to order notes.
Keep Write to customer metafields on, or add an add order metafield action on the Actions tab if you need the answer on the order.
Press Save Changes.
Metafields aren't printed on packing slips or sent to fulfillment apps unless something is set up to read them.
What Zigpoll writes on the order:
Additional Details: one line per question. The name is
Zigpoll:followed by the question's handle; the value is the answer. Options in a multi-select answer are separated by the delimiter set under Settings → Data Export → Delimiter (a comma by default). For a form question, each field is written asLabel: value, and repeated labels are numbered (Preferred Time 1,Preferred Time 2).Notes: a block between
*** Start Zigpoll ***and*** End Zigpoll ***, onehandle: answerline per question. A later write replaces the block instead of adding another.
Colons or slashes break my importer. The field names can't be renamed, and Zigpoll: always contains a colon. You can remove special characters from the rest: open the question, turn on Custom handle, and enter a plain handle. Slashes inside an answer come from the answer option text. If the importer still rejects the fields, turn off Write to order details.
Metafield namespace and key
Use these to find Zigpoll's data in Shopify Flow, customer segments and Liquid.
Write to customer metafields writes one customer metafield per question:
Namespace: the Metafield Namespace field. If you never change it, Zigpoll writes to
zigpoll.Key: the question's handle. That's the question title, unless you set a Custom handle on the question.
Type:
multi_line_text_field. If you've already created a metafield definition with that namespace and key and a different type, Zigpoll retries with the definition's type.
To pick an exact namespace and key for one question, open the question and turn on Custom metafield configuration, in the question's Tracking settings card. It appears once Write to customer metafields is on. Enter a Namespace and Key, such as zigpoll and hear_about_us. A short key is much easier to reference than a full question title.
add customer metafield and add order metafield actions take the namespace and key together as namespace.key in the first box, and the value — fixed text or {{ value }} — in the second.
In Shopify Flow, reference the metafield by that namespace and key, for example zigpoll.hear_about_us. Survey answers are also in the Flow trigger's own Survey data; see Shopify Flow.
Why a customer tag or metafield doesn't appear
It hasn't been written yet. Writes happen a minute or more after the survey is completed, and about 10 minutes after the last answer on a partial response. See When Zigpoll writes to Shopify.
The response isn't tied to a Shopify customer. Zigpoll can only tag a customer it can identify:
On post-purchase surveys: the customer on the order.
On any survey: an email address in the response that matches a customer, or creates one when Create new customers is on.
When passed in: a
shopify_customer_idpassed to the survey as metadata.
A guest visitor who never gives an email has nothing to tag. Neither does an order with no customer attached. Order tags and order metafields need the order instead. Email and link surveys only have the order if the link passes it, such as ?shopify_order_id=.
Tag Customers is off, or you expected an answer-based tag from the Shopify tab. Answer-based tags are add customer tag actions.
The value was too long or empty. Order tags are cut to 40 characters and customer tags to 255. An action whose {{ value }} resolves to nothing writes nothing.
A metafield definition has a type the answer doesn't fit. If you created the definition yourself, check its type in Shopify. Text types always work.
What Accepts Marketing does
When Zigpoll has an email address for the respondent, Accepts marketing marks that Shopify customer as subscribed to email marketing, and to SMS marketing when the survey collected a phone number. It applies to customers Zigpoll creates and to existing customers who aren't already subscribed. It never unsubscribes anyone.
Leave it off unless your survey asks for marketing consent. In accounts created on or after August 13, 2026, new surveys start with it off. In older accounts it's on unless you turn it off.
Last updated

