How to Filter Out “Hacked” Purchase Events in Facebook
Sometimes you may see Purchase events in Facebook Ads Manager that don’t match real orders in your Shopify store. These are commonly referred to as “hacked” or fake Purchase events.
What Are “Hacked” Purchase Events?
“Hacked” Purchase events are manually triggered Facebook Pixel events that are not tied to a real checkout.
These events can be fired by:
Competitors
Bad actors
People attempting to get onto your retargeting audiences
Anyone intentionally trying to disrupt your reporting
This can happen on any website with a Facebook Pixel, regardless of whether you use Trackify or Shopify’s native integration.
Common Signs of Fake Purchase Events
1. Random or Invalid Purchase Values
Purchase amounts that don’t exist in your store
Common fake values such as $99, $100, or other round numbers
2. Purchase Events on Incorrect Pages
Purchase events firing on:
Product pages
Collection pages
Homepage
A real Purchase event should only fire after checkout completion.
3. Facebook Conversions Without Shopify Orders
Facebook shows purchases
Shopify shows no matching orders
This mismatch is a strong indicator of fake events.
Why This Happens
When someone:
Clicks on one of your Facebook ads
Lands on your website
Manually fires a Purchase event using browser tools
Facebook treats the event as legitimate and attributes it to the ad click.
This can:
Inflate conversion numbers
Skew ROAS
Confuse Facebook’s optimization algorithm
Important Note
This is not caused by Trackify.
How to Filter Out Fake Purchase Events
Method 1: Create a Custom Conversion Using the Thank-You Page
This is the most reliable solution for standard Shopify checkouts.
Steps:
Open Meta Events Manager
Create a Custom Conversion
Select Purchase as the event
Add a rule:
URL contains
thank_you
Save the Custom Conversion
✅ Result:
Only Purchase events fired on real Shopify thank-you pages are counted.
Fake Purchase events fired elsewhere are excluded.
Method 2: Filter by Trackify Parameters (Recommended for Funnels)
If you use:
Upsell apps (OCU, Carthook, Zipify, etc.)
Checkout flows where
thank_youis not always in the URL
You can filter Purchase events using Trackify-specific parameters.
This ensures:
Only Trackify-generated Purchase events are counted
Manually fired events are ignored
How to Use the Filtered Conversion
Once the Custom Conversion is created:
1. Use It in Ads Reporting
Add the Custom Conversion to your Ads Manager columns
Use it instead of the default Purchase metric
2. Optimize Campaigns With It
In your ad sets, optimize for the Custom Conversion
Not the raw Purchase event
This prevents Facebook from learning from fake data.
Should You Worry?
No.
Fake events are usually few compared to real purchases
Real data usually outweighs fake noise
Filtering is mainly about clean optimization and reporting
Summary
Fake Purchase events do exist
They show random values and wrong URLs
They are not caused by Trackify
Custom Conversions are the solution
Always optimize using filtered conversions
Keeping your Purchase data clean ensures better optimization, clearer reporting, and more reliable scaling decisions.
