First: confirm it's actually broken
Submit the form yourself, from a phone and from a computer, using an email address that isn't the one receiving submissions. Note:
- Does the page show a success message, an error, or nothing?
- Does the submission appear anywhere it should be stored?
- Does the notification email arrive — in the inbox, in spam, or not at all?
Your answers point to which layer has the problem.
Layer 1: the form itself
If you see an error or nothing happens:
- Open the browser console (or ask your developer to) and look for errors on submit.
- Check required fields aren't blocking submission silently — for example, a hidden required field.
- Check any spam protection widget loads and passes; see stopping form spam.
- Check the form's action URL or handler still exists after a site change.
- Check the site's SSL certificate is valid; some browsers block submissions on insecure pages.
MDN's form element reference is a useful reference for whoever investigates.
Layer 2: the server or form service
If the success message appears but nothing is stored or sent:
- Check the form service or website backend logs for failed sends.
- Check any plan limits on the form service (monthly submission caps).
- Check the hosting account's mail sending isn't blocked or rate-limited.
- If the form posts to a script on your server, check it still runs after hosting or PHP version changes.
Layer 3: email delivery
If submissions are stored but notifications don't arrive:
- Check spam and quarantine folders, including any admin-level quarantine in your email provider.
- Check the "To" address is still correct and the mailbox exists.
- Check the "From" address: many hosts send form email "from" your domain, which needs SPF and DKIM authorisation — see SPF, DKIM and DMARC.
- If you recently added a strict DMARC policy, check the form's sending server is included.
- Check mailbox rules or filters that might be moving messages.
Layer 4: integrations
If the form also sends to a CRM, team chat or connector platform:
- Check the connection hasn't expired.
- Check field names haven't changed on either side.
- Check the connector's run history for errors or skipped runs. Silent automation failures covers this in more depth.
Fixes that make it less likely to happen again
- Store every submission somewhere besides email.
- Send notifications to a shared inbox monitored by more than one person.
- Test monthly and after every change to the site, hosting, domain or email.
- Add a fallback on the page — a phone number or email address — so customers have another route.
- Get alerts when the form service or integration reports errors.
When to call for help
If you've checked these and still can't find the issue, or the form is custom code nobody understands, it's worth having someone review it. A broken form costs leads quietly every day it stays broken.
Questions
How often should I test my contact form?
At least monthly, and after any change to the website, hosting, email or domain settings. MendRev's website plans include a monthly form test.
Should form submissions be stored, not just emailed?
Yes, if you can. A stored copy — in the website backend, a form tool or a CRM — means a lead isn't lost when email delivery fails.
Sources and further reading
- form element reference developer.mozilla.org
Official documentation changes. Check the current version before you rely on a rule, limit or setting.
Next step
See a site built around your real details.
Look at sample layouts (fictional previews, not client work), read published website pricing, or ask for a free concept preview.
Already happy with your site? Website Maintenance covers monitoring, a monthly form test, backups and edits.