By platform

Elementor form not working: which step fails

A visitor fills in the contact form, presses Send, and nothing visibly happens. Mimiq sends simulated visitors through the same form so you can see the step where they stop and the message they got.

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

Why is my Elementor form not working for visitors?

The form fails at one of three points: a field blocks the send, the send request never completes, or the form says it sent but nothing reaches you. Each leaves a different trace, so the first job is finding which one your visitors hit. A simulated test runs visitors through the form on phones and laptops and reports the field, the step and the message at each failure.

What this looks like in a report

Who
Kwame, needs a plumber this week for a leaking water heater
How they arrived
Opened a contact page from a local search result on his phone
Where they stopped
Contact form, after typing his phone number

“I typed my name and number, pressed Send, and the button just sat there. I could not tell if the request went through, so I was about to call the number at the top of the page.”

The fix. Record the status of the submit request in a private phone window, then fix what it points at: a cached page, a hidden required field or a failed notification step. Make a failed send show a visible error next to the Send button.

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

The Send button can fail in three places

A visitor presses Send and one of three things happens. The first is a validation message on a field that looks fine, often a phone number typed with spaces, or a required field inside a section a toggle hid. The second is a spinner that never stops, which usually means the request failed, because a cached page held an expired security token or a plugin refused the post. The third is a success message with no submission on your side, because a step after the send, such as a notification email, failed or never ran. The visitor sees the first two as trouble. The third looks like success.

  • Required fields inside a section that a dropdown or toggle hides from view.
  • Phone and email fields that reject formats people actually type, such as spaces or a plus sign.
  • The submit request in the browser's network panel: a 403 or 500 points at the server, not the form.
  • A success message with no matching entry in your submissions list or your inbox.
  • A second visit that behaves differently from the first, which often means a cached copy of the page.

What a visitor sees after pressing Send

The visitor's experience runs in order. They fill in the fields from top to bottom and press Send. If a field is invalid, the error usually appears under that field, and on a phone the browser scrolls there, which can look like nothing happened if the field sits in a part they did not read. Conditional fields add another trap: a field that appears after an earlier answer and stays required blocks the send with no reason the visitor can see. Check this first, because it needs no server work. Fill the form on a phone with the most common answers and watch for a field you did not expect.

The silent failures cost the most time. A request that never finishes, or a 403 response, comes from the site's side: a cache serving a page with an expired token, a security plugin blocking the post, or an error in a later step. The visitor sees the same spinner in each case. Open the browser's network panel, submit the form yourself, and read the status of the request. A 403 or 500 points at the server or a plugin. A 200 with an error inside the response points back at the form's own settings.

Telling the causes apart from outside

You can separate the causes without touching the server. Open the page in a private window, once on a phone and once on a laptop, and submit with plain answers. If it fails only on the phone, look at the validation and the phone field first. If it fails on the first visit but works after a hard refresh, a cached copy of the form is likely the cause, which is common on sites that cache whole pages.

The success-message case is the one you cannot see from the visitor's side. Check the submissions list in the WordPress admin if the form saves submissions, then the inbox the notification is meant to reach. If the list has the entry and the email did not come, the fault is the email step, not the form. If the list has no entry, the request never reached the server, or the form does not save submissions, so check that setting before you change any field.

Where the Send press stops for a phone visitor

A simulated visitor fills the form the way a stranger does, types a phone number the way a person would, and presses Send. The run stops where the visitor gets stuck and records the message on screen, plus failed requests and JavaScript errors from that step. You get the screenshot, the field and the request together. The result is a record a coding agent can act on, not a guess about the form.

Keep a phone visitor in every run. Autofill and the phone keyboard can put a different value into a field than a laptop does, so a form that passes on your laptop can fail for a visitor on a phone. Use the same visitor in each run so the two results compare fairly. The run does not read your submissions list or your inbox, so those checks stay with you.

Mimiq is independent and not affiliated with the platforms it names. Names belong to their owners.

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 plugin update or a cache rule can break the form again

Forms break after changes nobody files under form changes: a caching rule, a theme update, a new security plugin, or a field added for a campaign. Rerun the same visitors after each fix so the next change is compared with a known result. Run the form on each preview deploy before it reaches the live address, and keep one phone visitor in every set, since phones are where the validation and sticky header problems show up.

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

Why does my form show a success message but I get no email?

A success message can appear while a later step, such as an email or a webhook, fails or never runs. Check the submissions list, then the notification's sending address and your spam folder. Mimiq cannot open your inbox or your submissions list, so that check stays with you.

Can a simulated visitor fill in my form with real customer details?

Do not use real customer details in a test. The visitor types its own answers and reads its own inbox, so any confirmation goes to the visitor, not to a customer.

Does a simulated run show the same error a real visitor would see?

It shows what a visitor in that browser saw on that page at that moment. It cannot tell you how often real visitors hit the same error, and it does not predict how many real visitors will submit the form.

Do visitors need my WordPress login?

No. A visitor opens the public page and never signs in to WordPress. For a site behind a password or a protected preview, paid credits let visitors open it with the password or bypass secret you give them.

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 .