Features
Features
A single endpoint for submissions, spam filtering, file uploads, and delivery. Works with any frontend. No backend code required.
Works with any website or app
Point your HTML form, React component, or API call at a Formcore endpoint. If it can make an HTTP POST, it works. No libraries or SDKs.
<form action="http://formcore.io/f/YOUR_FORM_ID" method="POST">
<input type="text" name="name" required />
<input type="email" name="email" required />
<button type="submit">Submit</button>
</form>
Protection Layers
Built-in spam protection
Every form gets configurable spam protection. Choose a preset or enable individual checks. Up to five layers working together to filter out bots and junk.
No third-party spam service required. Turnstile available for CAPTCHA-level protection.
Spam protection docsSend submissions anywhere
Submissions can trigger emails, webhooks, and Google Sheets rows. Connect to Slack, Discord, Zapier, n8n, Make, or anything that accepts webhooks.
Webhooks and Google Sheets included on all plans. Email notifications use action credits.
Integration docsEmail Notifications
Formatted email with all field data on every submission
Webhooks
JSON payload to any URL — Slack, Discord, Zapier, n8n, Make
Google Sheets
Auto-sync rows with header reconciliation and dedup
Upload Flow
Create upload session
POST /f/:id/uploads
Upload files to session
POST /f/:id/uploads/:session/files
Submit form with _session token
POST /f/:id
20 MB per file default. File count, size limits, and storage configurable per form. Storage starts at 5 GB (Pro) up to 25 GB (Business) with overage available.
File uploads, per form
Enable uploads on any form with type restrictions, size limits, and storage ceilings. Files are validated by content (magic bytes, not just extensions), stored on Cloudflare R2, and linked to their submission automatically.
- File type restrictions (images, docs, media, or custom)
- Configurable size and count limits per form
- Per-form storage ceiling with real-time monitoring
And more
Everything else
Included with every account.
Auto-Schema Detection
Fields detected automatically from submitted data. No config needed.
Submission Dashboard
Browse, search, and drill into every submission in real time.
CSV Export
Download submission data as CSV anytime, formula-injection safe.
Custom Redirects
Send users to your own page after submit, or use the built-in thank-you page.
Form Toggle
Instantly stop or resume accepting submissions per form.
Project Organization
Isolate forms, data, billing, and team per project.
Role-Based Access
Owner, admin, editor, viewer — with optional per-form restrictions.
Per-Project Billing
Each project gets its own plan and usage meters. No shared pools.
Server Token Auth
Restrict form submissions to requests with a valid secret token.
Copy-Paste Snippets
Ready-made HTML, JS, and cURL snippets for every form.
CORS Support
Submit from any origin — localhost or production. No proxy needed.
JSON & Form Data
Submit as application/json or multipart/form-data. Both work seamlessly.
Reserved Fields
_next, _error, _timestamp — control behavior from your frontend.
Time Zones
Per-project and per-form timezone config. Timestamps display correctly.
Usage Model
Submissions, actions, and storage tracked independently. Pay for what you use.
What's Next
On the radar
Features we're actively considering. Nothing is guaranteed, but these are top of mind.
Project Organization Tools
Better tooling for managing projects with lots of forms — grouping, navigation, and overview improvements as your project grows.
More Integrations
Webhooks already connect to most services. We'll add purpose-built integrations where webhooks fall short — just like we did with Google Sheets.
Exiting Beta
We're hardening paid features and scaling infrastructure. Beta ends when every paid feature is bulletproof for standard use and we're running on redundant infrastructure.
Have something you'd like to see? Request a feature