# Gravity Forms conversion dashboard with dead form alerts

> See submissions, page views, and a real conversion rate for every form on your WordPress site, with dead and declining forms flagged for you.

- Workflow type: app
- Services: Gravity Forms, Google Analytics, Slack Bot
- Categories: Marketing, Operations
- Published: 2026-08-22

## What it does

- Every form on your site in one table, with submissions for the date range you choose and a trend line showing whether it is climbing or fading.
- A real conversion rate for each form, built from the visitor numbers for the page that hosts it, so a busy page and a quiet page are judged fairly.
- Automatic flags for dead forms with no submissions in the last thirty days, and for forms whose conversion rate slipped further than the drop you consider acceptable.
- An Audit button that sends a background assistant through a form's questions and recent answers to write back what is likely costing you completions, plus one-click sharing of the summary to your Slack channel.

## What you'll need

- A WordPress site running Gravity Forms, and administrator access so you can connect it.
- A Google Analytics account with access to the property that tracks the same site.
- A Slack workspace, if you want to share snapshots with your team.
- The page address for each form, for example /contact or /request-a-demo. You enter these once in the app so page views can be matched to the right form.

## Prompt

I run a WordPress site with a lot of Gravity Forms forms on it, and I have no real idea how any of them are performing. Gravity Forms has no built-in reporting and the entries screen only shows raw rows. Build me an app my marketing and web ops team can open to see how every form on the site is actually converting. The app is read-only against Gravity Forms: it must never create, edit, or delete a form or an entry.

The main view is a dashboard listing every form on the site, pulled with the Gravity Forms List Forms operation, which returns each form's id, title, and total entry count. At the top sits a date range control with presets for the last 7, 30, and 90 days plus a custom range. For each form, show submissions in the selected range, a small trend line of submissions over time, page views for the page hosting that form, a conversion rate, and the change versus the immediately preceding period of the same length. Submissions and the trend line come from List Entries by Form, filtered by entry date and bucketed by day, or by week when the range is longer than about sixty days. Use the paging parameters on that operation so forms with many entries are counted fully instead of stopping at the first page.

Conversion rate needs page views, and the app cannot infer which page hosts which form, so include a small mapping screen where each form is paired with the path of its landing page, for example /contact or /request-a-demo. Persist those pairings in the app so they survive between visits and are shared across the team. A form with no page paired yet still shows its submissions and trend, but the conversion rate cell reads "Pair a page" and links straight to the mapping screen. Never guess the path.

For page views, use Google Analytics Run Report (GA4). Do not ask the person for a property ID and do not hardcode one: discover the available properties with List Account Summaries, let them pick which property tracks this site the first time they open the app, and remember the choice. Run the report with pagePath and date as dimensions and screenPageViews as the metric over the selected range, filtered to the paths that have been paired with a form, then run it a second time over the prior period of equal length so the change column has something to compare against. Conversion rate for a form is its submissions divided by the page views for its paired path.

Flag problem forms automatically and surface them in a section pinned to the top of the dashboard. A form is dead if it has had zero submissions in the last thirty days. A form is declining if its conversion rate dropped more than a threshold I set versus the prior period. Both the dead window and the drop threshold live on a settings screen with sensible defaults, thirty days and a twenty-five percent relative drop, and both are editable. Sort the flagged section so the forms wasting the most traffic appear first, since a dead form on a page with two thousand visitors matters more than one nobody sees.

Clicking a form opens a detail view with a larger trend chart, its paired page and page-view numbers, a readable table of recent entries, and the audit recommendations described below.

Every form gets an "Audit this form" button that kicks off a background agent. The agent pulls the full form object including its field definitions by calling List Forms for that specific form id, since requesting specific ids returns the complete form object rather than just the summary, and pulls a sample of the most recent entries for that form with List Entries by Form. It then works out what is likely hurting completion: too many fields overall, too many required fields, a long free-text question, a field that a large share of respondents leave blank, redundant questions, or a demanding field sitting too early in the form. It writes a short ranked set of recommendations back into the app, each one carrying the evidence behind it, for example "the Company Size field is blank on 71 percent of the last 50 entries", and those recommendations render on that form's detail view. Store each audit with a timestamp and keep previous audits so we can tell whether one was acted on. While the agent is running, show that form's audit as in progress without blocking the rest of the dashboard.

A "Share snapshot" button posts the current summary to our marketing channel using the Slack Bot Send a Message operation. The message should carry the date range, the top forms by conversion rate, the flagged dead and declining forms, and the overall submission total, formatted to be readable in Slack rather than a wall of numbers. Let people choose the destination channel from a picker built with List Channels, and remember the last channel used.

A few details to get right. Gravity Forms entry values are keyed by numeric field id, so use the field definitions from the form object to show real question labels anywhere entries or audit findings are displayed. Exclude inactive and trashed forms by default, with a toggle to show them. Cache fetched numbers for a few minutes and give the dashboard a refresh control, so flipping between date ranges does not hammer Gravity Forms and Google Analytics harder than necessary.

## How to customize

- Change what counts as dead. Thirty days with no submissions is the default, but a seasonal or event form might deserve sixty or ninety.
- Set your own drop threshold for the declining flag, so you only get warned when a fall is big enough to be worth chasing.
- Pick which Slack channel snapshots go to, and choose the date range the shared summary covers.

## FAQ

### Do I need the paid Gravity Forms analytics add-on for this?

No. The app reads the forms and entries already stored on your WordPress site, and gets visitor numbers from your existing Google Analytics. There is nothing extra to install on the site itself.

### Why does one of my forms show submissions but no conversion rate?

Because it has not been paired with a page yet. There is no reliable way to tell which page a form is embedded on, so you pair each form with its page address once on the mapping screen. After that the conversion rate fills in.

### Will this change anything in my forms or entries?

No. It only reads. The app never creates, edits, or deletes a form or a submission, so you can hand it to a marketing team without worrying about the data behind it.

### How far back can I look?

As far back as your own data goes. Submissions are limited by how long you keep entries on your site, and visitor numbers are limited by how long Google Analytics retains data for your property, which is often two or fourteen months depending on your settings.

### What does the Audit button actually look at?

It reads the form's questions and a sample of recent answers, then reports on things like the total number of fields, how many are required, long open-text questions, and any field most people leave blank. You get a short ranked list of what to try changing.

### Can several people on the team use it?

Yes. The page pairings, thresholds, and audit results are saved in the app, so whoever opens it sees the same setup and the same history rather than starting from scratch.

Use this prompt in General Input: https://www.generalinput.com/prompts/gravity-forms-conversion-dashboard-with-dead-form-alerts