Send a test and check three places
Do this before you call anyone. Use a phone, not only the laptop at the shop. A plumber in Medina and a landscaper in Brunswick can use the same steps. Open the page the way a customer would. Fill in every field with a real name, an email you can open, a real phone number, and a short note that says it is a test. Tap Send. Write down the time and the exact words the page shows, including a thank-you line or an error. Then check three places. The inbox that should receive the form. The spam folder of that same inbox. The list of messages the form tool saved. Different tools name that list differently. If you cannot find it, ask the person who set the form up. If the test is in that list and not in the inbox or in spam, the form kept it and the email did not arrive. If the test is not in that list, the form never accepted it, and the inbox was never the problem. Google says some legitimate messages may be marked as spam, and that marking a valid message as not spam means later messages from that sender should go to the inbox. WordPress.org says a message may have been routed to a spam folder, or discarded. Check spam before you decide the form is dead.
Source: Email sender guidelines (Gmail Help); Mail (WordPress.org)
Read the address the form sends to
Open the form settings, or ask the person who can, and read the address that receives submissions. Compare it with the inbox you actually open. An old address, a former employee's inbox, or a typo sends the lead somewhere you will not see. That is a different problem from a form that never sends. On WordPress, also read the From address, which is the address the message claims to be from. WordPress.org says the default From address is wordpress@ followed by the site domain, and the From name is WordPress. It says to use a valid email address whose mailbox exists. Some older mail systems check that the From address can receive mail. WordPress.org says that check is less common now, and still recommends a real mailbox. If you use the default, confirm you can receive mail there. A message can arrive from an address you do not recognize and look like junk. Confirm both addresses: where the form delivers the message, and what it says in From. Changing the From address is a setting or a small code change for the person who edits the site. WordPress.org documents the wp_mail_from filter for that change. Leave the edit to them if you do not see a screen you understand.
Source: Mail (WordPress.org)
On WordPress, see how the mail is sent
If the site is WordPress, the function that sends mail is wp_mail(). WordPress.org says it sends an email in a way similar to PHP's mail function. A true result does not automatically mean the person received the email. It only means the method used was able to process the request without any errors. A thank-you line on the form can appear in that case, and the message can still sit in spam or be discarded. WordPress.org says WordPress has never provided a mail server of its own by default. By default, wp_mail() tells the PHPMailer library to use PHP's mail() function, which needs a sendmail-compatible program on the server. WordPress.org says that on managed hosting there is typically nothing extra that needs to be done to send email, and that you should still ask the host about deliverability. Ask whether the host offers an SMTP relay in its panel. SMTP is a way to hand the message to a mail service instead of to PHP mail(). The phpmailer_init hook is one way code passes SMTP settings to that library. An SMTP plugin from the WordPress.org plugin directory can override the default and send through a remote mail service. If you do not already see a mail or SMTP screen you understand, ask the host or the person who edits the site which path the form uses. Do not paste a password into a random plugin until you know the host expects it.
Source: wp_mail() (WordPress.org developer reference); phpmailer_init (WordPress.org developer reference); Mail (WordPress.org)
Check SPF, DKIM, and DMARC
These three records live in DNS, the settings that tell the internet about your domain. You do not type them into the contact form. Google's email sender guidelines apply when the message goes to a personal Gmail account, an address ending in @gmail.com or @googlemail.com. Google says every sender must set up SPF or DKIM. Senders of more than 5,000 messages a day to Gmail must set up SPF and DKIM and DMARC. Count your own messages before you assume the bulk rules apply. The all-senders rule still applies when the lead goes to Gmail. Google recommends SPF, DKIM, and DMARC for every sending domain, and says messages that are not authenticated with these methods might be marked as spam or rejected with a 5.7.26 error. If your host shows that code, read it back to them. SPF is a record that lists who may send mail for the domain. Google says messages from a sender that is not in that record are more likely to be marked as spam. DKIM lets the receiving server check that the domain owner sent the message. DMARC tells receiving servers what to do with messages that do not pass SPF or DKIM. For bulk senders, Google says the DMARC policy can be set to none. WordPress.org calls setting up SPF, DKIM, and DMARC a critical step so a message is less likely to be treated as spam, and says your own mail may be rejected as spam if SPF is not configured properly. It also says every server that sends as your domain has to be in the SPF record. Ask the host, or the company that sends the form mail, whether the domain in the From line has SPF or DKIM, and whether the server that actually sends the form is listed. Do not change DNS records while you are guessing. A rushed change can stop the site and the email.
Source: Email sender guidelines (Gmail Help); Mail (WordPress.org)
See whether a plugin update stopped the form
WordPress.org lists plugin conflicts among the common causes of a critical error that stops WordPress from running as expected. If the whole site shows "There has been a critical error on this website," that is the case in the guide on a site that is down. WordPress emails the admin address a recovery mode link so an administrator can sign in and see which plugin or theme was paused. The pause does not repair it. If the page still loads and only the form is quiet, and the form is a plugin you updated the same day, treat that update as the first suspect. Turn that plugin off, or ask the person who edits the site to turn it off, and send the test again. Then turn it back on if the test still fails, so you are not guessing. WordPress.org says an SMTP plugin can replace the default mail setup. A conflict there is a mail problem, not proof the form fields are wrong. If you cannot log in, ask the person who can. Leave file edits to them.
Source: Common WordPress errors (WordPress.org); Fatal error recovery mode in WordPress 5.2 (WordPress.org); Mail (WordPress.org)
On this site: My business website is down or showing an error
See whether a puzzle or a block stopped a real person
Send the test the way a customer would, including any checkbox or puzzle the form shows before Send works. If the form refuses to send until that step is done, a customer who cannot finish it never reaches your inbox. If the page says the message was blocked, the form stopped it before email was involved. Use the form tool's list of saved messages to tell the two cases apart. If your test is missing from that list, the form did not keep it. If the row is there and the inbox and spam are both empty, the problem is delivery, which is the mail setup above. Google's note that some legitimate messages may be marked as spam is about email after it is sent. A block on the form is earlier. Leave puzzle settings and spam rules to the person who edits the site if you cannot find a switch you understand.
Source: Email sender guidelines (Gmail Help)
Try every required field on a phone
Use the form on a phone, not only on a laptop. web.dev says a field with type tel brings up a keypad meant for telephone numbers, and a field with type email brings up a keyboard with @. The required attribute makes a field mandatory. When you submit, the browser checks that a required field has a value. For an email field, it also checks that the value is a valid email address. MDN says an empty required field is a valueMissing error, and an email field that is not a valid email address is a typeMismatch error. The tel type does not, by itself, require one phone format. A pattern attribute does. MDN says the pattern has to match the entire value, and a value that does not match is a patternMismatch error. A pattern written for ten digits and nothing else will reject a number that includes spaces, parentheses, or a leading +1. MDN also says a minlength attribute rejects a non-empty value that is shorter than that minimum. A short note a customer would actually send can fail that check. If any of these checks fail, the browser blocks the send and shows an error on the first field that failed. web.dev says the wording is not the same in every browser. Look at the field after you tap Send. If an error is showing, the form did not send. Read the message, then try the same form with the number the way you would say it out loud.
Source: Form fields (web.dev); Help users enter the right data in forms (web.dev); Using HTML form validation (MDN); pattern attribute (MDN); Client-side form validation (MDN)
See whether a script error stopped the send
MDN says that when a field fails validation, the browser blocks the submit and there is no submit event. MDN also says that if the fields are valid, the browser will submit the form unless something else stops it, and it names JavaScript as one example. web.dev shows a form that listens for submit, calls preventDefault() so the browser does not send the form the normal way, and then sends the data with JavaScript. If that script hits an error after it has stopped the normal send, the message does not go out the normal way. If you tap Send and the page does nothing, with no error on a field and no thank-you line, try a second browser and a phone. A script error is a job for the person who edits the site. Tell them what you tapped and what the page did not do.
Source: Client-side form validation (MDN); HTML form submit event (MDN); JavaScript and forms (web.dev)
Make the phone number a tel: link
A contact form and a click-to-call button fail in different ways. MDN says a link can use a tel: URL for a telephone number, and that a cellular device can autodial that number. The same page says tel: behavior varies by device. A computer may open a calling app, save the number, or do something else. A number that is only text is not that link. The customer has to retype it. MDN also says a link should point at a real URL. A button or a link whose address is only #, or a javascript: address, can fail when a script errors or JavaScript is off. A tel: link does not need that script. Tap the number on a phone. If a call does not start, it is not a working tel: link. Put the number on the first screen, where a thumb can hit it. The free checker looks for a tel: link. It does not place a call, and it does not submit your form. The phone guide on this site is the longer check for whether the page fits a phone.
Source: HTML anchor element, linking to telephone numbers (MDN)
On this site: How to check if your website works on phones; How to get more calls from a trade website; Free website checker
What you can fix, and when to get help
You can send the test, read the inbox and spam, read the form's saved messages, and tap the phone number. You can change the receiving address when that setting is on a screen you can open. You can mark a real message as not spam. Hand the rest to the host or to the person who edits the site. That includes SMTP in place of PHP mail(), DNS records for SPF, DKIM, and DMARC, a plugin that errors after an update, a script error, and a pattern on a field that rejects a normal phone number. Do not edit DNS or plugin files while you are guessing. Retest after each change they make. One change at a time is how you learn what helped. If the whole site is down, use the down guide first. A form test cannot tell you anything until the page loads.
Source: Mail (WordPress.org); Email sender guidelines (Gmail Help)
On this site: My business website is down or showing an error
A short checklist
Read this on the site you have now. You sent one test from a phone, with a real name, a real email, a real phone number, and a short note. The test is in the inbox, or you found it in spam and marked it not spam. The form tool's list of saved messages shows the same test. The receiving address is an inbox you open. On a WordPress site, you know whether mail uses PHP mail() or SMTP, and the From address is a mailbox that exists. The domain that sends the form mail has SPF or DKIM, which Google requires for all senders to Gmail. You have asked whether DMARC is set too. Google requires DMARC when you send more than 5,000 messages a day to Gmail, and WordPress.org still recommends it. A puzzle or a block message did not stop the test. Required fields accepted the note you would actually send from a phone. Tapping the phone number on a phone starts a call. If a line fails, that line is the next job.
Source: Email sender guidelines (Gmail Help)
On this site: How to check if your website works on phones
Check the page, or ask for help
If the page loads, start with the free website checker. It reads one public page and reports HTTPS, the response status, and a tel: link. It logs the website address and the score, not personal data. It does not fill in the form, and it does not read your inbox. Website Quick Diagnostic is $19, paid once. An automated PDF within about 1 hour with your speed and mobile scores, the top 5 issues ranked, and a plain fix for each. The $19 is credited toward the $99 Checkup within 30 days. Website Checkup is $99, paid once: a ranked report of what to fix on your website first, covering speed, SEO, mobile, and AI search visibility, delivered within 2 business days. No login is needed. The report goes only to you. If the site is down and there is nothing to check, you get a refund. Those checks describe a page they can fetch. They do not repair a form, move mail out of spam, or edit DNS. If you want a new site, ask on the start page.
On this site: Free website checker; Website Quick Diagnostic; Website Checkup; Start a site quote