Skip to main content

Duplicate or Unexpected Purchase Events in Pixel Plus

If you're seeing more Purchase events on Facebook than actual completed orders in your PrestaShop store, you're likely dealing with duplicate or unexpected events being triggered.

This issue can impact your analytics, result in overreported conversions, and negatively affect Meta Ads optimization. Let's walk through how to detect, isolate, and fix the issue step by step.


πŸ“Š Step 1: Compare Facebook Events with Your PrestaShop Orders​

Start by comparing the number of Purchase events reported in Facebook with the actual order count in your PrestaShop back office.

If Facebook shows more Purchase events, it may mean you're having duplicates. It's time to check and track down the possible source of the additional ones.


πŸ”Ž Step 2: Confirm the Source of Each Event​

The Pixel Plus module automatically includes a unique field in every event it triggers:

"event_trigger": "Pixel Plus"

This applies to both browser events and server-side (CAPI) events.

βœ… If this field is missing, the event was not triggered by the Pixel Plus module.

You can verify this using:

  • Meta Pixel Helper (Chrome extension) + CAPI Logging inside the Pixel Plus module
  • Facebook Events Manager β†’ Test Events Tool

πŸ§ͺ How to Use Pixel Plus CAPI Logging​

Pixel Plus provides a dedicated logging feature to inspect server-side (CAPI) events.

How to enable it:​

  1. Go to PrestaShop Back Office β†’ Modules β†’ Pixel Plus β†’ CAPI section
  2. Scroll down to Logging Options
  3. Enable Event Logging
  4. Enable save payload generation
  5. Click Add My IP to restrict logs to your testing session

What to check:​

  • Go to Advanced Parameters β†’ Logs
  • Locate the Purchase event
  • Ensure the log contains:
    • "event_trigger": "Pixel Plus"
    • "events_received" β€” indicates Facebook received the event
    • "fbtrace_id" β€” Facebook’s internal tracking reference

⚠️ If event_trigger is missing on the payload β†’ the event is not from Pixel Plus
⚠️ If events_received is missing β†’ Facebook didn’t accept/receive the event


πŸ§ͺ Alternative Method: Facebook Test Events Tool​

As an alternative, Facebook's Test Events Tool offers a graphical interface to monitor both browser and server events.

How to use it:​

  1. Open Facebook Events Manager
  2. Select your Pixel and click Test Events
  3. Copy your Test Code (e.g., TEST1234)
  4. In your Pixel Plus CAPI section, paste it into the Test Code field
  5. Enable Enable Test Code Events
  6. Click Add My IP to restrict testing to your IP

⚠️ Important:
Disable this option after testing. Leaving it active (especially without IP restriction) can cause false positives and unwanted warnings in your Pixel diagnostics.


🚨 Step 4: If Events Are Not Coming from Pixel Plus​

If you find any Purchase events that do not include "event_trigger": "Pixel Plus", you’ll need to investigate external sources.

πŸ“Ž Check out our dedicated guide:
πŸ‘‰ How to Detect External Sources Sending Facebook Events


πŸ” Step 5: Identify and Eliminate External Sources​

Other PrestaShop modules may inject Facebook tracking scripts.

  • Disable any other Facebook-related modules
  • Retest to see if the issue disappears

πŸ’‘ If the Facebook Pixel is loaded, any module can potentially trigger events through the JS.


βœ… 2. Review Custom Tracking Code​

Custom JavaScript or template changes might include leftover tracking.

Check your theme files, especially:

  • /themes/your-theme/templates/checkout/order-confirmation.tpl
  • footer.tpl
  • Any custom .js file

Search for and remove or comment out lines like:

fbq('track', 'Purchase');

::: tip You can use the browser's search function to easily find any reference to the fbq object. A search like "fbq('track" should easily find any possible code inside the DOM.​

βœ… 3. Inspect Tag Managers (like GTM)​

If you use Google Tag Manager (GTM):

  • Open GTM and review your Facebook tags
  • Look for any tag that fires a Purchase event
  • Check the details for any tag triggered on the order confirmation page

⚠️ GTM is a frequent cause of duplicate or unexpected purchase events.


βœ… 4. Disable Facebook’s Automatic Event Tracking​

Facebook has a feature that tries to detect and track events automatically, which can lead to unwanted Purchase events. This feature is usually ofered by Facebook after creating the pixel the first time. It's usual for the users to have some events configured for it, and later forgetting to turn it off after switching to an automated system like the Pixel Plus module.

How to disable:​

  1. Go to Facebook Events Manager
  2. Select your Pixel
  3. Open the Settings tab
  4. Scroll down to:
    • Automatic Events
    • Event Setup Tool
  5. Turn off all toggles related to the tracking of the Purchase event, or even completelly disabling all the Automatic Events configured

πŸ”§ This is the most common cause when the user can't find the source of the unexpected or duplicate events.


πŸ” Step 6: Retest After Cleanup​

After reviewing all the possible external sources and deactivating the automatic tracking, it's time to retest by following this steps:

  1. Clear browser cookies and local storage
  2. Place a test order
  3. Verify that only one Purchase event is triggered
  4. Check that the target events now contains:
"event_trigger": "Pixel Plus"

Again, use whatever combination suits you best:

  • Meta Pixel Helper + CAPI Logging in Pixel Plus
  • Facebook Test Events Tool

🧩 Additional Checks​

Pixel Plus includes its own anti-duplicate protection system for the Purchase event. Once the event is triggered, reloading the page should not trigger the Purchase event again.

🧠 Reminder:
If you’re using the Force Basic Mode, make sure to also enable cookie-based deduplication to prevent repeated triggers.


βœ… Summary​

When you're facing duplicate or too many Purchase events:

βœ” Confirm events include "event_trigger": "Pixel Plus"
βœ” Use the Test Events Tool and CAPI Logging
βœ” If external events exist, disable all Pixel Plus events and re-test
βœ” Eliminate sources like:

  • Other Facebook modules
  • GTM or manual tracking
  • Facebook’s automatic tracking

βœ” Re-enable Pixel Plus after confirming only one clean event is triggered per order