How To Create and Use Custom Facebook Conversion Events using trackCustom

Blake Epstein

The Facebook Pixel is the main tool you can use to track events on a website. You can then use data from the pixel with the Marketing API to  build custom audiences based on activity on your website, measure conversion activity and determine which ads lead to results such as purchases.

Current List of Facebook Standard Events

There are currently 18 standard events that Facebook can track.

Event Name Event Description Object Properties


When payment information is added in the checkout flow.

A person clicks on a save billing information button.

content_category, content_ids, contents, currency, value

None required.


When a product is added to the shopping cart.

A person clicks on an add to cart button.

content_ids, content_name, content_type, contents, currency, value

None required.

Required for Dynamic Ads: content_ids, content_type, and contents


When a product is added to a wishlist.

A person clicks on an add to wishlist button.

content_name, content_category, content_ids, contents, currency, value

None required.


When a registration form is completed.

A person submits a completed subscription or signup form.

content_name, currency, status, value

None required.


When a person initiates contact with your business via telephone, SMS, email, chat, etc.

A person submits a question about a product.
None required.


When a person customizes a product.

A person selects the color of a t-shirt.
None required.


When a person donates funds to your organization or cause.

A person adds a donation to the Humane Society to their cart.
None required.


When a person searches for a location of your store via a website or app, with an intention to visit the physical location.

A person wants to find a specific product in a local store.
None required.


When a person enters the checkout flow prior to completing the checkout flow.

A person clicks on a checkout button.

content_category, content_ids, contents, currency, num_items, value

None required.


When a sign up is completed.

A person clicks on pricing.

content_category, content_name, currency, value

None required.


This is the default pixel tracking page visits.

A person lands on your website pages.
None required.


When a purchase is made or checkout flow is completed.

A person has finished the purchase or checkout flow and lands on thank you or confirmation page.

content_ids, content_name, content_type, contents, currency, num_items, value

Required: currency and value

Required for Dynamic Ads: content_ids, content_type, and contents


When a person books an appointment to visit one of your locations.

A person selects a date and time for a dentist appointment.
None required.


When a search is made.

A person searches for a product on your website.

content_category, content_ids, contents, currency, search_string, value

None required.


When a person starts a free trial of a product or service you offer.

A person selects a free week of your game.

currency, predicted_ltv, value

None required.


When a person applies for a product, service, or program you offer.

A person applies for a credit card, educational program, or job.
None required.


When a person applies to a start a paid subscription for a product or service you offer.

A person subscribes to your streaming service.

currency, predicted_ltv, value

None required.


When a key page is viewed such as a product page.

A person lands on a product details page.

content_ids, content_name, content_type, contents, currency, value

None required.

Required for Dynamic Ads: content_ids, content_type, and contents

Current List of Facebook Pixel Object Properties

Additionally, each standard events has object properties. You can include the following predefined object properties with any custom events, and any standard events that support them. Format your parameter object data using JSON.

Property Key Value Type Parameter Description



Category of the page/product.


Array of integers or strings

Product IDs associated with the event, such as SKUs (e.g. ['ABC123', 'XYZ789']).



Name of the page/product.



Either product or product_group based on the content_ids or contents being passed. If the IDs being passed in content_ids or contents parameter are IDs of products then the value should be product. If product group IDs are being passed, then the value should be product_group.


Array of objects

An array of JSON objects that contains the International Article Number (EAN) when applicable, or other product or content identifier(s) associated with the event as well as quantities and prices of the products. idquantity, and item_price are the required fields. e.g. [{'id': 'ABC123', 'quantity': 2, 'item_price': 5.99}, {'id': 'XYZ789', 'quantity': 2, 'item_price': 9.99}]. Note that item_price is the price of a single item, not cumulative price.



The currency for the value specified.



Used with InitiateCheckout event. The number of items when checkout was initiated.


Integer, float

Predicted lifetime value of a subscriber as defined by the advertiser and expressed as an exact value.



Used with the Search event. The string entered by the user for the search.



Used with the CompleteRegistration event, to show the status of the registration.


Integer or float

The value of a user performing this event to the business.

Using Facebook trackCustom

The standards events cover most needs, but what if you need to track something outside of the standard events? You would use:

fbq('trackCustom', '<CustomEventName>');

You can even attach object properties to these custom events:

fbq('trackCustom', 'my_custom_event', {
custom_param1: 'ABC',
custom_param2: 123,
value: 10.00,
currency: 'USD'

Using the Facebook Pixel Helper tool we can see how the event populates.


How To Use Custom Facebook Events

Just like the standard events, you can use any custom event to:

  1.  Create New Audiences and Lookalikes
  2.  Optimize Campaigns
  3.  Measure Performance

Creating New Audiences from Custom Events

To create a new audience from a custom event navigate to audiences and select "Create Audience"


Then select "Website Traffic"


From there, in the drop down, find your custom event


Once that is selected you can move on to selecting the time frame or narrowing it further with your custom object property



Other Posts