Meta Conversions API setup for Webflow
Webflow sites usually have one pixel, added in site settings, which makes duplication rarer than on WordPress. The common failure is the opposite: the Pixel fires on page view and the Lead event never fires at all, because it was bound to a navigation.
Free30 minutesNo obligation
Webflow + Meta CAPI · what breaks
What goes wrong on Webflow
- 01
Forms submit and nothing is tracked
AJAX submission with no navigation, so URL-based triggers never fire.
- 02
Hidden fields present but empty
The field exists and nothing populates it on landing.
- 03
All forms counted as one conversion
A newsletter signup and a demo request are not the same event.
- 04
No server-side code
Webflow hosting doesn't run yours, which constrains where events can come from.
Webflow + Meta CAPI · the fix
What changes — Webflow + Meta CAPI
Conversions firing on real submission success
Bound to Webflow's own state.
Click IDs arriving with the lead
Populated on landing into hidden fields.
Each form separately identifiable
In the event data.
Webflow + Meta CAPI · architecture
How Meta tracking behaves on Webflow
Fewer paths than most platforms; the issue is usually the missing Lead event.
- 1
Pixel in site settings
One place, which is why duplication is rarer here.
- 2
Lead event bound to success state
Not to a navigation.
- 3
A lead ID as event_id
If you send a server event too.
- 4
fbclid captured on landing
Into a hidden field, so fbc exists.
- 5
Customer data from the submission
Normalized before hashing.
Webflow + Meta CAPI · diagnose
Where Webflow 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
It won't change. That's the diagnosis.
- 02
Check hidden fields have values
Not just that they exist.
- 03
Confirm forms are distinguishable
In the event data.
- 04
Test the error state
A failed submission must not count.
- 05
Reconcile submissions against your CRM
For a closed month.
Webflow + Meta CAPI · prove
The QA evidence — Webflow + Meta CAPI
Run on Webflow specifically, on a live conversion rather than in preview mode.
Source of truth
your form submission or CRM records
- Conversion confirmed firing on a real submission with no navigation.
- Hidden fields confirmed populated, not merely present.
- Each form separately identifiable in the event data.
- Error state confirmed producing no conversion.
- Submissions reconciled against CRM records for a closed month.
- Reconciled over a fully closed window, matched per record rather than on totals.
- Re-checked 30 days later, and after any platform update.
Webflow + Meta CAPI · free audit
What we check in the free audit
- Submit a form and watch the URL
- Check hidden fields have values
- Confirm forms are distinguishable
- Test the error state
- Reconcile submissions against your CRM
Checked against
your form submission or CRM records
Free30 minutesNo obligation
Webflow + Meta CAPI · when not to buy
When you don't need this on Webflow
Worth reading before you buy anything, from us or anyone.
- If your Webflow conversions already fire on submission and your hidden fields carry click IDs, the classic Webflow problem doesn't apply to you.
- Binding to the success state is a small piece of custom code. If you have a Webflow developer, this is an hour of their time.
- Redirecting to a thank-you page instead is simpler and costs you the inline success experience — and a refresh of that page will double-count unless guarded.
- Server-side on Webflow is worth it for cookie durability and consent control, not for fixing the submission binding. Fix that first, cheaply.
Webflow + Meta CAPI · what we deliver
What gets built for Meta on Webflow
A shared event ID on both paths
A lead ID generated at submission, written into the hidden fields and the CRM record.
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 form submission 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
Webflow + Meta CAPI questions, answered
The Lead event was bound to a navigation that Webflow's AJAX submission never performs.
Less than most platforms — there's usually one pixel in site settings. Missing events are the more common fault.
Capture fbclid on landing into a hidden field. Without that, fbc never exists and match quality is capped.
Only if you're losing events or need off-browser conversions. Fix the Lead event first and reconcile.
Free · 30 min
Get Pixel and CAPI counting once on Webflow
Free30 minutesNo obligation
