I see 4 issues in this topic.
1. Why is email delayed for a period of time?
Your web site may be hosted on a shared server with many other web sites. The email server could be overloaded. An email server has to make an outgoing connection to send each email message. When an email server has many requests for sending email, the emails are held in a Mail queue and sent out a one at a time. An overloaded server with many mail requests will cause a delay in sending mail. Sometimes a spammer will find an exploit in one of the web sites on the server and start sending massive amounts of spam. This will overload the mail server. If your mail is being delayed, you should make a trouble ticket with your host so that they can check the server logs and Mail queue. The server administrator can tell if the Mail queue is overloaded.
There are other possible causes like DNS or connection outages that may only be temporary. In some cases of a server that is exploited and sending out spam, the server IP address may be temporarily banned by other mail servers. Sometimes your mail server IP address ends up on a SORBS spam list and gets blocked by various mail systems. This may not be your fault because many sites on a web hosting server share the same IP. more …
https://www.fastsecurecontactform.com/why-is-email-delayed
2. Form action URL problems: get_permalink() is not reliable to use for contact form action URL in WordPress, it can cause mixed results for form action URL, especially in sidebar. For example: if the form is in a sidebar, get_permalink() can return a page that is different than the one you are on. I use different code in my contact form plugin to make the form action URL and no longer have the problems.
3. Potential Form action URL problems on Windows IIS servers: If the form will not send and redirects to the same page, read this: IIS does not like that there is no document file type in the URL (no .php, .htm, or .html). The permalinks need to have in .php or .htm or .html in the URL because IIS servers will not display a page using an unknown document type when the page is using GET or POST method. Instructions to fix is here:
https://www.fastsecurecontactform.com/problem-form-will-not-send
4. Some servers require the fith parameter to PHP mail set to an email on the same domain or mail WILL NOT send. My contact form is capable of supporting this. If you do not receive email, email does not send, or always goes to the “Spam” folder. Here is how to troubleshoot mail delivery:
https://www.fastsecurecontactform.com/email-does-not-send
Mike Challis