Before you launch or pay for traffic
Form submission website best practices
A contact form gets opened, a name and an email go in, and then the visitor closes the tab. The stop is usually one field or one button, and simulated visitors can show you which.
What are the best practices for a website form people actually submit?
A form that gets submitted asks only for what you need to reply, marks every optional field as optional, and shows the rule for each field before the visitor types. Send stays enabled, and pressing it lists each missing or invalid field by name, beside its box. The forms that get started and abandoned usually fail at one field, such as a required phone number in one fixed format or a budget list with no option that fits. A simulated test fills the form the way a stranger would and reports the step where each visitor stopped, with a screenshot of that step.
What this looks like in a report
“The budget list starts higher than I can spend, and I do not know my budget yet. Send is grey and nothing says why. I will call someone else.”
The fix. Make Budget optional, with a 'Not sure yet' choice. Keep Send enabled, and on press list each missing or invalid field by name, beside its box and scrolled into view.
An illustration. Run a test to see your own.See a real sample report
The Send button stays grey and the form never says which box is wrong
A contact form asks a stranger for something before they know what they get back. The name and email boxes are easy. The trouble starts at the box that feels like a commitment: a phone number that must match one format, a budget list whose lowest option is above what the visitor expects to pay, or a required project box. Many forms keep Send disabled until every rule passes, and say nothing about which rule failed. The visitor scrolls up looking for a red mark that is not there, then leaves. On a phone the same box can sit under the keyboard, so the message goes unseen.
- Is Send grey after every box is full? If so, the form hides the reason.
- Mark each required box. Could a stranger answer it honestly before talking to you?
- Type a phone number with a plus sign, spaces and brackets. Does the form accept it?
- Does each error sit beside its box, and stay visible with the keyboard open on a phone?
- Does a long message box push Send below the screen edge on a phone?
Which box loses the visitor, in the order they meet them
Walk the form top to bottom as a stranger. Name and email rarely cause trouble. The phone box is the first real hurdle, because a visitor who types a number with spaces and a country code can meet a rule that accepts digits only. Next comes the consent line, 'I agree to the privacy policy', which is often left unticked, so Send stays disabled. The last box is usually the long message field, which some forms mark required even when the visitor has already said what they need. Each of these looks harmless to the owner, who types the same kind of number every day and reads the policy line as a formality.
Visitors who never type and visitors who never press Send
Two problems look alike from the owner's chair and differ in the record. If visitors open the form and never type in it, the trouble is above the form: the heading, the offer or the length of the page before it. If they type, get as far as Send, and leave, the trouble is a box or the button. The test report gives the step and a screenshot for each visitor, so you can see whether they left at a field or at Send. If your form tool keeps partial entries, compare them with the finished ones. A field that is almost always empty on the partial entries is the first one to look at.
Wrong and right versions of the same quote form
Wrong: a phone box marked required with a note that says 'digits only', a budget list that starts at a high figure with no lower choice, and a grey Send button with no message. Right: a phone box marked optional with 'Add a country code if you are outside the US', a budget list that starts low and offers 'Not sure yet' at the top, and an enabled Send that lists the missing boxes when pressed. The right version still asks for the same details. A homeowner who does not know the budget picks 'Not sure yet' and reaches Send, so the job arrives described even when the price is open.
What you get with Mimiq
- 01
Run it by hand, or on every pull request
Paste a link and a task in the app and watch the visitors work. Or run them on every preview deploy: the GitHub Action comments on the pull request, any other CI can call the MCP endpoint, and your coding agent can run it too.
- 02
Bugs and usability problems in one report
The browser records errors and failed or slow requests on the step they happened. The visitors say where the wording or the steps confused them, and where they left.
- 03
Visitors that behave like your audience
Each visitor is a different profile with a reason to be there, matched to who the page is for, described by you, or built from your own customers.
- 04
A prompt to fix each problem
Every problem comes with a fix to paste into Cursor, Claude Code, Lovable or any coding agent, and one prompt hands over the top problems at once. Then send the same visitors through again.
- 05
Follow every visitor
See each visitor's whole path, step by step with screenshots, and what it was thinking at every step. Ask any visitor a question.
The browser records relevant JavaScript errors and failed or slow app requests encountered during the run, attached to the step where they occurred. The visitors are simulated: they find problems, they do not predict how many real people will convert.
A new field added to the form can grey out Send again
A quote form changes whenever you add a service, a new budget band or a consent line for a new campaign. Each change can move Send out of reach again. Rerun the same visitors after every form edit, on a laptop and on a phone, and read the step where each one stopped. Do it on the preview address before the change goes live, so a broken form never reaches the people who would have sent it.
Starter
Try it on one launch
About 4 tests of 5 visitors
- Visitors on your landing page, signup and checkout
- Where they left and why, with a fix to copy for each problem
- Run it in the app or on every pull request
- Ask any visitor a question, included
- Test accounts and protected previews
Builder
Test every build
About 20 tests of 5 visitors
- Everything in Starter
- Credits refill each month, and what is left rolls over once
- Cancel anytime
Pro
Test every release, as a team
About 60 tests of 5 visitors
- Everything in Starter
- Credits refill each month, and what is left rolls over once
- Cancel anytime
Scale
Test at scale, every day
About 240 tests of 5 visitors
- Everything in Starter
- Credits refill each month, and what is left rolls over once
- Priority support
- Cancel anytime
Questions
Should I remove the phone field to get more submissions?
Not by default. Ask what you need to call the person back, and keep that field if you will use it. Make optional any field you will not use in the first reply. The test shows where a simulated visitor stopped in this form. It does not predict whether a shorter form brings in more requests, because it does not show how many real visitors would submit.
Can the test confirm that my form email arrives?
No. A simulated visitor can press Send and report what the page showed, and whether the browser recorded a failed request. It does not read your inbox, your CRM or your email tool. Send one request yourself from a phone, then check that it arrived and that the reply address is the one you want.
Should I put a CAPTCHA on a contact form?
That is your choice, and the test shows what it costs. A CAPTCHA or bot protection can stop a simulated visitor, and the report marks that visitor as blocked by the site. A blocked visitor is not a field fault. Decide with your own spam numbers, and run the form through the test with the challenge on so you know what a stranger sees.
Is a two step quote form better than one long form?
Test both shapes with the same task, because the answer depends on what the first step asks. A first step with only the service and the city asks very little, and the second step asks for contact details. The test shows which step each visitor left. It does not show whether the two step form gets more requests, only whether a stranger reached Send.
Will the test tell me whether my consent line is correct?
No. Mimiq does not review consent wording, privacy notices or data rules. In a test, use made up names and addresses on a staging site, never real customer details. Ask whoever reviews your privacy terms to read the consent line and the policy link that sit beside the Send button.
Keep reading
Send visitors and see what breaks first.
Your first test is free: sign in with Google and it starts right away. Last checked 2026-11-02.