Design powerful forms, surveys and appointment flows. Ship them as lightning‑fast web components. One source of truth across all your sites, apps and tenants.
From schema to submission — Formbino handles the full lifecycle.
Drag‑and‑drop fields, validations, branching, file uploads.
Drop‑in web components that work with any CMS or JS stack.
Webhooks, email rules, approvals and integrations.
Dashboards & exports to understand completion and conversion.
Ship consistent experiences across brands, tenants and regions with a single schema.
Design your schema with fields, validation and branching logic.
Versioned releases produce a lightweight <formbino-form>.
Paste the snippet in any site or app. It just works.
Copy one snippet. Configure via attributes.
<script src="https://cdn.formbino.com/embed/form/form.js"></script>
<formbino-form
id="your-form-id-here">
data="{ name: 'Jane Doe', email: 'jane@example.com' }"
</formbino-form>
Each published form version is available as a web component with a stable ID. Include the loader script once and drop the tag anywhere.
Yes. Formbino itself never stores submitted data. It’s purely a form builder and renderer. You define your own endpoint or email address for submissions, ensuring that data remains fully owned and controlled by you or your organization.
You can prefill form fields by passing a data attribute to the embed with a JSON string mapping field names to their values, or by configuring a prefill endpoint that returns JSON with fieldname → value pairs.
<script src="https://cdn.formbino.com/embed/form/form.js"></script>
<formbino-form
id="your-form-id-here"
data="{ name: 'Jane Doe', email: 'jane@example.com' }">
</formbino-form>
Or configure an endpoint that returns something like:
{
"name": "Jane Doe",
"email": "jane@example.com"
}