The Steak… how to send Unbounce form fills to Segment with Zapier

The Sizzle… how to make the complete customer journey available to every system in a marketing stack

While using Segment.com to integrate multiple marketing systems, I noticed there was no pre-built way to bring in lead data from popular 3rd party landing page forms, such as Unbounce or GoToWebinar.

Online forum posts from late 2014 asked how to send Unbounce form fills to Segment, and how to make that user data available to Mixpanel. By January 2017, over 2 years later, those posts remained unresolved.

Why so hard? Rob Sobers outlines the challenges. It seems rooted in trying to send user data directly from a web form to Segment using client-side api calls – this gets messy when combined with interactive form validation.

After some exploration and tips from the Segment team, I figured out a relatively easy solution. Zapier webhooks can automatically send the same form fill data to Segment’s HTTP Tracking API without  coding.

Here’s how:

(1) For each Unbounce form submit, I create or update a lead record in my marketing stack by making Segment Identify and Track api calls, as illustrated by the following cURL’s:

curl https://api.segment.io/v1/identify -d '{"userId": "lywo4@mailinator.com", "traits": {"email": "lywo4@mailinator.com", "firstName": "ly4t2", "lastName": "wo4t2"}}' -H "Content-Type: application/json" -H "Authorization: Basic [SEGMENT_API_WRITE_KEY]"

curl https://api.segment.io/v1/track -d '{"userId": "lywo4@mailinator.com", "event": "Requested-test-offer-1"}' -H "Content-Type: application/json" -H "Authorization: Basic [SEGMENT_API_WRITE_KEY]"

(2) To make the above Identify and Track api calls with Zapier, I setup the following multi-step Zap:

Zapier Zap to Segment API
Zapier Zap with Unbounce trigger followed by several actions.
Zapier webhook to Segment Identify api
Zapier action calls Segment Identify api with userId and several traits. Note how Zapier sends the traits as nested json elements using a double-underscore syntax.
Filter to confirm prior step finished
Zapier filter waits for previous action to finish.
Webhook to Segment Track api
Zapier action calls Segment Track api with the above userId and an event name.

The above approach works equally well for any 3rd party web form that can trigger a Zapier Zap. In this way, I also send GoToWebinar registrations to Segment. All downstream Segment integrations get the same lead traits and events, including Mixpanel and Intercom, and I avoid creating data silos. It’s not quite “point and click”, but it is accessible to any marketer with a basic grasp of web programming concepts.

So there. Steak and sizzle.

2 Replies to “The Steak… how to send Unbounce form fills to Segment with Zapier”

Leave a Reply