Form abandonment is when someone starts filling in a form and leaves without sending it. It is
different from a bounce, where the visitor never touches the form. A lead form left halfway is a person who read
enough to start typing, then stopped, and on most sites they leave no trace at all.
For a business that lives on inquiries, that is the most expensive kind of lost visitor. They found you, they
wanted something, and they were one step from telling you who they are. This guide covers why it happens, how to
reduce it, and how to keep the lead when it happens anyway, on a form you built yourself, without breaking
privacy law or annoying anyone.
How often it happens
There is no single reliable “form abandonment rate”, and two of the most quoted figures do not measure what they
are usually quoted for.
Benchmarks from form analytics. Zuko, which measures forms for its customers, reports that about
55.5% of people who start a form on desktop complete it, and 47.5% on mobile, across 93 million form sessions[3].
Contact forms are the hardest: only about 9% of people who see one send it[4]. This is vendor data,
without a published weighting or period, but it is the largest public dataset.
The “81%” figure comes from a 2018 survey of about 500 US adults by The Manifest, in which 81% said
they had abandoned an online form recently[1][2]. It describes how many people have ever left a form,
not what share of form starts are abandoned, and it is self-reported and eight years old.
The “70%” figure is the online shopping cart abandonment rate (70.22%, an average of 50 studies by
Baymard Institute)[6]. It is about carts, not forms.
The useful number is your own: how many people start each form, and how many send it. If roughly half of your
starters leave, you are close to the benchmark, and every one of them was a person who wanted something from you.
Why people leave
People rarely leave a form for one dramatic reason. Usually it is a small cost too many at the wrong moment:
Too much to fill in. Every field is a question the visitor has to answer before they get anything back.
Fields that feel like a trap. Some fields cost more than others. Across 1,362 forms, Zuko found the highest abandonment on password fields (10.5% on average), then email (6.4%), phone (6.3%) and name (5.3%)[5]. In the same company’s data the number of fields has almost no effect on completion[4]: it is which fields you ask for, and how, that loses people.
No idea what happens next. “Submit” says nothing about whether a person replies, when, or whether a sales call follows.
Errors that punish them. Validation that fires only at the end, wipes what they typed, or rejects a perfectly good phone number format.
The phone. Tiny fields, the wrong keyboard for numbers, and a form that scrolls under the keyboard.
Long or multi-step forms with no sense of progress. A wizard that never says how many steps are left feels endless.
Life. A call, a meeting, a second tab with a competitor. Some people mean to come back and never do.
The first six you can fix. The last one is why recovery matters even on a perfect form.
Fix the form first
Recovering people who leave is the second line of defense. The first is a form fewer people want to leave.
Cut every field you would not act on today. If you won’t use the company size to decide how to reply, don’t ask for it yet.
Make phone optional, and say why you would call. “For a quick call about your quote, if you prefer” earns more numbers than a required field.
Ask for contact details first in multi-step forms. Name and email on step one means even someone who leaves at step three can be answered.
Say what happens after Send, next to the button: “A person replies within one business day. No newsletter.”
Validate as people type, kindly, and never clear the form on an error.
Use the right input types and autocomplete (type="email", type="tel", autocomplete="email") so phones show the right keyboard and fill fields in one tap.
Show progress in multi-step forms: “Step 2 of 3” beats a progress bar with no numbers.
Measure where they leave
You can’t fix what you can’t see. Start with two numbers per form: how many people start it, and how many send it.
Google Analytics 4 records both when enhanced measurement’s form interactions are on (form_start and form_submit)[19], which is enough to know whether you have a problem. For multi-step forms, send one event
per step, so you know which step loses people.
Field-level analytics tools go further and show which field people stop at. Use them when the start-to-send gap
is large and you can’t tell why; they are overkill for a three-field contact form.
Recover the ones who still leave
Even a good form loses people. Recovery means saving enough of what they typed, before they send it, to reply to
them. The table shows the difference on one visitor who fills in step one of a quote form and then closes the tab.
The visitor
A form that sends only on submit
A form that saves contact fields
Types name and email
Nothing kept
Name and email saved as each field is left
Starts step two
Nothing kept
The step is noted; free text is not saved
Closes the tab
Gone, with no trace
After a quiet period, a lead marked Left early with name, email and the step
Or presses Send
One lead
One lead, the early save included
What to save, and what not to
Save contact fields only: name, email, phone. They are enough to reply, and they are what the visitor expects you to have.
Save when a field is left, never on each keystroke. Recording keystrokes is what the privacy lawsuits below are about, and it captures typos and things people deleted.
Never save free text before submit. People draft, reconsider and delete. Half a message is not something they chose to send you.
Never store passwords, card numbers or identity numbers, not even on submit.
Delete what you don’t use. If a left-early lead is not followed up, it should not live forever.
Three ways to do it
Write it yourself. Listen for focusout on contact fields and send them to your own
endpoint with keepalive, so the request survives the tab closing. Then you need a session id, a job
that marks sessions as left early after a quiet period, de-duplication when the visitor does submit, and a
notification. It is a day of work done well, and a source of quiet bugs done quickly.
// Save contact fields when the visitor leaves each one: never keystrokes,// never free text, never anything sensitive.const CONTACT = /e-?mail|phone|tel|^name$|first_?name|last_?name/i;let sessionId = null;form.addEventListener('focusout', (e) => { const el = e.target; if (!CONTACT.test(el.name) || !el.value.trim() || el.type === 'password') return; const fields = {}; for (const [k, v] of new FormData(form)) if (CONTACT.test(k)) fields[k] = v; // keepalive lets the request finish even if the tab is closing fetch('/api/partial', { method: 'POST', keepalive: true, headers: { 'content-type': 'application/json' }, body: JSON.stringify({ sessionId, fields, step: currentStep }) }).then((r) => r.json()).then((r) => (sessionId ??= r.sessionId)).catch(() => {});});
Use a form analytics tool. Several products add a script to any page and capture
what visitors type into forms. Check what they capture (fields, keystrokes, session replays) and whether they may
use the data themselves, against the privacy section below, before you add one: scripts that send typed emails to
third parties before submit were found on thousands of sites[16].
Use a form backend that does it. If your form already posts to a form backend, partial capture
can live in the same place as your submitted leads, alerts and integrations. This is what we built OllieLeads partial submissions for: contact fields only, saved as each
field is left, with a ready-made notice for your visitors, on any form you or your coding agent built.
Follow up the right way
Speed matters, though less dramatically than the internet claims. In a 2011 Harvard Business Review audit, researchers
sent a test web lead to 2,241 US companies: 37% replied within an hour, 24% took longer than a day, and 23% never
replied[7]. In the same article, companies that contacted a lead within an hour were nearly seven times as
likely to have a meaningful conversation with a decision maker as those that waited even an hour longer[7].
The famous “reply in five minutes or your odds drop a hundredfold” comes from a 2007 vendor study of six companies
that did not measure sales[8], and a 2014 analysis of 20.7 million car-dealer leads found that dealers replying
in 16 to 20 minutes closed more often than those replying in under 15[9]. The honest reading: reply the same
business day, ideally within an hour. For someone who left a form halfway, a short pause before you write is fine.
A good follow-up to someone who left your form halfway is:
One message, from a person, about the thing they started asking for.
Easy to answer: ask for the one detail you need instead of sending them back to the form.
Easy to ignore: say plainly that you won’t chase them.
Never a newsletter sign-up. Starting a quote form is not consent to marketing.
Not a cold call, unless they gave you their number and the law where they live allows it.
In the EU, only with consent. A regulator in Germany treats a reminder email to someone who left an order unfinished as advertising; ask when they give their email, for example with a checkbox (see below).
Subject: Your question about the kitchen projectHi Mara,You started our quote form earlier today and didn't get to the end.No problem: if you still want a price, just reply with the roughsize of the kitchen and when you'd like to start, and I'll come backto you within a day.If you've sorted it out already, ignore this. You won't hear from us again.Simon, Alpenglow Web
Privacy and the law
Saving what someone typed before they send it is the most legally sensitive part of form recovery. No court or
regulator has said that it is lawful or unlawful as such. What has mattered so far is who captures the data, whether
the visitor agreed before capture started, and what they typed.
United States
California wiretap lawsuits (CIPA). A wave of class actions has targeted scripts that record what
visitors type or do on a page. In Javier v. Assurance IQ the Ninth Circuit said consent must come
before recording; agreeing to a privacy policy afterwards did not count[10]. In Torres v.
Prudential (2025), about a quote form whose vendor recorded clicks and keystrokes from the first interaction, the defendants won
on the evidence, but the court found a real dispute over whether the vendor was an outside eavesdropper, because
its staff could replay sessions and its terms allowed it to use the data[11]. California’s SB 690 (2026)
curbs one kind of these claims from 2027 and leaves the main wiretap section unchanged[13].
Federal appeals court, May 2026. In In re BPS Direct, the Third Circuit described code that
that “captures inputs that a user types into text fields even if the user does not click ‘submit’”, and held that shoppers
whose payment details were captured could sue, while people who only browsed could not[12].
Calls and texts. Under the TCPA, marketing calls with an autodialer, prerecorded or artificial voice,
and marketing texts need prior express written consent, signed by the person[14]. A form that was never sent
contains no such agreement, so do not call or text left-early leads that way.
European Union, UK and Switzerland
Collecting unsent input needs consent. The European Data Protection Board says information a user
types into a page and that is collected before it is sent falls under the ePrivacy rules on accessing a device
(paragraph 62), the same rules as cookies[15]. Consent is the safe basis for visitors in the EU. The UK
has the same rule in its own law (PECR), so treat UK visitors the same way.
It happens a lot without anyone asking. A 2021 crawl of the top 100,000 websites found email
addresses sent to tracking and marketing companies before the form was submitted, without consent, on 1,844 sites
in the EU and 2,950 in the US[16].
Reminder emails can be advertising. The data protection authority of North Rhine-Westphalia treated
emails sent after an online order was left unfinished as advertising that needs the person’s consent[17].
Switzerland asks sites to inform visitors at or before collection and to make unexpected uses
prominent; consent is generally not required, except for sensitive data[18].
How to reduce the risk
Tell people before you save, in a short notice next to the form, not only in a privacy policy.
Ask EU, UK and Swiss visitors first: save nothing before submit until they agree, for example as a purpose of its own in your cookie banner, or with an unticked checkbox by the email field.
Save contact fields only, when each field is left. No keystrokes, no session replay, no free text, and never card numbers, passwords, health data or ID numbers.
Keep the data with you or a processor that cannot use it for itself, with staff access restricted and logged.
Treat left-early leads as not consented to marketing: one personal reply about their request, no automated calls or texts, and in the EU no follow-up email without consent.
Delete what you don’t follow up, on a short schedule, and on request.
This is not legal advice
Laws differ by country and state and are changing quickly in this area. Check with a lawyer before you capture form input before submit, especially if you have visitors in California or the EU.
Checklist
Every field earns its place; phone is optional and explained.
Multi-step forms ask for contact details first and show “Step 2 of 3”.
The button area says what happens after Send.
Validation is kind and never clears the form.
You know how many people start and how many send each form.
Contact fields are saved when left, never keystrokes, never free text, never sensitive data.
A short notice next to the form says what is saved before Send.
Visitors in the EU, UK and Switzerland agree before anything is saved early.
People who leave get one helpful message, quickly, and never a newsletter.
Left-early leads you don’t follow up are deleted on a schedule.
Questions people ask
What is form abandonment?
Form abandonment is when a visitor starts filling in a web form and leaves before sending it. On a lead form, each abandoned form is a person who was interested enough to start typing, and who the business never hears from unless the form saved some of what they entered.
What is a good form abandonment rate?
There is no universal good form abandonment rate, because it depends on the form, the device and how it is measured. In Zuko’s benchmark data about 55% of people who start a form on desktop finish it, and about 48% on mobile, so keeping more than half of the people who start your form is at or above that benchmark. Compare a form against its own history first.
Can you see who abandoned a form?
A form only knows who left it halfway if it saved something before they went, such as an email address typed into the first field. A form that sends only on submit cannot tell you who left; analytics can show how many people started and where they stopped, but not who they were.
Is it legal to save form data before the visitor submits?
Saving form data before the visitor submits is not clearly lawful or unlawful everywhere. In the US, California wiretap lawsuits have turned on whether visitors consented before capture and whether a third-party vendor could use the data; in the EU, regulators treat collecting unsent input as needing consent. Tell visitors before you save, save contact fields only, and ask EU visitors for consent. This is not legal advice. Read the privacy section.
Should you email people who abandoned a form?
Emailing someone who left a lead form halfway can be reasonable when they gave their email for that request, you send one short, useful message about what they asked, and you never add them to a newsletter or call them without consent. In the EU, a German regulator has treated reminder emails to people who left an online order unfinished as advertising that needs consent, so ask EU visitors first.
How do you recover abandoned form leads on a form you built yourself?
To recover leads from a form you built yourself, save the contact fields (name, email, phone) when the visitor leaves each field, mark the session as left early if they never submit, and notify yourself so you can reply. You can write this yourself or use a form backend that does partial capture.