# Compare completion rates across all your Fillout forms

> See every Fillout form ranked by completion rate, find the exact question people quit on, and get plain English fixes you can ship today.

- Workflow type: app
- Services: Fillout, Slack Bot
- Categories: Marketing, Operations
- Published: 2026-08-21

## What it does

- One overview page ranks every form in your Fillout account by completion rate, submission volume, and whether it is trending up or down.
- Click any form to get a question by question drop off breakdown, so you can see exactly where people quit or leave a field blank.
- A "Diagnose this form" button sends a background agent to compare unfinished starts against completed responses and write specific rewording and reordering suggestions.
- Every diagnosis is saved, so recommendations stack up in a history panel, and one click shares the current snapshot to a Slack channel.

## What you'll need

- A Fillout account with at least one live form, plus an API key from the Developer tab in your workspace settings.
- A Fillout Zite database to hold saved diagnoses. The app can create the table for you the first time you run a diagnosis.
- A Slack workspace, if you want to use the share button. Everything else works without it.
- Enough responses for the numbers to mean something. Forms with only a handful of starts will show noisy rates.

## Prompt

Build me an app for seeing which of my Fillout forms are actually converting. Fillout's own analytics only covers one form at a time with no way to compare forms, so the reason to open this app is the cross form view plus a question level drop off breakdown underneath it.

Overview page. Use Fillout List Forms to get every form in the account. For each form, pull two sets of submissions with List Form Submissions: the default finished responses, and the drafts by requesting the in_progress status. Show a sortable table with one row per form: form name, total starts (finished plus in progress), completed submissions, completion rate calculated as finished divided by starts, and a trend indicator comparing the completion rate over the last 30 days against the previous 30 days using submission timestamps. Let me sort by any column and filter to a date range, and highlight forms whose completion rate fell versus the previous period. Page through the submission fetches (List Form Submissions takes a limit of up to 150 with an offset) and cache the computed metrics in the handler so the page does not refetch everything on every interaction.

Form drop off page. Clicking a row opens a detail page for that form. Use Get Form Metadata to get the questions in their real order, then walk both submission sets question by question. For each question show how many completed responses left it blank, how many in progress drafts have no answer for it, and how many drafts stopped there, meaning that question is the last one with an answer before the draft runs out. Render it as a funnel from the first question to the last so the single biggest drop is obvious at a glance, and call out the worst question in a summary line at the top of the page.

Diagnose this form. Put a "Diagnose this form" button on the form page that kicks off a background agent. The agent compares the abandoned drafts against the completed submissions for that form, reads the question wording, types, and ordering from Get Form Metadata, and writes a plain English diagnosis: which question is losing people, the likely reason (wording, ordering, length, question type, asking for something sensitive too early), and specific suggested rewrites and reorderings. It saves the result into a Zite table using Create Record, with fields for form id, form name, run date, a one line headline, the full diagnosis, and the list of suggestions. If that table does not exist yet, create it once with Create Table in a Zite database the user picks, discovered with List Databases.

History panel. On each form page, show a history panel of past diagnoses for that form, read with List Records filtered to the form id and sorted newest first. Each entry is collapsible: headline collapsed, full diagnosis and suggestions expanded. The point is that recommendations stack up over time, so I can see what was suggested before and whether the completion rate moved after I acted on it.

Share. A share button on the overview page and on each form page posts the current snapshot to a Slack channel using the Slack Bot Send a Message action, with the channel picked from a dropdown populated by List Channels. The overview snapshot is the ranked list of forms with completion rates and trend. The form snapshot is the worst drop off question plus the headline from the latest diagnosis.

Important constraint: this app never contacts respondents. It does not email or message anyone who abandoned a form. Draft data is read only in aggregate to diagnose the design of the form, and everything the app writes is a recommendation to the form owner about the form itself, never about chasing individual people.

Edge cases to handle: a form with very few starts should show raw counts instead of a misleading percentage; a form with zero submissions should still appear in the list with an empty state; and respect Fillout's rate limits by batching the per form submission fetches rather than firing them all at once.

## How to customize

- Change the date range behind the trend arrow. The default compares the last 30 days against the previous 30.
- Set a completion rate threshold so weak forms get flagged automatically on the overview page.
- Choose which Slack channel the share button posts to, and edit the wording of the shared snapshot.

## FAQ

### Does Fillout not already show me completion rates?

Fillout shows completion rate, views, and drop off for one form at a time. This app puts every form side by side in a single ranked list, which is the part you cannot do inside Fillout, and then drills into any one of them question by question.

### Does this email the people who abandoned my form?

No. It reads unfinished starts only to work out which question is causing the problem, and it never contacts respondents. Everything it produces is advice to you about the form itself.

### Where do the recommendations get saved?

In a table in your Fillout Zite database. Past diagnoses stay available in a history panel on each form page, so you can look back and see whether a change you made actually moved the completion rate.

### How does it know someone stopped at a specific question?

It compares the answers present in unfinished starts against completed responses. The last question that has an answer in an abandoned start is where that person gave up, and the app adds those up across everyone.

### Will it work if my forms have very few responses?

Yes, but it will show raw counts instead of a percentage when a form has too few starts for a rate to be meaningful, so you are not chasing a number built on five people.

Use this prompt in General Input: https://www.generalinput.com/prompts/compare-completion-rates-across-all-your-fillout-forms