How to track form abandonment.
You want to know which field people quit on. Google Analytics can tell you a form was started and sent. It cannot tell you where it stopped. Here are six ways to find out, what each one shows, and how to do it without recording what anyone types.
7 sources, each one read in October 2026 and linked at the bottom.
THE SHORT ANSWER
The quick version.
Started and sent is the easy part, and GA4 gives you that. To find the field people quit on, something has to note the last field touched when a person leaves. You can write that yourself in a few lines, use a form analytics vendor, or use a tool that does it for you. Whatever you pick, record which field, never what was typed.
THE NUMBERS
What the tools say about themselves.
First interaction
is when GA4's form_start event fires: the first time a person interacts with a form in a session. That counts people who started. It does not say how far they got. Google Analytics Help
3 details
come with form_start: a form ID, a form name and the page the form sends to. A field name is not among them, so GA4's built-in form events cannot say which field was last. Google Analytics Help
Custom dimensions
are needed before those details show in your reports. Google's page says you can only use the parameters in your reports if you create custom dimensions for them. Google Analytics Help
2015
is when Simo Ahava published the classic Tag Manager recipe for form abandonment. He says it is built around a very simple, basic form, and that dynamic forms may not work. Simo Ahava's blog
About 64 KiB
is the most sendBeacon can carry, which is plenty for a field name and a count. MDN says the most reliable moment to send is when the page is hidden, because unload and beforeunload often never fire, especially on mobile. MDN Web Docs
Free forever
is how Microsoft describes Clarity, which records sessions so you can watch visits one at a time. Microsoft Learn
WHAT TO CHANGE
Why it happens, and the fix for each.
01GA4 tells you a form was started and sent, not where it stopped
On a plain HTML form, GA4's enhanced measurement can record form_start and form_submit with no code. Started minus sent is your drop-off, and that is a useful first number. But the field is not in either event, and the details only reach your reports once you set up custom dimensions. Google's page lists no abandon event. Google Analytics Help
TRY THISSwitch on form interactions in GA4 enhanced measurement and read started against sent for a week. That tells you whether a form leaks at all.
02A Tag Manager listener gets you to abandon, with more setup
Ahava's recipe watches for a person leaving the page with a form touched and unsent, then sends an event. It is the usual answer to how to do form abandonment tracking in Google Analytics. It is from 2015, so the event setup needs adapting to GA4, and he says it suits simple forms. Simo Ahava's blog
TRY THISUse it if you already live in Tag Manager and the form is plain. Name the event after the form, and send the name of the last field touched as a parameter, not its value.
03Your own script is a few lines, and you own the privacy
Listen for focus on each field and remember the last one. When the page is hidden, send that name with sendBeacon, unless the form was sent. Use visibilitychange for the hiding, not unload, which MDN calls unreliable. Send the field's name and its position. Never read its value. MDN Web Docs
TRY THISStart with the one form you care about most. Send field names to your own endpoint or to a GA4 event, and read the count per field after a few dozen abandons.
04Recordings show you one person at a time
Microsoft Clarity is free and records sessions, so you can watch someone stop at the phone field. That is good for seeing why. It is slow for counting, because you watch visits one by one to learn how many did the same. Clarity masks what people type into input boxes in every mode, and Microsoft says that cannot be changed. Microsoft Learn
TRY THISUse recordings to confirm a field you already suspect. Filter to visits on the form page and watch five.
05Form analytics vendors count it for you, and cost money
Zuko describes its product as form-level behaviour insights and abandonment tracking, with data on each field. It is built for this one job and goes deeper than the free routes above. Check its page for what it costs and what it stores. Zuko Analytics
TRY THISWorth a look if the form is the business: a lead form, a loan application, a checkout. Ask any vendor what it does with typed values before you install it.
06Hotjar is now part of Contentsquare
Ahava's 2015 article pointed readers to Hotjar for form problems. Hotjar's page now says Hotjar is Contentsquare, and lists heatmaps, recordings and surveys, with attention maps, funnels and error monitoring on the free plan. Field-by-field form counts are not on that list. Hotjar
TRY THISIf field-level drop-off is why you looked at Hotjar, ask Contentsquare whether your plan includes it before you rely on it, or use one of the routes above.
ON YOUR OWN SITE
Which field, for each person.
Five visitors, five places to stop. This is the answer you get once something records the last field touched.
VISITOR
1 of 5
- Waiting for the first event.
Five visitors, three different fields. That is the pattern you would never see in a conversion rate.
Moxel does the script route for you, with one tag and no setup per form. At Chill it counts forms started and sent. At Vibey it notes the last field touched before someone left. At Feral it times every field and records which ones showed an error. It never records what anyone types, only whether a field held anything. Password, hidden and card fields are never named or timed. Moxel has no session recordings, so it tells you which field, not what the person did next. It is also in early access, so a vendor built only for forms will go deeper.
THE LIMITS
What this cannot tell you.
Most of this page is what the tools say about themselves. Google, Microsoft and Hotjar describe their own products, and Zuko sells form analytics. Nobody here measured how accurate any of these methods are. Field counts are thin on a small site: 4 of 6 people stopping at one field is a hunch until more have been through. Prices are left out because they change.
QUESTIONS
Asked a lot.
- How do I track form abandonment without Hotjar?
- Pick one of five routes. GA4 form interactions gives started and sent. A Tag Manager listener or a few lines of your own JavaScript adds the last field touched. Clarity records sessions for free. A form analytics vendor or Moxel gives per-field counts. Hotjar is now part of Contentsquare, and its page does not list field-by-field form counts.
- Can Google Analytics track form abandonment?
- Partly. GA4 enhanced measurement records form_start, the first interaction with a form in a session, and form_submit. Started minus sent is your drop-off. Neither event names the field. For google analytics form abandonment tracking by field, add your own event with Tag Manager or a script.
- What is the best event tracking for form abandonment?
- One event, sent when the page is hidden with the form started and unsent, carrying the form name and the last field touched. Send it with sendBeacon on visibilitychange. Never include what the person typed.
- Which form field is making people leave my signup form?
- You need field-level data: the last field touched by each person who started and did not send. Count those per field. The field that collects the most is the place to look. On a small form, a handful of people is a hunch, so wait for more before you change anything.
SOURCES
Where the numbers came from.
- Enhanced measurement eventsGoogle Analytics Help. Product documentation, describing Google's own tag.
- Track form abandonment with Google Tag ManagerSimo Ahava's blog, Simo Ahava, July 2015. Written in 2015, before GA4 existed.
- Navigator: sendBeacon() methodMDN Web Docs.
- Masking content (Clarity)Microsoft Learn.
- Clarity overviewMicrosoft Learn.
- Hotjar product page, now hosted by ContentsquareHotjar. Hotjar's own page, read in October 2026.
- Which form fields have the highest abandonment rate?Zuko Analytics, Alun Lucas, undated. Zuko sells form analytics, and the forms are its own customers'.
Read in October 2026. Studies get updated, so follow the link for today's figures.
KEEP READING
More from the field guide.
- Why people leave in ten seconds
- Why people abandon forms
- Why people abandon checkout
- How far people really scroll
- What rage clicks really mean
- Analytics for vibe coded apps
- Your website stats in plain English
- Analytics without a cookie banner
- Shopify traffic but no sales
- Where people drop off in checkout
- Should the phone field be required?
How Moxel records all of this is in the docs. What it never records is on the privacy page.