Systems Ninjas (2026). False completions in a multi-step collector. Measured 2026-08-17 on a live four-step flow: 259 asked, 165 opened, 25 finished, 37 self-reported completion of whom 31 had no record. systemsninjas.com/post/multi-step-form-completion-rate
Take any of it. You do not need to ask. If you find an error in here we would rather hear about it than not, and the correction goes on the page.
Because the people who think they finished are not in your drop-off number. On a four-step collector we built, 259 people were asked, 165 opened it, and 25 finished. Then 37 people told us they had submitted... and 31 of those had no record of any kind on our side.
The 25 was the number on the dashboard. The 31 were invisible, and they were the expensive ones.
Multi-step forms, wizards, recorders and uploaders share a failure that has nothing to do with the technology working.
The person completes step one. The page advances. Step two looks essentially identical: same layout, same instructions, same button. They do not think "next question". They think "it broke and it made me start again."
From there they do one of two things, and both are bad:
We watched all three shapes of damage on the same flow.
The funnel. 259 asked, 165 opened the recorder, 25 finished. 140 people opened it and dropped, and every piece of copy around the flow was written in the singular: "a short video", "a minute or two is plenty", "a few short prompts". Nothing anywhere told them there were four steps except a small grey step counter, which nobody reads on a phone in the middle of doing something.
The phantom bugs. 18 support conversations ran a device-troubleshooting ladder: phone model, browser, app version, clear the cache, wifi versus mobile data, try a private window. For a page that was working correctly. That is 18 people made to feel that their phone was the problem, plus the staff time to walk them through it.
The false completions. 37 people said they had submitted. 31 carried no record at all.
Here is why, and it is the whole point of this page.
A drop-off is visible. It sits in your funnel, someone can look at it, and in principle someone can follow up.
A false completion is worse than invisible. It is actively marked as done. Nobody chases a person the system says has finished. The follow-up sequence skips them. The report counts them correctly as not-finished but the human conversation counted them as finished, and the two never reconcile.
The loop is closed permanently, by agreement, on both sides.
And then our own bot made it worse.
The assistant handling those conversations told 12 people they were "all set", that there was "no need to resubmit", that "the team will review yours".
None of their submissions had arrived.
The important detail: that phrasing appeared nowhere in the bot's instructions. It was not a bad rule. It was the absence of a rule. There was no handler for "I already did it", so the bot improvised into the gap, the way a language model does, and improvised something reassuring.
And a hedge does not save you. "If you recorded it on the page, you're all set" reads to a human being as confirmation. They hear the second half.
A bot must never confirm a completion it cannot verify. That is now a hard rule for us, and it applies to every assistant we build, on every channel.
1. State the shape in the body copy, not in a progress label.
"Three questions, one video each, then your details."
That belongs in the sentence people actually read, not in a small counter in the corner. A step counter is a progress indicator for someone who already knows there are steps.
2. Confirm the step that just COMPLETED, not only the one now due.
The missing "got it, one of three done" is the entire difference between an advance and an apparent loop. The system knows it happened. It just does not say so, because the developer is thinking about what comes next and the user is thinking about what just happened.
3. Name the final landmark, and let them answer.
This is the fix for the false completions and it requires no access to your data at all. Do not ask "did you submit?" ... they will say yes, because from their side they did something.
Ask: "Did you reach the Thank You screen?"
That is a question about something they saw with their own eyes. It works with zero state access, it costs one sentence, and it separates the people who finished from the people who believe they finished.
Assume step-advance before device fault.
Ask about the phone model only AFTER they confirm they reached the end and it still failed. Asking earlier does two bad things at once: it makes a working page feel broken, and it teaches the customer that the problem is on their side when it is not.
Eighteen conversations went the other way round on our watch.
Not the copy, and not the bot rule, although both are fixed.
We would have measured the gap between "people who say they finished" and "people who have a record" on day one. It is a five-minute query. We ran it three weeks in, and only because something felt off.
Every number on that dashboard was correct. It was just answering a question nobody had asked, which is: of the people who believe they are done, how many actually are?
Measured 2026-08-17 on a live four-step collector we built. Cohort size is real, the client is not named, and every number here is one you can produce for your own flow in an afternoon.
Count the people who told you they finished, then count the people who have a record. The gap is the number nobody has. Tell us what your flow runs on and we will write the query for your setup and send it over, so you can run it yourself without giving anybody access to anything.
Get the query [email protected] · No client of ours is named anywhere on this page, and if you become one, you will not be either.