Use your components, not an iframe.
Keep the form on your route and let your design system own every visible control.
app.acme.co/onboarding/check-inOnboarding check-in
Compare Tally with Fillo when a hosted form moves into your app: native controls in your own route and a schema shared across validation and responses.
Tally is quick for a link, popup, or iframe. Fillo is for the point where the form needs your components, signed-in context, and product behavior.
Keep the form on your route and let your design system own every visible control.
app.acme.co/onboarding/check-inOnboarding check-in
Stable field IDs carry from the rendered form through server checks, responses, and exports.
Attach the account and route without making the person repeat details you already know.
Connect your own storage and keep each file attached to the response that brought it in.
Tally is a hosted builder. You share its forms as a link, popup, or iframe. Fillo renders the form inside your app and handles validation, uploads, and responses behind it.
| Decision | Fillo | Tally |
|---|---|---|
| Rendered form | Native React or DOM controls, fully headless UI, or a hosted page | Tally-hosted form in standard, popup, or full-page embeds |
| Authoring | Dashboard or typed defineForm() schema | Document-style visual builder |
| Application identity | Optional server-verified respondent ID from your app | Hidden values and Tally's duplicate-submission controls |
| File destination | Browser-direct upload to storage connected by your workspace | Files collected and managed through Tally's service and plan rules |
| Calculations | Numeric calculated fields: totals and derived values, recomputed on the server | Calculations are a documented Tally feature |
| Payments | No payment field today | Payment collection is a documented Tally feature |
| Pricing shape | Fillo plans limit completed responses; renderer access is included on both plans | Tally advertises unlimited forms and submissions within its fair-use policy |
Check Fillo plans and limits and Tally's current pricing before comparing costs for a live form.
| Existing Tally form | Expected work |
|---|---|
| Questions, required fields, and a single completion screen | Rebuild the fields, publish, and replace the link or embed |
| Pages, hidden values, logic, numeric calculations, uploads, and destinations | Map each rule and setting, rebuild calculations as calculated fields, connect storage, and test every path |
| Payments, custom code, non-numeric calculations, or automations built around Tally payloads | Redesign those parts and update downstream consumers before cutover |
Old Tally submissions don't become Fillo responses. Export them and keep the archive under its existing access and retention policy.
Open the editor and rebuild one real form first. If it works for your team, read Migrate from Tally for the full checklist.
Updated