A very common Contact Form 7 issue is when the form:

  • Shows a spinning loader

  • Takes too long to submit

  • Never completes submission

  • Appears “stuck” after clicking Send

This is almost always caused by AJAX, JavaScript, or caching conflicts — not the form itself.

Let’s fix it properly.


🚨 Common Symptoms

  • Loader spins endlessly

  • No success or error message

  • Form submits only after page refresh

  • Works for some users but not others

  • Works in admin but not frontend


🔍 Why Contact Form 7 Gets Stuck

Main causes include:

  • JavaScript conflicts

  • Deferred or delayed JS loading

  • AJAX blocked by security plugins

  • reCAPTCHA scripts loading slowly

  • Cloudflare Rocket Loader issues

  • Heavy page builders

  • Hosting performance limitations


🔧 FIX 1 — Disable JavaScript Delay & Defer

Contact Form 7 relies on immediate JS execution.

Disable these settings in caching plugins:

  • Delay JavaScript execution

  • Defer JavaScript

  • Combine JavaScript files

  • Load JS asynchronously

Clear cache and test again.


🔧 FIX 2 — Disable Cloudflare Rocket Loader

Rocket Loader often breaks CF7 AJAX.

If you use Cloudflare:

  • Turn off Rocket Loader

  • Or exclude CF7 scripts from optimization

Test form submission after disabling.


🔧 FIX 3 — Check Browser Console for Errors

Open Developer Tools → Console tab.

Look for:

  • AJAX 403 or 500 errors

  • Blocked requests

  • JavaScript undefined errors

Any error here can break form submission.


🔧 FIX 4 — Exclude CF7 Scripts From Optimization

Exclude these scripts from minification/delay:

  • contact-form-7.js

  • wpcf7

  • recaptcha

  • google.com/recaptcha

Most cache plugins allow script exclusion.


🔧 FIX 5 — Disable Security Plugins Temporarily

Security plugins may block admin-ajax.php.

Test by disabling:

  • Wordfence

  • iThemes Security

  • All-in-One Security

  • Cloudflare WAF

If fixed, whitelist AJAX endpoints.


🔧 FIX 6 — Reduce Page Builder Complexity

Forms placed inside:

  • Tabs

  • Accordions

  • Popups

  • Hidden sections

…may load incorrectly.

Solution:

  • Place form in visible section

  • Avoid display:none on page load


🔧 FIX 7 — Test Without reCAPTCHA

reCAPTCHA scripts may delay submission.

Test by:

  1. Temporarily disabling reCAPTCHA

  2. Submitting the form

  3. If faster, reconfigure or optimize reCAPTCHA


🔧 FIX 8 — Improve Hosting Performance

Slow hosting increases form delay.

Check:

  • PHP memory limit (256MB recommended)

  • PHP version (8.0 or higher)

  • Server response time

Shared hosting often causes delays.


🔧 FIX 9 — Update Everything

Outdated software causes conflicts.

Update:

  • WordPress core

  • Contact Form 7

  • Theme

  • Plugins

Always test after updating.


⭐ Final Thoughts

If Contact Form 7 is slow or stuck loading, it’s usually caused by JavaScript optimization, caching, or security conflicts — not the plugin itself.

Once you disable JS delays, whitelist CF7 scripts, and fix AJAX blocking, your forms will submit instantly again.

 

How to Get Started

Installing VPSUForm is easy:

From your WordPress dashboard, go to Plugins → Add New

Search for VPSUForm or Vform

Click Install and then Activate

Go to VPSUForm → Forms, click Add New, and start building!

👉 Or download it directly from WordPress.org