Hi there,
Thanks for getting in touch, I'm happy to give you some initial thoughts and guidance on your Facebook Ads tracking problem. It sounds like you've already invested a fair bit into your advertising and are feeling the pinch with the recent tracking issues. Let's see if we can get you back on track.
First things first: Confirming the Basics
It's always worth double-checking the simple things first, even if you think you've got them covered. A few common issues can cause tracking to go haywire:
Pixel Placement and Firing: Is your Facebook Pixel installed correctly on every page of your website, especially the thank you/confirmation page after a purchase? Is it firing only once per event? Double-check using the Facebook Pixel Helper Chrome extension.
Event Setup: Are your purchase events configured correctly in Facebook Events Manager? Ensure the event parameters (currency, value, etc.) are being passed correctly.
WooCommerce Integration: Is your WooCommerce integration with the PixelYourSite plugin still functioning correctly? Try temporarily deactivating and reactivating the plugin to refresh the connection. I remember one client we worked with, they were also using a Wordpress site for eCommerce and we quickly realised that a plugin update had broken the tracking, so purchases weren't being attributed correctly.
The iOS 14.5+ Impact and Conversion API
As you mentioned, iOS 14.5+ and other privacy updates have made tracking much more difficult. Relying solely on the Facebook Pixel is no longer sufficient. The Conversions API is a must-have. I understand you've implemented GTM, GA4 and Stape, have you implemented a Conversions API to send data directly from your server to Facebook? This is less susceptible to browser restrictions and can significantly improve tracking accuracy. Make sure you are de-duplicating events sent via pixel and Conversions API so they're not double counted.
Attribution Settings: Giving Credit Where It's Due
Facebook's default attribution settings might be underreporting your conversions. Look at your attribution window in Facebook Ads Manager. Are you using a 7-day click or 1-day view window? Consider expanding it to a 28-day click or 7-day click/1-day view to see if you're capturing more purchases, especially if you have a longer sales cycle.
Also, compare your Facebook Ads data to your Google Analytics (GA4) data. If GA4 is tracking purchases accurately, it can give you a better overall picture of your website performance and where your conversions are coming from, although it's not as granular as Facebook Ads data.
Debugging with Test Events
Facebook's Test Events tool can be invaluable for debugging tracking issues. Use it to simulate purchases and see if the events are being recorded correctly in real-time. If you see errors or discrepancies, it can help you pinpoint the source of the problem.
We'll need to look at traffic quality and your website...
Given the significant discrepancy between your KPI sheet and Facebook Ads data (80% untracked), it's crucial to investigate potential causes of data loss beyond just tracking setup. One key area is traffic quality. Are you seeing a lot of bot traffic or low-quality clicks that aren't converting? These can skew your data and make it harder to accurately measure performance. Also, you want to see if there's anything on your website that might be interfering with tracking. For example, slow loading speeds, broken JavaScript, or conflicts between plugins. I've run quite a few campaigns for B2B SaaS and sometimes the websites slow loading speed would completely destroy conversion rates. Also if you're using any custom checkout flows in CartFlows, ensure they're fully compatible with your tracking setup.
I'd say you need to give it more time...
Even with perfect tracking, Facebook's algorithms need time to learn and optimise for conversions, especially after making significant changes to your tracking setup. Resist the urge to make frequent, drastic changes to your campaigns. Give the system a chance to stabilise and gather data before making further adjustments. Proper split testing and campaign structure will go a long way. The most important factor is usually targeting. There are usually lots more audiences you could test out. Keep on testing until you find new winners. Creative testing: more creative formats, different messaging, mix things up to increase your chances of finding new winning creatives. We've had several SaaS clients see really good results with UGC videos - lots of angles to test there as well.
Here's a table summarising potential solutions:
| Issue | Recommended Action |
|---|---|
| Pixel Firing/Placement | Verify pixel installation on all pages, ensure it fires once per event using Pixel Helper. |
| Event Setup | Check purchase event configuration in Events Manager, ensure parameters are correct. |
| WooCommerce Integration | Temporarily deactivate/reactivate PixelYourSite plugin. |
| iOS 14.5+ Impact | Implement Facebook Conversions API, deduplicate events. |
| Attribution Settings | Expand attribution window in Ads Manager (28-day click, 7-day click/1-day view). |
| Website Interference | Check website speed, JS errors, plugin conflicts, CartFlows compatibility. |
| Algorithm Learning | Allow sufficient time for algorithms to learn after tracking changes. |
Why Expert Help Might Be Useful
I understand you've already brought in an expert to set up GTM and GA4, however, if after implementing the steps above you're still struggling, it might be worth considering getting a second opinion. Troubleshooting tracking issues can be complex, requiring a deep understanding of Facebook Ads, web development, and data analytics.
Someone with experience in handling similar situations for eCommerce businesses can quickly identify the root cause and implement the necessary solutions. For example, we helped one client who sells subscription boxes increase their return on ad spend by making sure the pixel wasn't firing multiple times on one event. Also for a client running a campaign selling gambling-related prize draws, we implemented a Conversions API which improved things a little.
We'd be happy to offer a free consultation to discuss your specific situation in more detail and see if we can help.
Regards,
Team @ Lukas Holschuh