Build forms.
Queue everything.
API-first platform for creating, managing, and embedding forms with built-in queue support for async processing. Schema-driven, fully customizable, and ready to scale.
# Create a form via API
curl -X POST https://api.formq.dev/v1/forms \
-H "Content-Type: application/json" \
-H "X-API-Key: fq_xxxxx" \
-d '{
"name": "Contact Form",
"fields": [
{ "type": "email", "label": "Email", "required": true },
{ "type": "textarea", "label": "Message" }
]
}'Everything you need to build forms
A complete platform that puts developers first, with powerful APIs and flexible integrations.
Queue Processing
Every submission is queued via BullMQ + Redis. Async webhooks, retries, and reliable delivery — no data lost, even under load.
Schema-Driven Forms
Define forms with JSON schemas. Version, validate, and generate forms programmatically with the key property as the central contract.
API-First Design
RESTful API with OpenAPI 3.1 spec. Full CRUD operations, webhooks, and real-time events.
Embeddable Widget
Drop-in React widget under 19KB. Works in any web app with zero configuration.
Role-Based Access
Organizations, teams, and granular permissions. Owner, admin, and member roles built-in.
Built-in Analytics
Track submissions, completion rates, and field-level analytics out of the box.
File Uploads
Presigned URL uploads to Cloudflare R2. Support for avatars, attachments, and documents.
Webhooks & Events
Async webhook delivery via queue. Integrate with Slack, email, or any service with automatic retries.
Internationalization
Multi-language support with English, Spanish, and French. Easily extendable to more locales.
Four steps to go live
From schema to production in minutes, not weeks.
Define
Create your form schema with our API or dashboard. Add validation rules, conditional logic, and custom fields.
Submit
Embed the widget or use the API directly. Every submission is instantly queued for reliable processing.
Queue
BullMQ processes submissions asynchronously. Webhooks fire, emails send, integrations trigger — all with automatic retries.
Analyze
Track completion rates, field-level analytics, and export data. Real-time insights into every form.
Simple, transparent pricing
Start free, scale as you grow. No hidden fees, no surprises.
Free
Perfect for side projects and prototyping.
- Up to 5 forms
- 1,000 submissions/month
- 1 organization
- Queue processing included
- Basic analytics
- API access
Pro
For growing teams and production apps.
- Unlimited forms
- 50,000 submissions/month
- 5 organizations
- Priority queue processing
- Advanced analytics
- Webhooks & integrations
- Custom branding
- File uploads (10GB)
Define once, use everywhere
Your form schema is the single source of truth. Create it via API or dashboard, render it anywhere.
{
"name": "Contact Form",
"key": "contact-form",
"version": "1.0.0",
"fields": [
{
"key": "full_name",
"type": "text",
"label": "Full Name",
"required": true,
"validation": { "minLength": 2, "maxLength": 100 }
},
{
"key": "email",
"type": "email",
"label": "Email Address",
"required": true
},
{
"key": "subject",
"type": "select",
"label": "Subject",
"options": ["General Inquiry", "Technical Support", "Sales"]
},
{
"key": "message",
"type": "textarea",
"label": "Message",
"required": true,
"validation": { "minLength": 10, "maxLength": 2000 }
}
]
}Integrates with your stack
Connect with the tools you already use. More integrations coming soon.
Loved by developers
See what developers are saying about FormQ.
FormQ replaced our entire custom form backend in a weekend. The API is incredibly well-designed.
Sarah Chen
Senior Engineer, TechCorp
The embeddable widget is a game-changer. Under 19KB and it just works. No more form library headaches.
Marcus Rodriguez
Frontend Lead, StartupXYZ
Finally, a Form.io alternative that doesn't cost a fortune. The schema-driven approach is exactly what we needed.
Emily Nakamura
CTO, FormFlow Inc.