Unbounce

Connect Unbounce & set up form-submission tracking

Unbounce form submissions hit FunnelTrack via webhooks. FunnelTrack matches each submission to the visitor's pre-submission ad session using the FunnelTrack pixel plus IP + user-agent fingerprinting, then routes the conversion to Meta, Google Ads, GA4, TikTok, and any other connected destination — each with a deduplication-grade event ID so your platform-side reporting stays clean.

What you'll need
  • An Unbounce Build plan or higher. Unbounce gates both Script Manager (needed to deploy the FunnelTrack pixel) andwebhooks (needed to send form submissions to FunnelTrack) behind the Build tier. Starter / Launch plans can't use either.
  • Admin access to your Unbounce account
  • The FunnelTrack pixel deployed on every Unbounce page
  • At least one connected destination (Meta CAPI, Google Ads, etc.)
  • About 10 minutes per page with a form
Heads up — Unbounce Build plan required
Unbounce gates both custom scripts and webhooks to the Build planand above. Custom scripts are how the FunnelTrack pixel installs; webhooks are how form submissions get sent to FunnelTrack. If you're on Unbounce's Starter or Launchplan, neither piece works and this integration can't function. There's no workaround on FunnelTrack's side — upgrading with Unbounce is a prerequisite for setup.

Setup

Deploy the pixel, wire each page's webhook to FunnelTrack, then configure events per destination.

1

Add the FunnelTrack pixel via Script Manager

In Unbounce, open Script Manager and add your FunnelTrack pixel snippet. Use these settings:

  • PlacementHead
  • Included onAll pages
Unbounce Script Manager showing the FunnelTrack pixel snippet pasted in, Placement set to Head and Included on set to All
Script Manager → Add Script → paste the FT pixel, Placement: Head, Included on: All.
Deploy on every page
FunnelTrack needs the pixel firing on every page in the funnel — not just the form page. That's how we stitch the eventual webhook submission back to the visitor's click ID and ad-session history. Setting Included on: All handles this in one shot.
2

Open the page where your form lives

Webhook setup in Unbounce is per-page. From the Unbounce pages list, open the landing page that contains the form you want to track. You'll repeat this step for every page with a form.

Unbounce pages list / page overview
Open each landing page individually — Unbounce doesn't have account-level webhook config.
3

Add the FunnelTrack webhook URL

On the page's overview, open the Webhooks tab and paste the FunnelTrack webhook URL from Integrations → Sources → Unbounce. Set the request format to JSON.

Unbounce Webhooks tab on a specific page with the FunnelTrack URL pasted in
Webhooks tab → paste the FT URL → Request Format: JSON.

The URL follows this format:

https://app.funneltrack.com/api/webhook/unbounce/{workspace_id}
Treat this URL like a secret
The webhook URL is scoped to your workspace — anyone with the URL can post submissions into your FunnelTrack account. Don't paste it into public docs, screenshots, or shared spreadsheets.
4

Standard form data mapping — do not edit

Unbounce ships two sets of fields in the webhook payload by default: Page Data (auto-populated by Unbounce) and Form Data (the fields your visitor filled out). FunnelTrack reads both by their default names, so the mapping section on the Unbounce side should be left as-is.

Unbounce webhook field mapping section, top portion
Field mapping — leave the default names alone so FT can auto-detect.
Close-up of the Unbounce Page Data fields including page_uuid, variant, time_submitted
Page Data fields — Unbounce sets these automatically and FT reads them by these exact names.
Unbounce Page Data — do not edit
These fields are auto-populated by Unbounce and FunnelTrack relies on them as-is:
  • email — primary email captured by the form
  • ip_address — visitor IP
  • page_uuid — Unbounce page UUID (form discriminator)
  • variant — A/B variant (a, b, etc.)
  • time_submitted — UTC time
  • date_submittedYYYY-MM-DD
  • page_url — page URL
  • page_name — page name
Standard user-data form fields — do not edit the form field IDs
If your form fields use these exact IDs, FunnelTrack auto-detects and maps them to user data on every event with zero configuration.
Field on your formFT canonicalAuto-detected Unbounce field ID(s)
First Namefirst_namefirst_name
Last Namelast_namelast_name
Full Namefirst_name + last_namename (FT splits on first space)
Emailemailemail
Phonephonephone or telephone
Countrycountrycountry
Region/State/Provinceregionstate, province, or stateprovince
Citycitycity
Zip / Postal Codezip_codezip, zip_code, postal_code, or postcode

If you've already shipped forms with custom field IDs (like contact_email or mobile_number), don't panic — FunnelTrack's value-pattern detection still catches email-shaped and phone-shaped values regardless of the field name. For anything else, use the User Data section on the FT event to manually map.

5

(Optional) Add a custom form_id field — Pro Tip

By default Unbounce ships page_uuid as the form identifier, which is functional but not human-readable. Adding a hidden custom field on the Unbounce form called form_id with a friendly value (e.g. webinar_lead or contact_us) lets you reference that name as a custom event parameter or filter condition inside FunnelTrack.

Unbounce custom field added for form_id with a friendly value
Add a hidden form_id field so FT (and your downstream reports) speak in human-readable form names.
Especially useful for multi-form workspaces
If you're using the All Form Submissions template or running the same lead form across multiple landing pages, a custom form_id gives you one consistent identifier to filter and route on — instead of juggling a list of page_uuids.
6

Add a form-submission event in a connected destination

