No submission is ever lost
Every submission is queued before the visitor sees “thank you”. The first email tries inside the request. Anything that fails is retried by cron with backoff. Nothing is silently dropped.
Most form plugins are page builders with a form attached. OctaForms is the opposite. There is no drag-and-drop builder on purpose. You get clean, fast forms and a delivery engine you can trust. The whole front end is under 10 KB of JavaScript and CSS over the wire, gzipped, and it never blocks your page from rendering.
No submission is ever lost
Every submission is queued before the visitor sees “thank you”. The first email tries inside the request. Anything that fails is retried by cron with backoff. Nothing is silently dropped.
Spam filtering without collateral
A honeypot that quarantines suspected spam instead of deleting it, so you can recover a real lead. Rate limiting that never punishes a busy office behind one IP.
Privacy built in from day one
Consent snapshots on every submission, IPs stored only as a hash, and full support for the native WordPress export and erase tools.
Lightweight and non-blocking
One small script and one stylesheet, loaded in the footer and never render-blocking. No framework, no jQuery, no page-speed tax.
Ready to use, no code
Drop [octa_form slug="…"] on any page or widget area and you have a working form. A starter contact form is created for you on first run. Want a floating contact button? Turn on the widget for phone, callback and message tabs.
Built for developers
Render your own markup and drive a small REST API: a token endpoint and a per-form submit endpoint. Form definitions live as validated JSON. Add your own validation rules with a filter. An optional vanilla JS helper handles the whole token and retry contract for you.
OctaForms puts durability before timeliness. Every delivery is saved to a queue before the visitor gets a response. The first email attempt runs inside the request behind a circuit breaker. Anything that fails is retried by cron with exponential backoff. Every protection and every degradation leaves a trace you can read in the admin or in Site Health.
Delivery goes out by email, autoresponder and HMAC-signed webhook. Webhooks are at-least-once and re-check DNS before every send to block SSRF.
Aggressive spam filters lose real people. OctaForms is built so that never happens quietly.
Quarantine, don't delete
Suspected spam is stored, not dropped. Review it in Submissions and recover a genuine lead. A sudden spike usually means autofill, not attackers.
Two-counter rate limiting
A flood of requests earns a short, temporary ban. A burst of genuine submissions from one office network gets a polite “try again shortly” instead.
A stateless signed token
Adds deduplication, a time trap and a JavaScript requirement. It is a helper, not your main defence. The honeypot and rate limiting are.
Atomic deduplication
A double click returns the same submission, and each delivery goes out exactly once.
Consent snapshots
Each submission stores the consent field, the exact text that was shown, the value and the time.
Hashed IPs only
The visitor IP is kept only as a hash for spam forensics. It never leaves your site, and it is not in webhooks or exports.
Export and erase
Full integration with the WordPress personal data tools, covering both submissions and their delivery records.
Retention with cleanup
Automatic cleanup, global or per form. CSV export is hardened against spreadsheet formula injection. Optional full data removal on uninstall.