Facebook advanced matching is a feature that can help you to match more users and therefore increase your audiences performance from 15-25%.

It can be installed automatically or manually, but you have to be careful in both cases because it does include user private data which so you have to be sure to get user approval for sharing this data with Facebook.

What is Facebook advanced matching?

Let's take next scenario, you have implemented FB tracking pixel (or server side tracking) on your site and you have traffic coming from your FB ads but also from other marketing channels. Facebook tracking will collect your users coming from Facebook and you can use this data to build custom audiences which you can use for re-marketing campaigns or you can use this data to create similar audiences by selecting high converting users. This will give strong input to Facebook what kind of similar users you want to target and usually this should increase conversion rate.

That's sound fair enough, and it is common practice. But how advanced matching can help?

Above described scenario will only work in case if user is still logged in his FB account, and in case for users coming from other marketing channels will be even more difficult for Facebook to match. Which means they will most likely will not be included in those audiences , but you could re-target these users on FB or create similar audience based on them even if they are not coming from facebook. In this case you can use Facebook advanced matching and help facebook to match these users.

How Facebook advanced matching works?

Facebook advanced matching will use additional data sent by the pixel (or server side tracking - CAPI)  to try to match the users on their side. This data usually should be hashed (for data protection reasons) and it will contain user personal info, such as:

  • email
  • date of birth
  • phone number
  • first name
  • last name
  • gender
  • city
  • state
  • Zip code
  • country
  • ip address
  • ...

So, you got the point... if we send these data back to Facebook, they will be able to match the user even if he is not currently logged in to facebook or he is even not coming from Facebook campaign. If the user can be matched on FB side, it will be possible to create audiences and similar audiences including these users as well!

Side note: based on a Facebook info, they can match more than 65% of all users on the internet.

How to setup Facebook advanced matching?

It can be set up on two ways, manual and automatic way. By using automatic setup, Facebook pixel will try to collect these personal data by itself and automatically send them back to Facebook. Facebook pixel will read input forms on your page and try to recognize where needed data is used. 

To setup automatic advanced matching make these steps:

  • go to your events manager and select your pixel
  • Click on Settings
  • Scroll down and Turn on Automatic advanced matching
  • Enable switch for each type of data you want to send

However, in order this to work, please be sure that these requirements are fullfilled:

  • Your site has form fields for each of selected data types: email address, phone number, first name, last name....
  • Pixel is placed on all of your pages
  • Pixel is not in the iframe
  • Your business isn’t in a regulated vertical
  • you are not using image pixel
  • You have permission from the user to send his data to Facebook

Once setup is completed it can take up to 48 hours before you see the results in Events Manager.

How to setup manual advanced matching?

This set up can be done for FB pixel or for CAPI (Conversion API) which is used for Facebook server side tracking.

To set it up on FB pixel, you have to add advanced matching parameters in the Pixel code in order to send it correctly to Facebook:

                    fbq('init', '283859598862258', {
  em: '[email protected]',         //Values will be hashed automatically by the pixel using SHA-256
  fn: 'first_name',    
  ln: 'last_name'      
  ...
});
                  

Facebook pixel will automatically hash those values.

For setting up Facebook CAPI you have to be sure that user data parameter contains one of these params. Usually you would need help from your developer to implement it.

Here is the list of all parameters:

User Data
Parameter
Format
Example
SHA-256 Hashing required?
Email
em
Unhashed lowercase or hashed SHA-256
[email protected] or 6e3913852f512d76acff15d1e402c7502a5bbe6101745a7120a2a4833ebd235
Yes
First Name
fn
Lowercase letters
john
Yes
Last Name
ln
Lowercase letters
smith
Yes
Phone number
ph
(650)555-1212
16505551212
Yes
Date of Birth
db
YYYYMMDD format accepted, Input example: 2/16/1997
normalized:19970216
Yes
Gender
ge
male or female
f - for femalem - for male
Yes
City
ct
Using Roman alphabet a-z characters is recommended. Lowercase only with no punctuation, no special characters, and no spaces. If using special characters, the text must be encoded in UTF-8 format.
paris
Yes
State
st
Use the <a href="https://en.wikipedia.org/wiki/Federal_Information_Processing_Standard_state_code?fbclid=IwAR0l2c397VkFjU5ODfNMJAnY0jnbHUfzOYTUaR8LjIp6Misu6u-9tuN0p4g">2-character ANSI abbreviation</a> code in lowercase
azca....
Yes
Zip code
zp
Use lowercase with no spaces and no dash. Use only the first 5 digits for U.S. zip codes. Use the area, district, and sector format for the UK.
U.S zip code: 94035 Australia zip code: 1987 France zip code: 75018 UK zip code: m11ae
Yes
Country
country
Use the lowercase, 2-letter country codes in <a href="https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2">ISO 3166-1 alpha-2.</a>
Input: United States Normalized format: us
Yes
Client IP Address
client_ip_address
The IP address of the browser corresponding to the event must be a valid IPV4 or IPV6 address
Example:IPV4: 168.212.226.204 IPV6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
No

More info about server side parameters for Facebook CAPI you can find here;

https://developers.facebook.com/docs/marketing-api/conversions-api/parameters

Risks of using Facebook Advanced matching

Since we are sending user personal data,  before you using this feature, please consult with your data protection officer or with your legal team. All tough Facebook is claiming that this is inline with current GDPR regulations, in some cases courts can decide differently.

Here is one example, where court in Germany decided that hashing with SHA-256 is not secure enough:

So, wild guess would be that this could be easily applied for Facebook advanced matching, but i am no expert in legal and can not give you advice in this topic.

All in all, when used correctly, this is very powerful feature that can definitely help you to match more users on Facebook platform and raise your conversion rate.