In FunnelTrack, open a connected destination's routing page (e.g. Unbounce → Meta Conversions API). Either use the All Form Submissions template for broad coverage, or add a per-form custom event. Then:

  • Submit a test form so FT has a payload to discover
  • Click Add Event
  • Click Find Last Submission to pull the discovered field schema
  • Assign an event name (this is what shows in the integration's event summary and on the outbound dispatch)
FunnelTrack Add Event modal for Unbounce showing the Find Last Submission button
Click Find Last Submission and FT discovers every field from the most recent payload.
7

(Optional) Map Event Parameters + User Data Parameters

Two kinds of parameters can be mapped on the event:

  • Event Parameters — static values you type in (e.g. currency: USD) or dynamic values mapped from form fields (e.g. value from a budget field). These ship to the destination as standard or custom event parameters.
  • User Data Parameters — FunnelTrack auto-captures email, phone, name, address, etc. from the standard fields. If your form collects identifiable info for multiple people (e.g. a referral form with both referrer and referee emails), use this section to manually map which field is the primary contact. Otherwise FT picks the first found contact value automatically.
FunnelTrack Add Event modal showing Custom Parameters and Conditions sections
Event Parameters + User Data Parameters — static, dynamic, or auto-mapped.
8

(Optional) Set Event Conditions

Use the Conditions section to fire the event only when the submission matches certain criteria. A common Unbounce pattern is gating on variant to split A/B-test conversions into separate reporting events — e.g. only fire the event when variant equals a.

9

Test & deploy

Save the event card. Submit a final test entry on the form — the saved card on the routing page summarizes the event as configured, the inbound usage log row reads Form Submission, and the outbound log row reads the destination event name you assigned.

FunnelTrack routing page showing the saved All Form Submissions template card
The All Form Submissions template — broad coverage across every form posting to this workspace.
FunnelTrack routing page showing a saved per-form custom event card
Per-form custom cards — scoped by page_uuid or a custom form_id, ideal when you want distinct conversion events per funnel.
FunnelTrack usage log showing inbound Form Submission and outbound dispatch
Inbound row reads Form Submission; outbound row reads the destination event name you configured.
FunnelTrack outbound payload sample for an Unbounce event
The outbound payload — exactly what FT sent to the destination, including user data and event parameters.

Notes & best practices

A few things worth knowing before you scale this across every Unbounce page.

  • Unbounce webhook setup is per-page.If you have a form on 5 landing pages, configure 5 webhooks. Same FunnelTrack URL, just paste it into each page's Webhooks tab.
  • The FT pixel must be deployed via Script Manager. Set Placement to Head and Included on to All. Without the pixel, FT still receives the webhook but can't stitch it to the visitor's pre-submission browsing — match quality drops materially.
  • page_uuid is the discriminator FT uses to identify forms. Unbounce doesn't have form-level IDs like Gravity Forms or Jotform — every form is "the form on this page." Add a custom form_id hidden field if you want human-readable identification.
  • A/B variants on the same page share a page_uuid but differ on variant. Use Conditions (variant equals a) to route variants to different conversion events.
  • One webhook URL, every page.Your workspace has a single FunnelTrack webhook URL — paste the same URL into every Unbounce page's Webhooks tab. FT routes based on page_uuid (and optional form_id) inside the payload.

Events we support

What Unbounce can send to FunnelTrack out of the box.

Unbounce ships one event type through its webhooks: a form submission. FunnelTrack receives the full payload and discovers every field on the form, so you can map any of them to event parameters or user data on the destination side.

There's no fixed event catalog here — each page's submission is the event, and page_uuid (plus an optional custom form_id) is the discriminator FunnelTrack uses to route it to the right destination config.

Common tracking examples

A few patterns most FunnelTrack accounts end up running.

  • Lead-gen page → Meta Lead. A single form with standard email + phone mapping fires Meta Leadserver-side. This is the highest-volume use case and recovers the conversions Meta's client-side pixel was losing.
  • Multi-page webinar funnel → GA4 generate_lead + Google Ads conversion. Same webhook, two destinations, separate event cards each with the page's page_uuid baked into the trigger.
  • A/B test routing → split variants to different reporting events. Use the Conditions section to filter on variant so variant A and variant B fire distinct conversion events for clean comparison reporting.

FAQs

Why is the Build plan required?
Unbounce gates both custom scripts and webhooks to Buildand above. Custom scripts are how the FunnelTrack pixel installs; webhooks are how form submissions get sent to FunnelTrack. Neither works on Starter or Launch. There's no workaround on FunnelTrack's side — upgrading with Unbounce is the only path.
Do I need to add the webhook to every page?
Yes — Unbounce webhook config is per-page. Same FunnelTrack URL, just pasted into each page's Webhooks tab. If you have a form on 10 landing pages, that's 10 webhook entries.
Why does FT recommend not editing the Unbounce Page Data fields?
FunnelTrack's webhook handler reads email, ip_address, page_uuid, variant, and the rest by their exact default names. Renaming them in the Unbounce webhook mapping breaks auto-detection and forces you to manually re-map everything inside FunnelTrack.
My form has a contact_email field — will FT pick it up?
Yes. FunnelTrack's auto-detection has a value-pattern fallback that catches email-shaped and phone-shaped values regardless of the field ID. Manual mapping via the User Datasection on the event is still the cleanest path if you want to be explicit, but you won't lose matches just because the field is named oddly.
How do I tell two forms apart?
By default, page_uuid— Unbounce's per-page identifier. For human readability or cross-page form identity (e.g. the same lead form embedded on five pages), add a custom form_id hidden field per Step 5 and filter or route on it instead.

Ready to set it up?

Jump straight into your FunnelTrack workspace and start wiring up your first Unbounce page.

Configure your Unbounce integration →

Need a hand?

If anything in this guide didn't match what you're seeing in Unbounce or FunnelTrack, open a support ticket in your dashboard and we'll get you sorted.