Facebook Pixel Integration and Usage

If you are using the Facebook Pixel on your website, Fundraise Up provides valuable data to help you with your marketing efforts and audience targeting.

Fundraise Up automatically sends the following data to Facebook Pixel via our native integration. By request only, Enterprise Accounts can disable our automatic Facebook Pixel integration and developer their own solutions using the custom implementation.

Native Integration


Fundraise Up will fire off events to the Facebook Pixel for the following - including the syntax.

  1. Donations. Donate — This event will push all users that have completed any type of donation transaction.
  2. One-Time Donations. Purchase — This event fires for all ONE-TIME donations only. It will include details on value of the donation and the currency donated in.
  3. Recurring Donations. Subscribe — This event fires for all RECURRING donations. In addition to the value of the monthly gift and the currency, we will also provide the Lifetime Value (predicted_ltv) for that user, which is simply the donation FREQUENCY * 12.
  4. Checkout View. InitiateCheckout — The event will fire for every visitor that views a donation checkout. Any visitors appearing in any of the other events will also appear here.

Addition information sent to Facebook Pixel:

  • content_ids, content_name, currency, value and predicted_ltv fields for Donate events
  • content_type for Purchase, Donate and Subscribe


Using the Facebook Pixel with Fundraise Up is an extremely power tool for marketing and advertising your nonprofit campaigns.

Use Case 1 - Target those that started a donation, but didn't finish.

To do this, you would simply include the Checkout View events in your targeting, but exclude all of the other events.

Use Case 2 - Target one-time donors to become recurring donors

For this you would simply target the One-Time Donations event. You may want to exclude Recurring Donations event visitors for additional efficiency.

Use Case 3 - Announce a campaign or news to all donors of any kind.

Targeting the Donations event would achieve this.

Custom Facebook Pixel Integration

If you'd like to modify our native Facebook implementation (as described above), please request that we disable it for your account. You can then use the code below as a template or starting point. 

You must request that we manually disable native integrations for your account if you wish to customize the Facebook Pixel integration. This will also disable native Google Analytics integration and you would be required to integrate this manually following our guide here.

Getting Started

The Facebook pixel is a snippet of JavaScript code that allows you to track visitor activity on your website. It works by loading a small library of functions which you can use whenever a site visitor takes an action (called an event) that you want to track (called a conversion)

Please see more at https://developers.facebook.com/docs/facebook-pixel/implementation

Checkout Open

Fundraise Up "checkoutOpen" events maps nicely with Facebook's "InitiateCheckout" event.

FundraiseUp.on('checkoutOpen', function(details) {

fbq('track', 'InitiateCheckout', {
content_name: details.campaign.name,
content_category: 'Fundraise Up',
content_type: 'product'


Donation Completed

The Fundraise Up "donationComplete" event can be mapped to  Facebook's "Purchase"  event for one-time donations and  "Subscribe" for recurring donations.  Additionally, we recommend firing "Donate" event.  Note that you may pass  additional  custom variables to Facebook including donor's personal information, designation, etc.

FundraiseUp.on('donationComplete', function(details) {

var data = {
content_category: 'Fundraise Up',
content_name: details.campaign.name,
content_ids: [details.donation.recurring ? 'Monthly Donation' : 'One-time Donation'],
content_type: 'product',
contents: [{'id': details.donation.id, 'quantity': 1 }],
value: details.donation.amount,
currency: details.donation.currency,
predicted_ltv: details.donation.recurring ? details.donation.amount * 12 : details.donation.amount

/*Adjust it if you prefer only Purchase events */
if ( details.donation.recurring ) {
fbq('track', 'Purchase', data);
} else {
fbq('track', 'Subscribe', data);

fbq('track', 'Donate', data );