Top issues + fixes
1. Submission email not arriving
Check in this order:
- Dashboard → form → Submissions — is the submission logged? If yes, the form is working; only email delivery failed.
- Recipient inbox spam folder — check spam/promotions.
- FROM_EMAIL config — if using
onboarding@resend.dev, emails only deliver to the email tied to your Resend account. - Resend dashboard → Logs — see if Resend accepted or rejected the email.
- Verified sender domain — production needs SPF + DKIM + DMARC. See Email setup.
2. Embed script not loading / form does nothing on submit
- Check browser console (F12). Errors like
404 embed.jsmean the URL is wrong. - Verify the URL. Correct:
https://justforms.rightnode.workers.dev/embed.js. - Form ID mismatch.
data-justforms="abc"must match the ID shown in dashboard. - Content Security Policy. If your site has a strict CSP, allow the Worker domain in
script-srcandconnect-src.
3. CORS error in browser console
Error like:
Access to fetch at 'https://justforms.rightnode.workers.dev/f/...' from origin 'https://yoursite.com' has been blocked by CORS policy
Fix:
- Edit your form in dashboard
- Set Allowed origins to
https://yoursite.com(or*for any) - Save
4. 429 Too Many Requests
Per-IP rate limit hit. Defaults: 10 submissions/minute per IP per form.
Fix:
- If legit (load testing, internal tool): bump form's Rate limit (per IP/min) in settings
- If hostile (bot attack): lower it + enable Turnstile
5. Real submissions marked as spam
JustForms scores spam from 0–1 based on:
- Honeypot fields filled (auto-reject)
- Configured blacklist keywords
- Excessive URLs in message
- Common spam patterns ("SEO services", crypto, casino, etc.)
Score > 0.7 = flagged spam (no email, kept in dashboard).
Fix:
- Edit form → clear or narrow Spam keywords
- Open flagged submissions in dashboard to recover them
6. GA4 / Meta Pixel events not firing
- Pixel must be installed first. JustForms triggers events on existing pixels; it doesn't install them.
- Check timing. If your pixel loads in
<head>withasync, it might not be ready when JustForms submits. Usedeferor load synchronously above the form. - GA4: open Realtime → Events. Submit form.
generate_leadappears within 30 seconds. - Meta: install Meta Pixel Helper Chrome extension. See "Lead" event fire on submit.
- Listen for our event:
document.addEventListener('justforms:success', e => console.log(e.detail))to confirm submission completed.
7. File upload fails
- Free plan doesn't support uploads — upgrade to Starter or higher.
- Form must have
enctype="multipart/form-data". - File too large. Limits: Starter 25MB, Pro 100MB, Business 500MB.
- R2 not enabled on your CF account (self-hosted only) — enable at dash.cloudflare.com/r2.
Still stuck? Email support@justforms.io with: your form ID, the submission ID (if any), and a screenshot of the browser console.