Test a page or flow

How to test a form before people fill it in

A form can look right on your laptop and still refuse a real name or say nothing after submit. Mimiq sends simulated visitors through it in real browsers and shows where each one stopped.

5 visitors try to .
First test free with an accountRun it from your coding agent

How do I test a form before people fill it in?

Fill it in the way a stranger would, on a phone and on a laptop: an empty submit, then a name with an apostrophe, a phone number with spaces, an email with a plus sign, then one normal entry. After each step, read the message beside the field, check the request the browser sent, and wait for the confirmation email. A simulated run adds visitors who do this in real browsers and report the field and step where they stopped, with a screenshot.

What this looks like in a report

Who
Keisha, a homeowner with a leaking tap, filling in the form on her phone
How they arrived
Opened the contact page from a search for a plumber in her town
Where they stopped
Contact form, on the phone number field

“I typed my number with a space after the first three digits and it says it is not valid. It doesn't say what format it wants, so I'll call the next one on the list.”

The fix. Accept phone numbers with spaces, dashes and a leading plus sign, and show an example format beside the field. Make the error name the field and the format it wants.

An illustration. Run a test to see your own.See a real sample report

Forms break in the order a stranger meets them

The first failure often happens before the form shows. An embed from another company loads late or gets blocked, and the box stays empty. Next, a required field rejects real input, such as O'Brien or a phone number with spaces, and says only 'Invalid'. Then submit hangs or fails without a message. Last, the page shows a thank you while the confirmation email never arrives. The owner rarely sees this, because they type their own details on a desktop with autofill on.

  • Does the form show on a phone, with no console errors and no blocked embed?
  • Does each error sit beside the field it is about, and name what to change?
  • Do O'Brien, a phone number with spaces and an email with a plus sign get through?
  • After submit, is there a clear success message, or a redirect to a page that loads?
  • Does the confirmation email arrive, and does its link open a page that exists?

How it works

  1. 01

    Load it cold, on two devices

    Open the page in a private window on a phone and on a laptop. Note any missing field, empty box or console error before you touch the form.

  2. 02

    Submit it empty, then with awkward input

    Check every required message. Then enter an apostrophe name, a phone number with spaces and an email with a plus sign, and submit again.

  3. 03

    Submit one normal entry

    Use a phone number in your country's usual format. Watch the button and the page until the response arrives, and note if it never does.

  4. 04

    Check what came back

    Read the success message, the confirmation email, then the record where your leads land. The last one is yours to check.

Fill it in by hand, in this order

Start with an empty submit. Every required field should say it is required, beside the field, before anything is sent. Then send the entries real people type: a name with an apostrophe or a hyphen, a phone number with spaces, an email with a plus sign. Finish with one normal entry on a phone. Repeat the run in a private window, so saved details do not fill the form for you. Keep the browser's developer tools open: the Console lists script errors, and the Network tab lists each request the form sends, with its status code.

A problem that shows at the end often started two fields earlier, with a value that passed the first check and failed on the server. Write down the field and the step where each problem first appears, not only the message at the end. Then run the same entries again after the fix, so you can see the field pass and the next one stop.

Tell the causes apart from what the browser shows

Each cause leaves a different trace. If no request is sent when you press submit, the browser stopped the form, so the fault is a field rule or the button handler. If a request returns 400 or 422 and names a field, the server rejected a value, and that message is the one to fix. A 500 status, or a request that never returns, is a server fault. A 200 response with no success message on the page is a front end problem. An empty embed box with a failed script in the Console is a blocked embed, and the person to call is whoever installed it.

The fields, console errors and inbox a run reports

A run sends visitors through the form on phones and laptops, with a task such as sending a question and finding the confirmation email. Each visitor has an email address with a working inbox, so the confirmation reaches it. The run reports where each visitor stopped, with the field, the console errors and a screenshot. It does not read your CRM, email tool or analytics, so check where leads land yourself. It does not predict how many real people would submit. A CAPTCHA marks the visitor as blocked by the site. A checkout form stops at the payment step, and no real payment is made.

What you get with Mimiq

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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 required question can break the form on the next edit

Forms change when someone adds a required question, edits a field or swaps the embed. The same visitors can run again after each change, to show whether the fix worked. Behind a login, or on every preview deploy, the same run catches a broken form before it goes live.

Starter

Try it on one launch

$9 once
120 credits, never expire

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
Buy 120 credits

Builder

Test every build

$19 a month
500 credits every month

About 20 tests of 5 visitors

  • Everything in Starter
  • Credits refill each month, and what is left rolls over once
  • Cancel anytime
Choose Builder

Pro

Test every release, as a team

$49 a month
1,500 credits every month

About 60 tests of 5 visitors

  • Everything in Starter
  • Credits refill each month, and what is left rolls over once
  • Cancel anytime
Choose Pro

Scale

Test at scale, every day

$149 a month
6,000 credits every month

About 240 tests of 5 visitors

  • Everything in Starter
  • Credits refill each month, and what is left rolls over once
  • Priority support
  • Cancel anytime
Choose Scale
$0for your first test, with a free account (Google sign-in, no card). It includes 50 credits, enough for 10 visitors. After that a visitor uses 5 credits, and packs start at $9 for 120 credits.
See a sample report

Questions

Do I need to test every combination of fields?

No. Test the fields that break in practice: names with punctuation, phone numbers in more than one format, and emails with a plus sign. A simulated run tries these in the order a visitor would. It does not replace the scripted checks your team runs before each release.

Can a test show me whether leads reach my CRM?

Not from the form. A visitor sees your success message and gets the confirmation email, which shows the form sent a response and the email reached an inbox. The run does not read your CRM, so check where leads land yourself.

Will the test tell me how many people will fill in the form?

No. Mimiq does not predict submission or conversion rates. A run shows which visitors got stuck, on which field and at which step, and why. Rates come from your analytics or from a live experiment with real traffic.

What happens if my form has a CAPTCHA?

A visitor stopped by a CAPTCHA or bot protection is marked as blocked by the site, so the run shows the form is protected, not whether it works. On a protected preview, a paid run can use a bypass secret or a site password, so the visitors can reach the form.

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.

5 visitors try to .