How to track and target leads with Facebook retargeting pixel
Facebook Pixel is a powerful analytics tool that allows you to measure the effectiveness of your ads by understanding the actions users do in your Continually conversations and target them later with your ads. This will ensure your ads are targeted to the correct people who are interested in your website.
Continually supports automatic and manual integration with Facebook Pixel, the automatic integration syncs all the events directly to your Facebook Pixel, whereas the manual integration allows you to specify which events you want to track.
This article will cover:
Integrate Continually with Facebook automatically
To sync Continually events directly with Facebook Pixel all you need is your Pixel ID. Go to the Apps page, find the Facebook integration under the Tracking & Analysis tab and click on the Connect button. Then enter your Pixel ID and click Save. That's it! Now Continually will sync all the events to your Google Pixel. Keep reading to learn more about how to create custom audience from leads captured through Continually.
To see all the events that will be synced click on the Event tracking tab
Introduction for manual integration
The concept behind the manual integration is simple, Continually already has different events that we can use with the Continually JS API, all we need to do is fire a custom Facebook event along with the default Continually events.
Perquisites
- Facebook Pixel is already installed on your website.
- Facebook Pixel helper extension is installed on your browser to verify the code is installed correctly.
- Disable any adblockers in your web browser.
These prerequisites are important before you can proceed with this tutorial, if you don't have the Facebook Pixel base code installed on your website please add it first and install the Facebook Pixel Help extension on your browser.
Available Continually events that can be tracked and sent to FB Pixel
Adding the events tracking code manually
The list below contains the necessary code to track each event manually, just copy the code of the events you want to track and wrap between an opening and closing <script>
tag. Here is an example:
<script> EVENT CODE HERE </script>
Insert the code anywhere on your webpage between the opening and closing <body>
tags, preferably at the footer of your website. Check the detailed example after this section.
Name Capture Event
The event fires when a user provides their name.
continually.on('nameCapture', function(event){ fbq('trackCustom', 'Continually-NameCapture', {Name: event.lead.name}); });
Email Capture Event
The event fires when a user provides their email, either for email or for appointment question
continually.on('emailCapture', function(event){ fbq('trackCustom', 'Continually-EmailCapture', {Email: event.lead.email});});
Phone Capture Event
The event fires when a user provides their phone
continually.on('phoneCapture', function(event){ fbq('trackCustom', 'Continually-PhoneCapture', {Phone: event.lead.phone});});
Company Capture Event
The event fires when a user provides their company
continually.on('companyCapture', function(event){ fbq('trackCustom', 'Continually-CompanyCapture', {Company: event.lead.company});});
Sidebar Open Event
Is fired when a lead clicks on continually message/button/their own element with ‘continually’ class - i.e when sidebar is opened
continually.on('sidebarOpen', function(event){ fbq('trackCustom', 'Continually-SidebarOpen', {Company: event.widget});});
Sidebar Close Event
Is fired when a lead clicks on sidebar close button.
continually.on('sidebarClose', function(event){ fbq('trackCustom', 'Continually-SidebarClose', {Company: event.widget});});
Appointment Request Event
The event fires once a lead is provided with Appointment question with a calendar connected
continually.on('scheduling:requestMeeting', function(event){ fbq('trackCustom', 'Continually-AppointmentRequested', {Appointment-Calendar: event.teamMember.name});});
Appointment Booked Event
The event fires if a lead confirms appointment request (by choosing a timeslot, event doesn’t fire if a lead proposes custom time)
continually.on('scheduling:meetingBooked', function(event){ fbq('trackCustom', 'Continually-AppointmentBooked', {Appointment: event.appointment});});
Conversation Start Event
The startConversation event fires when the user starts a new chat.
continually.on('startConversation', function(event){ fbq('trackCustom', 'Continually-ConversationStart', {ConversationID: event.conversationId});});
Conversation End Event
The event fires when the user completes conversation.
continually.on('completeConversation', function(event){ fbq('trackCustom', 'Continually-ConversationEnd', {ConversationID: event.conversationId});});
Welcome Message Open Event
Is fired when continually widget appears. The event isn’t fired if conversation format is ‘hidden’
continually.on('welcomeMessage:open', function(event){ fbq('trackCustom', 'Continually-WelcomeMessageOpen', {ConversationID: event.widget});});
Welcome Message Closed Event
Is fired when a lead closes continually message.
continually.on('welcomeMessage:close', function(event){ fbq('trackCustom', 'Continually-WelcomeMessageClosed', {ConversationID: event.widget});});
Livechat Message Event
The message event fires when the user receives a message from an agent.
continually.on('message', function(event){ fbq('trackCustom', 'Continually-MessageSent');});
Livechat Message Sent Event
The message event fires when the user replies to a conversation
continually.on('message:sent', function(event){ fbq('trackCustom', 'Continually-MessageReceived');});
Example code for the manual integration
Let's assume you want to track the Name, Email, Phone, Company and appointment booked events manually. Copy the corresponding code for each event and wrap them between the script tag as mentioned above, the full code will be :
<script> continually.on('nameCapture', function(event){ fbq('trackCustom', 'Continually-NameCapture', {Name: event.lead.name}); }); continually.on('emailCapture', function(event){ fbq('trackCustom', 'Continually-EmailCapture', {Email: event.lead.email});}); continually.on('phoneCapture', function(event){ fbq('trackCustom', 'Continually-PhoneCapture', {Phone: event.lead.phone});}); continually.on('companyCapture', function(event){ fbq('trackCustom', 'Continually-CompanyCapture', {Company: event.lead.company});}); continually.on('scheduling:meetingBooked', function(event){ fbq('trackCustom', 'Continually-AppointmentBooked', {Appointment: event.appointment});}); </script>
Now add this code anywhere on your page between the opening and closing <body> tags.
Checking events are set up correctly
Creating custom audience from the captured Continually events
1. Go to your Facebook Pixel Manager
2. Click on Create -> Create Custom Audience.
3. Select the events you want and the retention period (The number of days you want people to remain in your audience after the event is fired).
4. Name your audience and save it. You can now use this audience in your ads to retarget these leads who engaged with your bots on your website.