Meta Conversions API setup for Contact Form 7
Bind Lead to wpcf7mailsent, count the WordPress pixels first, and use a generated lead ID as event_id since Contact Form 7 doesn't issue one.
Free30 minutesNo obligation
Contact Form 7 + Meta CAPI · what breaks
What goes wrong on Contact Form 7
- 01
No entry storage by default
It emails submissions. There's nothing to reconcile against without an add-on.
- 02
AJAX submission
So URL-bound triggers never fire.
- 03
No native submission ID
You have to generate one for deduplication.
- 04
WordPress caching and plugin sprawl
Inherited.
Contact Form 7 + Meta CAPI · the fix
What changes — Contact Form 7 + Meta CAPI
Conversions bound to wpcf7mailsent
A real event.
Click IDs in the submitted data
Hidden fields populated on landing.
A reconcilable record
Where storage has been added.
Contact Form 7 + Meta CAPI · architecture
How Meta tracking behaves on Contact Form 7
Bind the Lead event, count the pixels.
- 1
Pixel inventory first
It's WordPress.
- 2
Lead on wpcf7mailsent
Browser-side.
- 3
CAPI from the PHP action
Server-side.
- 4
Generated lead ID as event_id
Shared by both paths.
- 5
Customer data from the submission
Normalized before hashing.
Contact Form 7 + Meta CAPI · diagnose
Where Contact Form 7 tracking breaks, in diagnostic order
Each check rules out a class of cause, so by the last one there is usually a single explanation standing.
- 01
Submit a form and watch the URL
AJAX, so no change.
- 02
Check whether entries are stored anywhere
Without an add-on, they aren't.
- 03
Confirm hidden fields have values
Not just that they exist.
- 04
List tracking-adjacent plugins
WordPress inventory.
- 05
Establish what you can reconcile against
Honestly.
Contact Form 7 + Meta CAPI · prove
The QA evidence — Contact Form 7 + Meta CAPI
Run on Contact Form 7 specifically, on a live conversion rather than in preview mode.
Source of truth
your Contact Form 7 mail or CRM records
- Conversion confirmed firing on wpcf7mailsent for a real submission.
- Click identifiers confirmed present in the submitted data.
- A generated lead ID confirmed on both paths.
- Entry storage confirmed, or the reconciliation limit documented.
- Submissions reconciled against your CRM where possible.
- Reconciled over a fully closed window, matched per record rather than on totals.
- Re-checked 30 days later, and after any platform update.
Contact Form 7 + Meta CAPI · free audit
What we check in the free audit
- Submit a form and watch the URL
- Check whether entries are stored anywhere
- Confirm hidden fields have values
- List tracking-adjacent plugins
- Establish what you can reconcile against
Checked against
your Contact Form 7 mail or CRM records
Free30 minutesNo obligation
Contact Form 7 + Meta CAPI · when not to buy
When you don't need this on Contact Form 7
Worth reading before you buy anything, from us or anyone.
- If your conversions fire on wpcf7mailsent and carry click IDs, the core work is done.
- Binding to wpcf7mailsent is a few lines of JavaScript. Any developer can do it.
- If you have no entry storage and no CRM, reconciliation isn't available to you — that's worth accepting rather than paying to work around.
- Adding a storage add-on is usually cheaper than any tracking work and unlocks reconciliation. Consider that first.
Contact Form 7 + Meta CAPI · what we deliver
What gets built for Meta on Contact Form 7
A shared event ID on both paths
A lead ID you generate at submission — Contact Form 7 doesn't issue one of its own.
Standard event names, exactly cased
Meta matches on name and ID together, so a case difference alone produces two events.
Customer data normalized then hashed
Lowercase and trimmed email, phone in E.164. This is where nearly every low match quality score comes from.
fbc and fbp forwarded from the browser
fbc only exists if fbclid was captured on landing — a very common gap.
Written guarantee
95%+ tracking accuracy
Measured against your Contact Form 7 mail or CRM records. Miss it and we keep working at no cost.
Pricing
Pick the package that fits your ad spend
Browser-side starter
$400One-time fee · lifetime ownership
Repairs and verifies the browser-side setup you already have, on a live conversion. Honest about its ceiling on this platform.
- Root cause fixed, not worked around
- Verified on a live conversion
- Reconciled against your own records
- Written handover
1st-party server-side
Recommended$800One-time fee · most popular
Money events sent from your own records through a first-party container on your subdomain, so the browser can no longer lose them.
- First-party server container on your own subdomain
- Money events from your records, not the browser
- Deduplicated on a shared event ID at every destination
- First-party cookies beyond Safari's 7-day cap
- 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Full 1st-party stack
$1,800One-time fee · lifetime ownership
Every paid channel server-side plus the offline loop, with monitoring so the next break surfaces in days.
- Everything in 1st-party server-side
- Pinterest, Snapchat, Reddit and LinkedIn CAPI
- CRM and offline conversion loop
- Refunds and cancellations corrected wherever each platform allows it
- Monitoring on every destination
FAQ
Contact Form 7 + Meta CAPI questions, answered
Bind it to wpcf7mailsent.
One you generate at submission, written to both the browser event and your CRM.
It's WordPress. Inventory the plugins first.
Capture fbclid on landing into a hidden field.
Free · 30 min
Get Pixel and CAPI counting once on Contact Form 7
Free30 minutesNo obligation
