Option A – Sending Hyros Events to your Existing Facebook Pixel

This setup can be completed in 2 steps, with an optional 3rd step should you wish to deduplicate events more accurately.

If you have catalog campaigns and wish to optimize around Hyros events, please also view the drop down labelled “Using Hyros events with Catalog Campaigns” below.

Step 1 – Configure Events to be Sent From Hyros

Please see the video guide:

Important! If you also use lead ads for optimization, please refer to the end of the document.

Step 2 – Check Pixel Settings and Confirm Deduplication

Please note this video refers to server events from Hyros. If you have only just activated this feature, you may need to wait for some more Facebook events to be tracked in Hyros and then sent to Facebook to be able to successfully follow all of the steps.

Hyros sends events hourly so our server events will not be immediately visible.

Please see the Video Guide:

If you notice that deduplication is “not meeting best practices” inside Facebook, then they should be able to provide more information as to the exact issue inside of Facebook.

Also if you have multiple Facebook pixels on your site, this will weaken deduplication.

You can also see the “Facebook Event Troubleshooting” dropdown below this section for more information and other troubleshooting steps.

Step 3 (Optional) – Adding Event ID Deduplication

Please note that by default Hyros will track Facebook’s “FBP” cookie value and send this with events when it is available. This will normally allow Facebook to deduplicate events without any extra edits to code.

However this step should be followed if:

  • You do not want to rely on Facebook’s “FBP” cookie for deduplication alone.
    Although this automatic method should be fairly reliable, because it relies on Facebook’s cookies, deduplication may not always be successful.
    Use the event ID if you would like an extra layer of security to ensure deduplication occurs successfully as much as possible.
  • You are able to manually add the pixel to your site. This setup requires editing the pixel code used by Facebook to track standard events.
    As each business is different, if you are not sure how to find this, we advise using this documentation from Facebook to understand how this code should look: https://www.facebook.com/business/help/402791146561655?id=1205376682832142
    If you have not added the pixel manually yet to your site, you will need to remove the current pixel implementation and use the Facebook documentation above to install the pixel and track your standard events manually.
    For example, the Purchase event code should look like this on your site, which is the part we will need to edit: fbq('track', 'Purchase', {value: 0.00, currency: 'USD'});

To set this up, please follow these 2 steps:

1. Turn on “Enable Event ID Collection”

2. Add the Event ID Code to the Standard Event you want to Deduplicate

We are going to use the standard Facebook “Purchase” event as an example in this case, because this is the most common event that people will use with Hyros, however please ensure this is done with any other standard event you are sending Hyros events to.

First, copy this code, this is what you will need to add to the standard event code in the Facebook pixel:

{eventID: Math.random().toString(36).substr(2, 15)}

Next, find the standard event code you have manually installed on your site, it should look something like this:

fbq('track', 'Purchase', {value: 0.00, currency: 'USD'});

Paste the event ID code directly before the final curly bracket with a comma and space separating it from any previous text, just like this:

fbq('track', 'Purchase', {value: 0.00, currency: 'USD'}, {eventID: Math.random().toString(36).substr(2, 15)});

Please copy this and add the new standard event code back to your site or add the event ID to your current Purchase code in exactly the same way.


As you can see above, the purchase event code has 4 “arguments” or parameters, all separated by a comma. These are broken down below:

  1. ‘track’
  2. ‘purchase’
  3. {value: 0.00, currency: ‘USD’}
  4. {eventID: Math.random().toString(36).substr(2, 15)}

The event ID section MUST always be the 4th argument. When configuring any other event with the event ID, because there is no value or currency for most events, we must add a blank argument in the event code instead to ensure the event ID is always the 4th argument as shown in the example of a lead event code:

fbq('track', 'Lead', {}, {eventID: Math.random().toString(36).substr(2, 15)});

You can see the extra {}, above which needs to be added for other event types. Please note that if this is not done, Facebook will not be able to read the event ID and use this information for deduplication.

That will conclude the setup, please ensure you have done this with all other standard events that you are sending Hyros events to.

Step 4 (Optional) – Send existing leads conversions

With the default configuration for sending data as offline conversions, the existing leads will not be sent back to your ad platform, only new leads will be send back to the pixel.

As an example, if the toggle is turned OFF, it means that the events that will be sent back will only be leads that opted in once. If the same lead opts in again from another source, then it will not be sent back as an offline conversion. At this stage, this lead is considered an existing lead.

If the toggle is ON, using the example above, whenever the same lead interacts with a new source and opts in again, then the event will be sent back to your pixel.


Proceed only if you use Lead ads for the optimisation of your campaigns

If you use Meta Lead generation Ads and you want Hyros to send the events back to your pixel for optimisation please enable the “Send lead ads Conversions” feature from within Integrations-> Meta-> Conversions