Steps & logic
Conditions and forward jumps—checked again on the server, so nobody can skip a required field.
IllusionForms is a visual form builder for websites and online marketing: multi-step funnels, logic, file uploads and workflows. Every submission lands in your own instance—not in someone else’s cloud. One Go binary, one SQLite file.
Embed on any website, or pick forms right in IllusionCMS. Admin in English, German, French, Italian and Spanish.

Drop fields onto the form, edit labels right where they appear, add steps, conditions and jumps.
One script tag or the IllusionCMS block—the form brings its theme and is shielded from your site’s CSS.
Submissions land in the inbox. Workflows send emails, write to IllusionCMS or IllusionDB, or call your CRM.
You build directly on the rendered form: click a label to rename it, drop fields from the palette, check desktop, tablet and mobile.

New submissions stay marked until you open them—for each person separately, so nobody misses one. Filter by form, date and status, search the answers, export as CSV.

The funnel shows every step of a form: how many visitors reached it, how many left there, and which fields they filled in before they stopped. The biggest drop-off is marked—so you know which question to fix first.

The same flow engine as in IllusionCMS: start on a submission, a saved step, an abandoned form—or while someone is still filling it in.

Colors, fonts, corners, spacing and transitions—set them once in a theme and use it for as many forms as you like. The preview shows every change right away.

Connect IllusionCMS to your Forms instance once, with a token that can only list forms. From then on, editors pick a form from a list—in a building block or a collection field—and the CMS embeds it.
illusionforms("contact") in any template{# Template of a page #}
<section class="contact">
<h2>Write to us</h2>
{{ illusionforms("contact") }}
</section>
{# Building block with a parameter of type "Form" #}
{{ illusionforms(form) }}
From the contact form to the lead funnel with ten steps—without plugins and without a SaaS subscription.
Conditions and forward jumps—checked again on the server, so nobody can skip a required field.
Answers are saved after every step, and a workflow can follow up on abandoned forms.
Honeypot, minimum fill-in time and rate limits—no puzzles for visitors, no third-party service.
Size and type limits per field. Files are stored on your server.
One script tag, hidden fields and UTM values from the page address, events for your analytics.
Views, starts, submissions and conversion per day—filtered by device, website and campaign.
One file with forms, themes, fonts and images—and the submissions, if you want.
Manage your live instance from your local admin—or switch its admin off completely.
Forms collect names, email addresses and often much more. That’s why IllusionForms keeps everything in a place you control: your server, your database file, your backups.
Free to use and self-hosted—no limits on forms, submissions or users.
Free of charge, without an account. Unpack, start, open http://localhost:8085—the setup code for the first account is in the log.
Release notes and checksums below the list. The Docker package contains a Dockerfile and a Compose file.