How to track form filled by browser's autofill?


We are using change_form event to track what field has been changed, but it does not fire when the fields are filled automatically via browser. Is there a way to fire the event or at least fire the event manually?

Hi @makoto,

Is your agenda is actually to capture all (some of) the field’s values on form submit? You could track them with custom events. See if the following tutorial helps you out: Form tracking with Snowplow [tutorial]

Hi, my aim is to capture what fields has been left out by the time a user drops off our site. We could emit customevent on beforeunload but that won’t capture event like when the user’s machine/browser crashes. Our current workaround is to send the event with the snapshot of all fields in a periodic timeframe but Ideally would like to be more precise binding to the timing form fields change.

Let’s consider the scenarios.

  1. User fills out the form and submits it. Obviously, they filled in all the required fields: otherwise they would not have been allowed to submit the form. Whether that was done manually by the user for each field or with help with some form autocomplete function does not seem relevant. (But correct me if I’m wrong.)

  2. User starts filling out the form but does not end up submitting it. If I understand you correctly, this is the scenario you are interested in.

You want to know what fields were left unfilled, which is an indication that maybe these fields are “tripping up” users. For those purposes, the presence of autocomplete should not be a problem too.

Imagine a simple form that asks users about their name and email.

If a user fills in their name and then leaves the page, your events will tell you that the user never filled in the email field of the form. That will still be true, even if the user’s browser auto filled-in their email. The user still balked at giving their email. By abandoning the form page at that point, they reverted the auto fill-in done by the browser.

Does that make sense @makoto?

@makoto, I realised my response is wrong in cases when your form has more than two fields :blush:

In those cases, self-describing events may be the way to go.

I’m not familiar with the details of how auto form fillers work, but it should be possible to write some code on the website that listens for them and detects their presence. Then you can use a self-describing event to send the auto-filled data or at least to mark the presence of the autocomplete feature so that you know to exclude these events from your analysis.

Hope that helps.