logo
PagesLinks•

Make the form required or let visitors skip it

Mandatory Forms? removes the close button; otherwise visitors can skip. What happens after submit or skip: same short link, Smart Rules, WhatsApp, cookie.

Avatar for undefined
CodeQR Team
콘텐츠 팀

After reading this page you can decide whether a visitor must fill in the form to reach the destination or may skip it, and you can predict where they land afterwards, including a WhatsApp conversation, an app store, or a Smart Rules destination.

Availability

  • Plan: Business and above (pricing). On lower plans the toggle is disabled and shows a Business badge.
  • Where: link builder or QR code editor → Pre-redirection form → Mandatory Forms?. The checkbox is enabled only with Use platform form and a selected page. External forms can always be closed.

Required or skippable

Skippable (default)Required (Mandatory Forms? checked)

Close button in the modal

yes

no

Visitor path

fill in and submit, or close and continue

fill in and submit

Works with

CodeQR Page form, external form

CodeQR Page form only

What CodeQR records

FORM_FILLED or CONTINUED_WITHOUT_FORM in the visitor's cookie

FORM_FILLED

Turning it on: open the link (⋮ → Edit) or the QR code, tick Mandatory Forms? under the selected page, and click Save link (on a QR code, Save QR Code). Via the API, send "isFormMandatory": true together with pageId and pageUrl; without a pageId the API answers 400 CodeQR page required for form submission.

The Pre-redirection form section with a platform page selected and the Mandatory Forms? checkbox ticked

The visitor modal on a phone with a required form: title, Name and Email fields, the consent checkbox and the button, and no close button anywhere

A required form only stops visitors while its page is published. If the page is unpublished, they go straight to the destination, so a printed QR code keeps working.

What happens after the form

  1. Submit. CodeQR saves the response and sends the visitor back through the same short link with a marker that says "form done". The link then behaves like any other CodeQR link: Smart Rules, iOS Targeting, Android Targeting, Geographic Targeting and Link Cloaking all apply. The visitor lands on the destination that those rules choose.
  2. Skip (skippable forms only). Same path, with a "continued without form" marker. No completed response is saved.
  3. Either way, CodeQR sets a skipForm cookie for one hour, scoped to that link or QR code. During that hour the same browser goes straight to the destination; after that, the form shows again. Skipping is as sticky as submitting.
  4. The click or scan was already counted when the visitor first opened the link, before the form. Coming back through the link after submitting does not count a second click if it happens within five minutes.

Where "the destination" is, per type:

Link or QR codeAfter the form the visitor gets

Short link, dynamic URL QR code

the Destination URL, or the URL chosen by Smart Rules and targeting

WhatsApp QR code

https://wa.me/<number>?text=<your message>. WhatsApp opens with the message pre-filled

Wi-Fi, vCard, text and other dynamic QR types

the QR code's own display page

Query parameters on the short link travel with the visitor. Someone who opened https://go.example.com/promo?utm_source=newsletter lands on https://example.com/promo?utm_source=newsletter, whether they submit or skip, so your destination's analytics sees the campaign. If the Destination URL already has that parameter, the visitor's value replaces it and the other parameters stay. WhatsApp QR codes and the display page of other QR types do not receive them. The utm_* values are also saved with the response and appear in the CSV export.

The page's After Submission settings (thank-you message, redirect URL) belong to the standalone page and are not shown here, because the redirect to the destination replaces them.

Choosing

  • Required when the destination is the reward (an ebook, a coupon, a document) and you would rather have fewer, real leads than traffic. Expect a drop: a public contact form converts under 10% of the people who see it, and mobile forms convert several points below desktop; every extra field costs more.
  • Skippable when the destination is your product, menu or listing and the form is a bonus. You keep the traffic; you count how many chose to leave their contact.
  • Legal note. In the EU and UK, consent is not "freely given" when access to a service is tied to consenting to marketing; in Brazil the LGPD voids generic authorisations. A required form should collect what you need to deliver the promised thing, and the consent text should say what you will do with it. Keep the privacy policy link visible; CodeQR stores the consent text with each response, and the time of consent when Require a consent checkbox is on. With it off, the form only shows a notice and no consent time is recorded.

Verify it works

# first visit: the form page (200), one-hour cq_id cookie
curl -sI -A "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X)" https://go.example.com/promo | grep -iE "^HTTP|x-pathname"
# HTTP/2 200
# x-pathname: /go.example.com/pre-redirection/promo/link

# after submit or skip: the browser carries skipForm and gets the destination
curl -sI -b "skipForm=FORM_FILLED" https://go.example.com/promo | grep -iE "^HTTP|location"
# HTTP/2 302
# location: https://example.com/promo

# query parameters travel with the visitor
curl -sI -b "skipForm=FORM_FILLED" "https://go.example.com/promo?utm_source=newsletter" | grep -i location
# location: https://example.com/promo?utm_source=newsletter

# WhatsApp QR code after the form
curl -sI -b "skipForm=FORM_FILLED" https://go.example.com/wa-qr | grep -i location
# location: https://wa.me/5511999999999?text=Hi%2C%20I%20want%20the%20catalog

In a browser: open the link in a private window, submit, and watch the address bar go from the short link to the destination.

Troubleshooting

The visitor closed the modal and reached the page anyway

The form is skippable, or it is an external form (always skippable). Tick Mandatory Forms? on a platform page and save.

The form shows the first time and never again while I test

The one-hour skipForm cookie. Open a private window for each test, or clear cookies for the link's domain.

UTM parameters do not reach my landing page after the form

The redirect after the form keeps the query string of the URL the visitor opened, so check that the URL carries the parameters and that it is a link or a URL QR code. To tag every visit, put the UTM values on the destination URL in the link builder (UTM Builder); a value on the opened URL replaces the same parameter there.

The visitor lands on the destination and not on the Smart Rules variant I expected

The rules ran after the form exactly as they run without it. Check the rule order and the visitor's device or country as usual: Send each visitor to the right destination with Smart Rules.

Related articles