After sending: message, discount code and redirect
Choose what a visitor sees after sending a form: a message with an optional discount code, or a redirect. Plus the tracking events for Google Tag Manager and pixels.
After a visitor sends a form, you either show a message or send them to another page. Set it in the form editor under Form settings, tab General, group After sending.
Show a message
Choose Show a message and write the Message after sending. The message replaces the form once the submission is accepted.
The message can contain Liquid and simple HTML, for example your shop's name, the first name of a logged-in customer or a link. See Liquid and HTML in your texts.
Discount code (optional)
Enter a code in Discount code (optional) and it is shown with the message, after the words "Your discount code:".
- Create the code in Discounts in your Shopify admin first. Workflow Forms shows the text you entered; it does not create or check the discount.
- Every visitor who sends the form sees the same code.
Go to another page
Choose Go to another page and fill in Page:
- A page of your shop, as a path:
/pages/thank-you. It opens in the visitor's language. - Or a full
https://link.
In the editor's Test like a visitor mode a redirect is not followed; the preview tells you where visitors would go instead.
Per language
The message and the redirect page can be translated per language in the translate view. An empty redirect in a language uses the page of the main language. See Languages.
Track sent forms (Google Tag Manager, pixels)
Each accepted submission is announced on the page, so you can count conversions.
For Google Tag Manager or your theme's code, the page receives the event workflow-forms:submitted with the form handle and the submission ID:
document.addEventListener("workflow-forms:submitted", (e) => console.log(e.detail))
Custom pixels in Settings > Customer events receive the same as the custom event workflow_forms_submitted:
analytics.subscribe("workflow_forms_submitted", (event) => { /* event.customData.handle */ })
The events carry no submitted value and no personal data, only the form handle and the submission ID. The same snippets are on the app's Help page.
What happens when a submission is refused
The form is checked on our server when it is sent, not in the visitor's browser.
- Invalid values or a blocked email domain: the server answers with the errors, the form stays open and shows them at the fields, in the visitor's language. On a multi-step form it jumps to the first step with an error.
- Too many attempts from one visitor: "Too many attempts. Please wait a moment and try again."
- Your plan's submissions are used up: the form cannot be sent and the visitor sees an error. See Plans and pricing.
Refusals can start a workflow of their own. See Shopify Flow triggers.
Next steps
- Shopify Flow triggers - act on each submission.
- The submissions inbox - read what was sent.
