We use cookies to make your experience better. To comply with the new e-Privacy directive, we need to ask for your consent to set the cookies. Learn more by reading our Privacy Policy.
Meta Pixel and Conversions API for Magento 1 OpenMage
Adds Meta Pixel (Facebook Pixel) and Meta Conversions API (Facebook Conversions API / Facebook Server-Side API) with standard events and Dynamic Ads code on appropriate pages. Supports Advanced Matching (if the customer is logged in) and has the ability to add custom parameters. Easy to install and use.
Magento 1 Current Extension Version: 5.1.7
Compatibility
Open Source (CE): 1.5, 1.6, 1.6.1, 1.6.2.0, 1.7, 1.8, 1.8.1, 1.9, 1.9.1, 1.9.2, 1.9.3, 1.9.4
Commerce using on-prem (EE): 1.10, 1.11, 1.11.1, 1.12, 1.13, 1.13.1, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.9.0.0, 1.9.1.0, 1.9.2.0
OpenMage LTS: 19, 20
For the Magento 2 compatible extension go to Meta Pixel and Conversions API for Magento Adobe Commerce.
All the latest requirements are already implemented.
Since version 4.4.0 you can send both the Meta Pixel (Facebook Pixel) event and Meta Conversions API (Facebook Conversions API) event simultaneously.
The new Meta (Facebook) requirement! Deprecated support for versions of TLS older than 1.2! Please see FAQ!
Add Meta Pixel (Facebook Pixel) and Meta Conversions API (Facebook Conversions API / Facebook Server-Side API) With Dynamic Ads code To Magento With Just A Few Clicks!
Compatible with Magento v1 - Open Source (CE), Commerce on-prem (EE), and OpenMage LTS!
(For Magento v2 Adobe Commerce - Open Source (CE), Commerce on-prem (EE), and Commerce on Cloud (ECE) compatible version go to Meta Pixel and Conversions API for Magento Adobe Commerce)
Works great with Catalog Product Feed!
The Meta Pixel (Facebook Pixel) is a piece of JavaScript code for your website that enables you to measure, optimize and build audiences for your ad campaigns. Using the Meta Pixel (Facebook Pixel), you can leverage the actions people take on your website across devices to inform more effective Facebook advertising campaigns.
The Meta Conversions API (Facebook Conversions API / Facebook Server-Side API) (for web) allows advertisers to send web events from their servers directly to Meta (Facebook). Server-side events are linked to a pixel and are processed like browser pixel events. This means that server-side events are used in measurement, reporting, and optimization in the same way as browser pixel events.
Apptrian Meta Pixel (Facebook Pixel) and Conversions API extension for Magento adds Meta Pixel (Facebook Pixel) with Dynamic Ads code on CMS pages (including the home page), category pages, product pages, catalog search pages, catalog advanced search pages, customer registration page, checkout page (default Magento one but also any other without any coding, only by typing page handle (full action name) into our extension config.), and checkout success page. The extension supports Advanced Matching (if the customer is logged in) and has the ability to add custom parameters.
Optionally Meta Pixel (Facebook Pixel) block can be added to any other Magento page or any other extension page (blogs, form pages, etc.) via our extension config by typing page handle (full action name). The Meta Pixel (Facebook Pixel) allows you to place a single pixel on your entire website to report conversions, build audiences and get rich insights into how people use your website.
Conversion measurement lets you track actions people take after viewing your Facebook Ads across multiple devices, including mobile phones, tablets, and desktop computers. By creating a Meta Pixel (Facebook Pixel) and adding it to the pages of your website where conversions happen, like the checkout page, you will see who converts as a result of your Facebook Ads. The pixel will continue to monitor the actions people take after clicking on your ad. You can see which device they saw the ad on and which device they ultimately converted on.
Account & Pricing
To use this extension, a free Meta Business Suite (Facebook Business Suite) account is required.
NOTE: Meta (Facebook) advertising service is not free; additional charges apply to users running Meta (Facebook) Ad Campaigns.
Features
Meta Pixel (Facebook Pixel)
- An easy way to enable or disable Meta Pixel (Facebook Pixel).
- Optimized loading of the base code.
- Advanced Matching (if the customer is logged in).
- Works out of the box just type your Meta Pixel ID (Facebook Pixel ID) (or comma-separated IDs for multipixel setups) in our extension config.
- Option to type page handles (full action names) where you want Meta Pixel (Facebook Pixel). Using this option Meta Pixel (Facebook Pixel) can be added to any other Magento page or any other extension page (blogs, form pages, etc.).
- Option to enable or disable the Meta Pixel (Facebook Pixel) base code.
- Option to enable or disable the Meta Pixel (Facebook Pixel) noscript tag.
- Individual options to enable or disable AddToCart, AddToWishlist, CompleteRegistration, InitiateCheckout, PageView, Purchase, Search, and ViewContent events.
- Option to fire PageView event with other events: CompleteRegistration, InitiateCheckout, Purchase, Search, and ViewContent.
- Option to move parameters outside contents.
- Options to detect selected SKUs for all product types including bundle, configurable, and grouped products. WARNING! *
* WARNING! Meta Pixel (Facebook Pixel) (browser-side) detection of selected SKUs feature is heavily dependent on the theme you are using and its customization. It is impossible to predict all possible themes and customizations. Because of this detection will not work on every theme. This is why extension default configuration comes with this feature turned off. You can turn it on and try it out. If it is working for you leave it on otherwise, turn it off. If you are a developer you will be pleased to know that everything is conveniently located in code.phtml file. To make it work, in some cases only the adjustment of a few JavaScript selectors is needed in others complete rewrite of the detection code is needed. Because of this, we do not give any warranty for the detection feature, nor it is covered by our support service.
Unlike Meta Pixel (Facebook Pixel) browser-side detection, the Facebook Server-Side detection is not dependent on the theme you are using and its customization. Therefore if you want to use detection, we recommend you server-side detection and events.
Meta Conversions API (Facebook Conversions API / Facebook Server-Side API)
- An easy way to enable or disable Meta Conversions API (Facebook Conversions API / Facebook Server-Side API).
- Advanced Matching (if the customer is logged in).
- Option to type your Meta Access Token (Facebook Access Token) in our extension config.
- Option to type your Meta API Version (Facebook API Version) in our extension config.
- Option to type your Test Event Code in our extension config.
- Option to log server-side fired events in the Magento log file.
- Individual options to enable or disable AddToCart, AddToWishlist, CompleteRegistration, InitiateCheckout, PageView, Purchase, Search, and ViewContent events. * Notice
- Option to fire PageView event with other events: CompleteRegistration, InitiateCheckout, Purchase, Search, and ViewContent.
- Option to move parameters outside contents.
- Options to detect selected SKUs for all product types including bundle, configurable, and grouped products.
* Notice Since version 4.4.0 you can send both the Meta Pixel (Facebook Pixel) event and Meta Conversions API (Facebook Conversions API) event simultaneously. The server-side events are not visible in the Meta Pixel Helper (Facebook Pixel Helper) extension for Chrome. You can see server-side events in your Meta Business Suite (Facebook Business Suite).
Category (Category Page)
- Option to type page handles (full action names) where you want category-related code.
- Option to type the event name you want to use for category tracking.
- Options to add custom parameters to your category-related event with parameters to attributes mapping. Example: google_product_category=google_product_category|name=name. The format is simple param1=attribute1|param2=attribute2 Meta Pixel (Facebook Pixel) custom parameter and Magento category attribute are connected by = sign and pairs are separated by | sign.
Product (Product Page - AddToCart, AddToWishlist, ViewContent Events)
- Option to type page handles (full action names) where you want product-related code.
- Option to select SKU you want to use for bundle products. Options: Product SKU as (id), Children SKUs as (id)s, Children SKUs as (id)s and Product SKU as (item_group_id)
- Option for content_type to use product_group instead of product for bundle products.
- Option to select SKU you want to use for configurable products. Options: Product SKU as (id), Child SKU as (id), Child SKU as (id) and Product SKU as (item_group_id)
- Option for content_type to use product_group instead of product for configurable products.
- Option to select SKU you want to use for downloadable products. Options: Product SKU as (id), Product SKU as (id) and Parent SKU as (item_group_id)
- Option to select SKU you want to use for grouped products. Options: Product SKU as (id), Children SKUs as (id)s, Children SKUs as (id)s and Product SKU as (item_group_id)
- Option for content_type to use product_group instead of product for grouped products.
- Option to select SKU you want to use for simple products. Options: Product SKU as (id), Product SKU as (id) and Parent SKU as (item_group_id)
- Option to select SKU you want to use for virtual products. Options: Product SKU as (id), Product SKU as (id) and Parent SKU as (item_group_id)
- Option to use content_ids instead of contents for the ViewContent event.
- Option to type the Magento product attribute code you want to use for the global content_name parameter.
- Option to type the Magento product attribute code you want to use for the global content_category parameter.
- Options to add custom parameters to your product-related events with parameters to attributes mapping. Example: google_product_category=google_product_category|color=color. The format is simple param1=attribute1|param2=attribute2 Meta Pixel (Facebook Pixel) custom parameter and Magento product attribute are connected by = sign and pairs are separated by | sign.
Quote (Checkout Page - InitiateCheckout Event)
- Option to type page handles (full action names) where you want quote-related code.
- Option to select SKU you want to use for bundle products. Options: Product SKU as (id), Children SKUs as (id)s, Children SKUs as (id)s and Product SKU as (item_group_id)
- Option to select SKU you want to use for configurable products. Options: Product SKU as (id), Child SKU as (id), Child SKU as (id) and Product SKU as (item_group_id)
- Option to select SKU you want to use for downloadable products. Options: Product SKU as (id), Product SKU as (id) and Parent SKU as (item_group_id)
- Option to select SKU you want to use for grouped products. Options: Children SKUs as (id)s, Children SKUs as (id)s and Product SKU as (item_group_id)
- Option to select SKU you want to use for simple products. Options: Product SKU as (id), Product SKU as (id) and Parent SKU as (item_group_id)
- Option to select SKU you want to use for virtual products. Options: Product SKU as (id), Product SKU as (id) and Parent SKU as (item_group_id)
- Option to type parameter name if you want to use Magento quote ID.
- Options to add custom parameters to your quote-related event with parameters to attributes mapping. Example: google_product_category=google_product_category|color=color. The format is simple param1=attribute1|param2=attribute2 Meta Pixel (Facebook Pixel) custom parameter and Magento product attribute are connected by = sign and pairs are separated by | sign.
Order (Checkout Success Page - Purchase Event)
- Option to type page handles (full action names) where you want order-related code.
- Option to select SKU you want to use for bundle products. Options: Product SKU as (id), Children SKUs as (id)s, Children SKUs as (id)s and Product SKU as (item_group_id)
- Option to select SKU you want to use for configurable products. Options: Product SKU as (id), Child SKU as (id), Child SKU as (id) and Product SKU as (item_group_id)
- Option to select SKU you want to use for downloadable products. Options: Product SKU as (id), Product SKU as (id) and Parent SKU as (item_group_id)
- Option to select SKU you want to use for grouped products. Options: Children SKUs as (id)s, Children SKUs as (id)s and Product SKU as (item_group_id)
- Option to select SKU you want to use for simple products. Options: Product SKU as (id), Product SKU as (id) and Parent SKU as (item_group_id)
- Option to select SKU you want to use for virtual products. Options: Product SKU as (id), Product SKU as (id) and Parent SKU as (item_group_id)
- Option to type parameter name if you want to use Magento order ID.
- Option to type parameter name if you want to use Magento order increment ID.
- Option to type parameter name if you want to use Magento quote ID.
- Options to add custom parameters to your order-related event with parameters to attributes mapping. Example: google_product_category=google_product_category|color=color. The format is simple param1=attribute1|param2=attribute2 Meta Pixel (Facebook Pixel) custom parameter and Magento product attribute are connected by = sign and pairs are separated by | sign.
Search (Search Result Page - Search Event)
- Option to type page handles (full action names) where you want search-related code.
- Option to type the event name you want to use for search tracking.
- Option to type the parameter name you want to use for search tracking.
- Option to type request parameters you want to include for search tracking.
Data Processing Options
- An easy way to enable or disable Data Processing Options.
- Option to type Data Processing Options as a comma-separated list.
- Option to type Data Processing Options Country
- Option to type Data Processing Options State
Miscellaneous
- Option to select Meta (Facebook) product identifier. Magento product SKU (Recommended) or Magento product ID.
- Option for Advanced Matching data mapping. Example: external_id=external_id|em=em|ph=ph. The format is simple param1=key1|param2=key2 Meta (Facebook) parameter and data key are connected by = sign and pairs are separated by | sign. Available customer data keys are: em, ph, fn, ln, ge, db, ct, st, zp, country, external_id.
- Options to connect default Magento "Cookie Restriction Mode" cookie or any third-party cookie consent extension or theme customization via following options: Enable Cookie Consent, Consent Cookie Name, Consent Cookie Key, Consent Cookie Value, and Consent Button.
Installation Instructions
- Log in to Magento Admin
- (Optional) Disable Magento Compiler if you are using it (System > Tools > Compilation)
- Go to System > Magento Connect > Magento Connect Manager
- If you purchased the extension on our site use the "Direct package file upload" section and "Upload package file". Browse to the .tgz file. Click the "Upload" button.
- If you purchased the extension on Magento Marketplace use the "Paste extension key to install" and paste Access Key you get from Magento Marketplace. Click the "Install" button. Click the "Proceed" button.
- Go back to Magento Admin
- Flush Magento Cache (System > Cache Management), then log out from Magento Admin and log back in
- (Optional) Enable Magento Compiler by clicking the "Run Compilation Process" button (System > Tools > Compilation)
If you do not know how to install an extension or you wish a professional to do it for you, we offer additional installation service for a small fee.
Configuration
Our extension works out of the box. The only thing you need to do is type your Pixel ID and Access Token in our extension configuration. To do this, log in to your Magento Admin and go to:
System > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Meta Pixel (Browser-Side Settings) > Meta Pixel ID
System > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Meta Conversions API (Server-Side Settings) > Meta Access Token
See FAQ on how to get Access Token.
All options are self-explanatory and have comments and tooltips. Make sure you read them.
After changing options, make sure you refresh your Magento cache.
WARNING! You need to remove all other implementations of Meta Pixel (Facebook Pixel) and use only our extension.
- Remove all other extensions that fire Meta Pixel (Facebook Pixel).
- Remove all theme customizations that fire Meta Pixel (Facebook Pixel).
- If you are using GTM (Google Tag Manager), make sure it is not firing Meta Pixel (Facebook Pixel) events.
- If you have set "Event Triggers" in the "Event Setup Tool", you need to remove them all and then disable the "Track Events Automatically Without Code" option.
FAQ
Q: After I replaced the old Facebook Pixel and Conversions API extension with the new Meta Pixel and Conversions API extension, my Meta Events Manager does not show any new events, and it seems the new extension does not work?
A: If you replaced any previous version with version 5.0.0 or newer, please paste your Meta Pixel ID and Meta Access Token into the new extension config.
System > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Meta Pixel (Browser-Side Settings) > Meta Pixel ID
System > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Meta Conversions API (Server-Side Settings) > Meta Access Token
Q: How do I get Meta Access Token (Facebook Access Token)?
A: There are two ways of getting your Access Token:
- Via Events Manager (Recommended)
- Using Your Own App
To get Access Token via Events Manager (Recommended), go to Meta Business Suite (Facebook Business Suite) and Events Manager. Choose the pixel you want to implement. Select the Settings tab. Find the Conversions API section and click on Generate access token link under Set up direct integration, and follow the instructions pop up. Once you have your token (save it to your computer because you will not be able to see it again). Paste your access token into our extension configuration option Stores > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Meta Conversions API (Server-Side Settings) > Meta Access Token.
Q: Meta Conversions API (Facebook Conversions API / Facebook Server-Side API) does not work?
A: Meta (Facebook) deprecated v6.0 of the Server-Side API. Go to our extension config and for the Meta API Version (Facebook API Version) option type v21.0 or newer, then refresh your Magento cache (System > Cache Management) and you are done.
Q: In Meta Event Manager (Facebook Event Manager), there are errors "(X) Event Missing Deduplication Parameter"?
A: This error is caused by using other Meta Pixel (Facebook Pixel) solutions in parallel with ours. You need to remove all other implementations of Meta Pixel (Facebook Pixel) and use only our extension. That means:
- Remove all other extensions that fire Meta Pixel (Facebook Pixel).
- Remove all theme customizations that fire Meta Pixel (Facebook Pixel).
- If you are using GTM (Google Tag Manager), make sure it is not firing Meta Pixel (Facebook Pixel) events.
- If you have set "Event Triggers" in the "Event Setup Tool", you need to remove them all and then disable the "Track Events Automatically Without Code" option.
Q: Why am I getting "Server Sending Invalid Match Key Parameters for X event" in the Meta Business Manager?
A: If you get a "Server Sending Invalid Match Key Parameters" warning in your Business Manager, this is due to the use by some of your customers of a cookie blocker like "AdBlock". Some data (IP, state, country, etc...) are then incorrectly formatted according to Facebook guidelines. These are only warnings and can be ignored.
Q: Is it possible to add the Meta Pixel (Facebook Pixel) to other Magento pages or extension pages?
A: Yes it is. In our extension config just use the option "Add Meta Pixel (Facebook Pixel) To" and type your page handle (full action name). For example, if you want to add Meta Pixel (Facebook Pixel) to a blog page and that blog page handle is "blog_post_view", you would type this into "Add Meta Pixel (Facebook Pixel) To" at the end. Page handle depends on a particular extension this is just an example. Do not forget to Refresh your Magento Cache.
Q: When I check my product pages with the "Meta Pixel Helper (Facebook Pixel Helper)" extension for Chrome the AddToCart and AddToWishlist events have orange triangles with warnings?
A: The "Meta Pixel Helper (Facebook Pixel Helper)" extension for Chrome does not understand JavaScript which is why on page load you have orange triangles for AddToCart and AddToWishlist events. If you read the warnings of the "Meta Pixel Helper (Facebook Pixel Helper)" there is an explanation: "We detected event code but the pixel has not activated for this event, so no information was sent to Meta (Facebook). This could be due to an error in the code, but could also occur if the pixel fires on a dynamic event such as a button click." AddToCart and AddToWishlist are dynamic events triggered by a button click. After you click a button they will become green. This has nothing to do with our extension nor Meta Pixel (Facebook Pixel), it is the behavior of the "Meta Pixel Helper (Facebook Pixel Helper)" extension for Chrome. In short, this is normal.
Q: When I check my pages with the "Meta Pixel Helper (Facebook Pixel Helper)" extension for Chrome there is a "grant" event with an orange triangle and warning?
A: The "grant" event is part of Meta's General Data Protection Regulation where sending events and data is paused until consent is given by the customer/visitor. The "Meta Pixel Helper (Facebook Pixel Helper)" extension for Chrome does not understand JavaScript which is why on page load you have an orange triangle. If you read the warning of the "Meta Pixel Helper (Facebook Pixel Helper)" there is an explanation: "We detected event code but the pixel has not activated for this event, so no information was sent to Meta (Facebook). This could be due to an error in the code, but could also occur if the pixel fires on a dynamic event such as a button click." The "grant" is a dynamic event triggered by Javascript code that checks for customer/visitor consent. This has nothing to do with our extension nor Meta Pixel (Facebook Pixel), it is the behavior of the "Meta Pixel Helper (Facebook Pixel Helper)" extension for Chrome. In short, this is normal.
Q: Why is the Advanced Matching score low?
A: Some events like PageView or ViewContent have a very low score because anyone can access CMS, Category, and Product pages. On the other hand, the Purchase event has a high score because the customer is logged in, or if it is a guest customer, the data is read from the order billing/shipping address. In short, this is normal. 1. If a customer is not logged in or it is a visitor that does not have an account on your site only IP address, browser Info, fbp and/or fbc will be sent for Advanced Matching. 2. If a customer is logged in to your Magento store beside the above-mentioned parameters all other parameters are sent: em, ph, fn, ln, ge, db, ct, st, zp, country, external_id. Of course, all the information is read from the Magento database. If for example, the customer did not provide a phone number, the "ph" will not be sent because it is empty. Another example is if your Magento does not have a gender field enabled in Magento then the customer could not select it and subsequently, our extension cannot send it to Facebook via Advanced Matching. Bottom line is, if information exists in your Magento database it will be sent. 3. The "Purchase" event is different. The customer does not have to be logged in or have an account. The information is read from the order billing/shipping address and everything is sent for Advanced Matching.
Q: Why CompleteRegistration event does not work?
A: If you updated the extension from any previous version to version 4.6.5 or newer in our extension config option "System > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Meta Pixel (Browser-Side Settings) > Add Meta Pixel To" replace page handle "customer_account_create" with "customer_account_index".
Q: What does it mean "The new Meta (Facebook) requirement! Deprecated support for versions of TLS older than 1.2"?
A: This is a new Meta (Facebook) requirement for Conversions API. This is a requirement that your web server (the server that runs your Magento) needs to meet in order for Conversions API to work. You need to contact your server administrator and ask to confirm that you are using at least TLS v1.2, preferably TLS v1.3 or newer. Please understand that this is not something we can code in our extension for you. It is a server requirement by Facebook (Meta) specification. For more information see the official Meta (Facebook) page Deprecated support for versions of TLS older than 1.2!
Q: Is your extension compatible with Cookiebot?
A: Yes, it is compatible with Cookiebot since extension version 5.1.4. To set it up configure our extension like below.
System > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Miscellaneous > Enable Cookie Consent option set to Yes
System > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Miscellaneous > Cookie Name option set to CookieConsent
System > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Miscellaneous > Cookie Key option leave empty
System > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Miscellaneous > Cookie Value option set to marketing:true
System > Configuration > Apptrian Extensions > Meta Pixel and Conversions API > Miscellaneous > Consent Button option set to .CybotCookiebotDialogBodyButton
The above is just an example. The Cookie Name and the Cookie Value depend on how you set up your Cookiebot.