Contact Form 7 does not store submissions: once the email is sent, the data is gone. The usual fix is to bolt on a storage add-on that keeps everything forever, including IP addresses, with no expiry. The moment a form collects personal data, that becomes unbounded risk.
The Bonnie Situation captures every Contact Form 7 submission to the database
and treats stored data as a liability. It suppresses IP storage by default and automatically deletes entries after a configurable number of days, enforced by a scheduled job. Clean it up before Bonnie gets home.
What it does
- Capture every CF7 submission to a custom table, after mail handling, so it never delays or blocks your email.
- Browse, search, sort and filter submissions in a modern DataViews admin, with a per-submission detail view.
- Delete individual submissions permanently, on demand.
- Delete-only retention: suppress IP storage and automatically delete submissions after a configurable number of days — enforced daily by WP-Cron, with an audit log of every purge.
- Subject-request tooling: integrates with WordPress's Tools → Export/Erase Personal Data so requests by email include captured submissions.
Privacy-first defaults
IP storage is off, spam is discarded, user agent and referrer are off, and only mapped fields are stored. The plugin provides controls that support GDPR / UK GDPR / Australian Privacy Act / CCPA compliance; lawful basis and configuration remain the site operator's responsibility. This is not legal advice.
Bonnie Pro
This plugin is fully functional on its own: it captures submissions and enforces delete-only retention.
Bonnie Pro, a separate add-on distributed off
WordPress.org, adds:
- CSV / JSON export of the current view or selected rows.
- Address book of deduplicated contacts, with click-through to each contact's submissions.
- Trash workflow — soft-delete with a restore window and a hard cap that force-deletes trashed entries, instead of the free delete-only model.
- Bulk delete across selected submissions.
- Per-form overrides — each form sets its own policy, window, IP rule and field mapping on the Contact Form 7 editor.
- IP anonymisation — store a masked address (last octet / last 80 bits) instead of the full IP.
- WP-CLI —
wp bonnie purge runs the retention sweep on demand.