I have the Facebook pixel code correctly installed on my website.
I have it in the <Head> of the outer layout.

I also put the pixel code in the <HEAD> of my receipt page, and add the 'purchase event code' just after the <HEAD>.

I installed the Facebook pixel helper on Chrome and went though a purchase. The pixel helper showed the Pageview pixel triggering correctly, and also when I reached the receipt page, the purchase event triggered correctly as well. All good.

Until I checked one of my Facebook campaigns today and it showed 5 conversion on one campaign, but I had only had 1 actual sale ?!? Speaking with Facebook ads support was no help.

I went to look at the Pixel activity on the "Last 100 raw pixel fires in the last 24 hours – Purchase" and saw something odd.

The events arrowed in red (see attached gif) are all the same purchase. But it looks like it has been triggered at least 4 times? I would expect the purchase event trigger to be on the simple URL http://www.arka-shop.co.uk/cgi-bin/os000001.pl
But the repeat triggers are on extended URLs with product refs and order numbers?
Anyone know what is going on?

Is the guy viewing his receipt again and again, or pressing back and forward.. and is it creating a 'purchase event' every time?

If that's the case, how can any of us rely on conversion tracking at all?

There are no product details on the receipt page.. its is the bog standard receipt page.

>> If the urls are all the same as the initial receipt page then the customer must be visiting the receipt page several times. <<

The URLs are different but they all relate to the same order number. Yes the customer must be visiting the receipt page numerous times. Which means anyone tracing conversions using this method (and I don't think there is another option) cannot be confident about the CPA being reported.

It seems very odd to see so many return views of the receipt page, especially a few hours later, but I have no idea why this might be happening. Maybe people on mobile tend to back up through previous pages more than people on desktops. Just pondering the issue though as it's going to be a problem whatever the cause.

Most tracking systems will identify the tracking as a repeat because of the unique order ID. Is there any way to do that with facebook pixels?

The only sensible way I can think of to prevent this happening would be drop a cookie on the customer and check if set before displaying the pixel tracking. I'm sure it could be done easily enough in javascript and there must be plenty of 'display only once' examples around.

I wonder if this is just a Facebook issue, or if GoogleAds / Bing Ads etc might also trigger purchase events every time the receipt page is viewed... I think probably yes. Maybe this is happening more than we think! The advertisers wont worry about it because it makes their figures look good... and we are left thinking ad campaigns are getting better ROI's than they actually are.

if GoogleAds / Bing Ads etc might also trigger purchase events every time the receipt page is viewed... I think probably yes. Maybe this is happening more than we think! The advertisers wont worry about it because it makes their figures look good... and we are left thinking ad campaigns are getting better ROI's than they actually are.

As I said above, I don't think this is a problem as most tracking systems will identify the tracking as a repeat because of the unique order ID.

I was about to to put up some code that will execute the tracking code only once but realised that using a simple variable would mean that you'd only ever see the first ever conversion from a customer.

So the show once code really needs to keep track of whether the receipt page tracking has already been shown for each order. Not that difficult as it just needs to use a variable that includes the orderID in it's name but whoever does it needs to put a little bit of thought into it.

Javascript is the way to go though as the show once code can then just let the facebook tracking script run or not using a simple if.