Loading tutorials…
Loading tutorials…
Form Analytics tells you the exact field where users abandon — and how many seconds they hesitated before quitting. On a checkout, lead form, or signup, this is the data that converts gut-feel form redesigns into evidence-based ones.
Who this is forTeams running ecommerce checkouts, B2B lead forms, SaaS signup forms, or multi-step onboarding. If your form-completion rate is below 50% and you've redesigned the form twice with no improvement, field-level data is what's missing.
What you'll need
Step 1
VWO auto-detects forms on pages with SmartCode installed. No code changes needed — but auto-detection works best on standard HTML form elements.
Open Insights → Form Analytics → New Form Report.
Enter the URL of the page containing the form. VWO scans the page and lists all detected forms by their HTML <form> tag attributes.
If your form appears in the list — good, auto-detection worked. Pick it and proceed.
If your form doesn't appear: usually because (a) the form is rendered dynamically after page load (SPA delayed render), (b) the page uses custom inputs that aren't standard <input>/<select>/<textarea>, or (c) the form is inside an iframe.
For dynamic forms, VWO supports manual form-element selection via CSS selectors. Click "Manually Define Form" and pick the form container element by clicking it in the visual editor.
For iframe forms (e.g., embedded Stripe Checkout, HubSpot forms), VWO can't see inside the iframe due to browser security. Use Form Analytics on your own page form, then track post-iframe-submit via Custom Conversion.
Step 2
VWO captures interaction per field automatically once the form is selected. Verify each field is detected with the right friendly name.
After selecting the form, VWO shows a list of fields it detected: name, email, phone, address, etc., based on the input element's name/id/placeholder attributes.
Review the friendly names. VWO auto-generates them from the input attributes. If your input is named 'em' or 'fld_3', the friendly name will be unintelligible. Edit each to a real label: 'Email Address', 'Phone Number', etc.
Critical: friendly names show in every report. Clean labels here pay back for the next 12 months of analysis.
For sensitive fields (credit card, SSN, password): VWO automatically masks the values in recordings, but you should also confirm the field is tagged with autocomplete="cc-number" or similar standard attributes. Auto-masking respects these.
Save the form configuration. From this point on, VWO captures interaction events (focus, blur, value change, error) on every field for every form session.
Step 3
Open the form in incognito. Fill it out partially. Abandon. VWO should show your session in Form Analytics within 5-15 minutes.
Open the form page in a clean incognito browser. Click into the first field, type, click into the second field, leave the third empty, close the tab.
Wait 5-15 minutes. Open Insights → Form Analytics → your form report.
Check the Sessions tab. Your incognito session should appear with: 1st field interacted, 2nd field interacted, 3rd field skipped, session abandoned (no submit).
If your session doesn't appear: check (a) SmartCode is firing on the form page (window._vwo_code should be defined in DevTools Console), (b) the form is in the right URL pattern, (c) your IP isn't in the exclusion list (Settings → IP Exclusion).
Also verify a successful submit: complete the form fully and submit. The form session should now show 'Completed' in the report. If submits aren't tracked, the form's submit event isn't firing as expected — usually because the form uses JavaScript-based submission rather than native HTML form submit.
Step 4
The core view: which fields users start, struggle with, and abandon. This is where the actionable findings live.
Open the form report. Top metrics: Form Starts (users who interacted with any field), Form Completions (users who submitted), Form Completion Rate.
Per-field metrics: Field Interactions (% of form starters who touched this field), Average Time on Field (seconds), Refills (number of times user re-entered this field), Error Encounters (validation errors per field), Drop-off (% of users who abandoned after this field).
Headline finding: which field has the highest drop-off? That's your problem field. A 30%+ drop-off on a single field is almost always a fixable UX issue.
Second-order findings: high time-on-field (>30s) suggests confusion or hesitation. High refill rate suggests validation friction. High error encounters suggest validation rules are too strict or unclear.
Common patterns: phone field (formatting confusion), address field (autocomplete not working), credit card field (CVV/format errors), password field (rule violations not shown clearly).
Step 5
Form Analytics generates hypotheses; A/B tests validate fixes. Right-click any field with high drop-off and create a targeted test.
Right-click the problem field in the report → Create A/B Test for This Field. VWO pre-fills the test URL with the form page.
Design the variant addressing the specific friction. Examples:
— High time-on-field on phone: add a placeholder showing format ("+1 555 123 4567"), or use input masking for the format.
— High refill on password: show password requirements inline ("8+ characters, 1 number") visible while typing.
— High error rate on credit card: add real-time validation with friendly error messages, or use a card-detection library to auto-format.
— High drop-off on optional field: make it explicitly optional ("Phone (optional)") or remove the field entirely and test if the conversion lift outweighs the data loss.
Set the primary goal as Form Completion (or downstream conversion: /thank-you visit). Calculate sample size per VWO standard A/B test rules.
Step 6
Form Analytics shows you WHERE users drop off. Recordings show WHY. Use them together for high-confidence test hypotheses.
In the form report, click any abandoned session → View Recording. VWO links the session recording so you can watch the user's actual behavior.
Watch 5-10 abandoned sessions on your problem field. Patterns emerge quickly: users clicking away to look up information (suggests field needs better label or help text), users typing and re-typing (validation friction), users staring at the field for 20+ seconds (confusion).
For each pattern, write a hypothesis: "Users abandon the phone field because they're unsure of format" → test placeholder + input masking.
Avoid the trap of n=1 reasoning. If 8 of 10 recordings show the same pattern, you have a real finding. If 2 of 10 show it, that pattern is a minority case — keep watching.
Pro tip: pair Form Analytics with exit-intent surveys on the form page. Recordings show what users do; surveys ask why directly. Two data sources confirm the hypothesis.
Step 7
Form optimization is rarely a single test. The first fix lifts conversion 5%; the next fix on the next problem field lifts another 5%. Tests compound.
After shipping the first form fix and seeing lift in completion rate, run the form report again on post-deploy data.
The next problem field is usually obvious — drop-off has moved to a different point in the form. Run an A/B test on that field.
Repeat. Most forms have 3-5 friction points; sequenced tests over 3-6 months can lift completion rates 20-40%.
Watch for regression: a fix on field 3 might increase friction on field 4 (users now have less context, or pacing changes). The form completion TOTAL is what matters, not any single field metric.
After 5-6 iterations, you'll be in diminishing-returns territory. Form optimization compounds early; later iterations need bigger thinking (remove fields, split into multiple steps, change the funnel structure).
Common mistakes
Enabling Form Analytics but never reading the report
What goes wrong: Form data accumulates for 6-12 months unread. The team continues to redesign forms based on hunches and stakeholder opinions. Real friction points (one specific field driving 40% drop-off) go unaddressed. On a $40K/mo ad-spend account, the unaddressed friction typically costs $3,000-8,000/mo in lost conversions.
How to avoid: Calendar a monthly 30-min Form Analytics review. Open the report. Find the worst field. Design an A/B test. Ship. Repeat.
Ignoring field friendly names (analyzing "fld_3" data)
What goes wrong: Reports are unreadable because every field is named 'em', 'pwd1', or 'fld_3'. The team gives up on Form Analytics and goes back to gut-feel form redesigns. Wasted feature; ~$200-700/mo of Growth plan capacity for nothing.
How to avoid: On day one of setup, edit every friendly name to a clean human label. 10 minutes of setup pays back for 12+ months.
Treating high time-on-field as automatically bad
What goes wrong: Team sees 25s average time on the 'Description' field of a B2B lead form and shortens the field's prompts. The longer time actually meant users were carefully describing their needs — and those leads converted at 3x the rate of quick-fill leads. Shortening killed lead quality. ~$10,000-30,000/quarter in pipeline lost.
How to avoid: Always cross-reference field metrics with downstream conversion quality. A field that takes time but produces high-quality conversions is doing its job. Time-on-field is context-dependent.
Designing form fixes from field data without watching recordings
What goes wrong: Field shows 35% drop-off. Team assumes 'the field is too complex' and removes it. The real issue was a JavaScript validation bug that fired for 20% of users. The field is needed; the bug was the problem. Removing the field hurts data collection and the bug remains. ~$3,000-8,000 in misdirected work.
How to avoid: For every drop-off field worth fixing, watch 5+ abandoned recordings before deciding the fix. Recordings reveal the WHY; field data alone shows the WHERE.
Not tracking form completions as a downstream goal
What goes wrong: Form Analytics tracks form submits, but the team doesn't track what happens after submit (purchase, qualified lead, paid trial). A 'winning' field test that lifts completions 10% but reduces qualified-lead rate 15% looks like a win on the form report but is a net loss on revenue. On a B2B account with $1,500 avg deal size, this typically costs $15,000-50,000/quarter.
How to avoid: Always pair Form Analytics goals with downstream conversion goals. Set primary test goal as deeper-funnel event (purchase, qualified lead) — completion rate is secondary.
Form Analytics on iframe-embedded forms (it won't work)
What goes wrong: Team enables Form Analytics expecting to see HubSpot/Stripe iframe form data. Sees zero field-level data. Spends 2-3 hours debugging the install. Concludes 'VWO is broken' and abandons the feature. Real fix would have been a different approach (HubSpot's native form analytics, or migrating to a non-iframe form).
How to avoid: Confirm before setup: is your form rendered in the parent page DOM or in an iframe? If iframe, VWO Form Analytics can't see inside. Use the platform's native form analytics (HubSpot has good ones) or migrate to a hosted-locally form.
Recap
Done — what's next
How to set up VWO Funnel Analysis and find drop-off
Read the next tutorial
Hand it off
Form Analytics is the highest-leverage feature most VWO accounts ignore. A specialist pulls field-level data in one session, identifies the 1-2 friction fields, ships fixes, and typically lifts form completion 10-25% in 60 days. Engagements run $400-1,000/mo at $14-16/hr.
See specialist rates
Yes if each step is its own page (URL changes between steps). VWO treats each as a separate form. If the form is a single page with JavaScript-driven steps (no URL change), VWO captures it as one form — the steps are visible via field interactions, not as separate views. Recordings show the step progression clearly.
VWO auto-detection runs on page load. React/Vue forms that render after data fetching aren't in the DOM at that moment. Either use manual element selection, OR fire vwo.event("track", "form_ready") from your app code after the form mounts, OR delay VWO's scan via vwo.event("init") timing.
Shopify checkout pages are iframe-rendered (for standard plans) and inaccessible to VWO Form Analytics. Shopify Plus stores can use checkout extensibility to inject VWO into checkout, but it requires Plus-tier and developer work. For non-Plus Shopify, Form Analytics is best used on pre-checkout pages (cart, lead forms).
Both track field-level interactions. VWO's advantage is integration with experimentation — you can right-click a problem field and create an A/B test instantly, with VWO pre-filling URL and goal. Hotjar's advantage is broader plan availability (Hotjar Plus includes it). If you're already on VWO Growth+, use VWO Form Analytics. If you're shopping for behavior analytics standalone, Hotjar Plus is cheaper.
200 form starts for directional patterns; 500-1,000 for confident decisions. Below 200, per-field drop-off rates swing wildly. For low-traffic forms (specialized B2B lead capture), expect to wait 4-8 weeks before drawing conclusions.
VWO masks values from sensitive field types by default (anything with autocomplete="cc-number", autocomplete="cc-cvc", type="password"). For other fields like email, VWO captures interaction events but not values. To explicitly suppress a field value, add data-vwo-suppress to the input element.
VWO
GA4 tells you 60% of users abandoned at checkout step 2. VWO Funnels tells you which 60% — and lets you click straight into recordings and design an A/B test for that specific step.
VWO
A/B testing in VWO is 20% setup and 80% statistical discipline. Most teams skip the sample-size math, call winners early, and ship 'wins' that don't hold. This is the workflow that produces tests you can actually trust.
VWO
VWO's heatmaps sit inside the Insights module — alongside recordings and form analytics. They're the qualitative complement to A/B test data: heatmaps tell you what hypothesis to test next.
Hotjar
Hotjar's recordings are the most powerful feature in the tool — and the most-wasted. The difference is filter discipline. This is the setup that turns 1,000 recordings/week into 5 useful insights, not 1,000 hours of "someday I'll watch these."
Microsoft Clarity
Clarity is free and the install is famously easy — but the choices you make in the first 45 minutes (data masking, retention, project ownership) are hard to undo later. This walkthrough gets the configuration right the first time.