Here's something you should really add to this video because it took me way longer than it should have to troubleshoot this issue. I didn't even realize the issue until I noticed a day later that my Google Analytics account wasn't capturing any data. Most of us are going to use Google Analytics 4 alongside Facebook Conversion API. In your video, it makes it look like all you have to do server-side is setup the FB Conversion API tag and data will go to both places. Maybe that's not your intention but with this being a tutorial for newbies, I just assumed Google would have some internal mechanism to send data off to Analytics. Once you check the box in your web container to send GA4 data to the server, you'll stop receiving data to your Google Anaytics 4 account. In order to prevent this from breaking, you have to go to your server-side container and add another tag (along side the FB CAPI tag) for Google Analytics: GA4. Input your measurement ID, and set the trigger for that same GA4 client you used for FB. Submit it all and you're in business. Now your server-side setup will send data to both Facebook and Analytics. Looking back on it now, it makes total sense. I just never considered it because I've literally seen nobody do this in any of the tutorial videos on TH-cam.
Yes, that’s correct the GA4 tag needs to be created in the server container if you want to send the data to GA4 (and it’s the same thing for other tools like UA or FB… you always need a tag). I appreciate the feedback!
I noticed the same thing with GA4. But what about Google Ads? Do I need to also set it up for my Google ADS Conversion tags that I already have in my Browser Container? If yes, do I need to use the same trigger as GA4 and FB or something different? GTM is also suggesting a 'Conversion Linker' tag.
Hands down "Best gtm/FB Capi Tut" on the Tube ! especially if you never had a GTM set up before like me. I was totally newb at it. Thanks Cedric, you helped me a lot !
honestly, this is the best tutorial on any topic to date. I can't believe how much detail you give us. Strat session booked for Monday. I have so many systems integrated for a funnel I had to put together due to merchant restrictions with our 2 CRM's and Clickfunnels
🎯 Key Takeaways for quick navigation: 00:00 *🎥 Introduction to Google Tag Manager and Server-Side Tracking* - Explains the purpose of the video, - Mentions that the setup will be shared for easy use, - Stresses the importance of supporting the video for better TH-cam visibility. 01:11 *📚 Understanding Facebook Conversion API and Server Side Tracking* - Detailed overview of what is Facebook Conversion API and Server Side Tracking, - Explains how tracking information gets send to Facebook platform using tags in Google Tag Manager, - Discusses the difference between browser-side and server-side tracking. 03:28 *💻 Setting up Facebook Conversion API with Google Tag Manager* - Demonstrates live setup of Google Tag Manager, - Explains the need for event id and timestamp to avoid duplicacy in data, - Shows how to import the setup provided by the video creator into one's own Google Tag Manager account. 05:21 *🔧 Configuring Various Events in Google Tag Manager* - Walks through different types of tags and their relevant settings, - Discusses concepts like advanced matching, object properties, triggers, variables, - Highlights the difference between standard and custom events. 10:19 *📈 Setting up Server side tracking using ga4 tags * - Details how to setup server-side tracking, - Mentions the need for Google analytics 4 property, - Describes what each attribute in the setup does and how to set them. 14:25 *🏷️ Setting up Other GA4 Events and user properties* - Discusses how to set up other Google analytics 4 events, - Stresses on the importance of correct ID to send data to server, - Further explains the purpose and usage of triggers, setting up user properties and how the event names differ between Facebook and GA4. 16:47 *🛒 Introduction to Property Setup and Custom Events* - Explains how to add currency and value to your data layer, - Highlights the importance of adding currency and value-especially for metrics like return ad spend, - Goes through the setup for adding user properties. 18:23 *🕹️ Setting up GA4 and Custom Events* - Walks through the process of creating custom events, - Explains the need for consistent naming for events across GA4 and Facebook, - Stresses the importance of selecting the exact triggers as your Facebook tag for the browser. 19:20 *🎯 Creating the Server Container and Choosing Cloud Provider* - Demonstrates the step for creating a server container and choosing Google Cloud, - Discusses the cost associated with server-side tracking, - Guides through the process of adding a payment method and verifying domain name in Google. 22:33 *🌐 Setting up Custom Sub Domains and DNS Records* - Explains the process of setting up custom subdomains and considering uniqueness, - Guides through setting up DNS records and its time frame, - Discusses the process of verifying domain in Google. 24:05 *🧾 Configuring Server Container URL * - Shows the process of adding the server container URL to your browser, - Discusses about the need for using your own server URL for tracking, - Highlights a specific error, 404, when not set up correctly. 25:15 *💽 Setting up GA4 Client, Tags, and Triggers * - Demonstrates setting up GA4 client, tags, and triggers, - Highlights the need for choosing the specific tag template for the Facebook Conversion API, - Explains the process of getting the pixel ID, access token, and test event code, along with setting up a custom trigger for GA4. 28:08 *🔄 Setting up Google Tag Manager Web Container * - Guides through setting up another client for the Google Tag Manager Web Container, - Highlights the need for adding the container ID from the browser container, - Demonstrates setting up the measurement ID for GA4. 30:05 *🕵️♀️ Inspecting Event Fire in Facebook Events Manager* - Highlights the connection between the browser-side and server-side events, - Discusses the importance of custom conversions for custom events, - Shows the importance of setting up DNS records for using your own server and adding the codes into the website. 32:37 *🏢 Server-side Tracking for Google Tag Manager* - Discusses the importance of server-side tracking for Google Tag Manager, - Demonstrates how to set up the web container library, - Highlights the need of changing the script of Google Tag Manager in the web container to use the server URL instead of Google's. 34:15 *🚀 Deploying the Server * - Shows how to access the Google Cloud Platform for deploying the server, - Discusses the need of verifying that the project ID matches with Google Tag Manager, - Highlights the process of deploying the server through Google Cloud Shell. 34:59 *📌 Upgrading in Google Cloud Platform* - Explains how to match Container ID in Google Cloud Platform with the Google Tag Manager, - Walks through the authorization of Google Cloud Platform for the upgrade script, - Discusses the significance of setting a policy script URL and enabling request logging. 35:35 *⚙️ Changing Deployment Mode* - Demonstrates changing the deployment type from "Testing" to "Production" in the settings, - Advises turning on auto-scaling and setting the minimum number of servers, - Discusses the maximum number of servers needed based on company size. 36:37 *💰 Understanding Cost Implications* - Clarifies that upgrading the server initiates cost for the service, - Mentions the cost varies depending on the number of events sent to the Facebook Conversion API, - Explains the process of acknowledging and confirming the paid service. 37:31 *🔄 Recap of Server-side Tracking Configuration* - Recapitulates the setup of server and browser tracking, event ID creation, and event duplication, - Reiterates the process of creating custom subdomain in Google Cloud for first-party server authentication, - Recounts the creation of GA4 client and Facebook tag for sending data to Facebook Conversion API, - Summarizes the method to load the Google Tag Manager web library via the server, not Google's server. Made with HARPA AI
Literally been trying to read the developer stuff on Google Tag manager to understand this! Was getting nowhere! Thank you so much! You should add the donate on your videos!
I have found this video very informative and one of the best tutorial about Facebook Conversion API. It would great, if you could make another video for Pinterest Conversion API.
Hi Cedric, your responses to the following questions are requested: 1) After importing the container, will the default event parameters values (event id, event time,...) require or are generated by the presence of a data layer? Or will they work in general? In general my website does not have a data layer so I will be using javascript variables created with the GTM Variable Extension. ---------- At approximately 17:38 you begin to reference GA4 'user properties'. 2) Are those property names (user_data.email_address; user_data.first_name,...) the equivalent of the 'customer information data parameters (email, first name,...)' used when FB pixel advanced matching is enabled? 3) Could the 'user properties' values be those variables created by the data layer or custom javascript? Thank you for your helpful videos.
Amazing turorial, thanks for that! The question would be why do you want to use FB pixel on the website and the server and then make them to de-duplicate? Why not to use only on the server side tracking?
Everything seems to work, thank you so much! However it costs a lot of money especially if you want to set it up for every client you have (as an agency). For example I got a small website with a low volume of pagevisitors, I'm paying for 5 days already 20 dollars! That's insane. Is there a free way or a less expensive way?
I’m assuming you’re talking about the server container? If so, it’s because we only want to send data to Facebook when our GA4 client claims a request.
Hi, do you have by chance a tutorial of how to do it but with our own servers. Google Cloud charge us a lot money monthly and we only have one active landing page. Thanks for your tutorial.
Hi Vertex, Thank you for your value video. Of all the videos I watched on this subject, your videos are the only ones I find very well taught and step-by-step. I have a question: When I go to the App Engine in Google cloud when I clicked ADD A CUSTOM DOMAIN it directed me to create an application. Is this correct in order to add the website?
hello hi, im currently using GTM web for my container, does it means I should set up another server container and use both web and server container for my website at the same time? Thanks.
thankyou for tutorial! , i have question, currently i dont have google cloud for server, but Now i'am using Vultr as hosting which is my domain stick in it. So if i chose Manually provision tagging server on container setting, and then code Container Configuration generated. and then what should i do next ? where i should put that code?
Is it essential to activate "Request logging" in the Google Cloud Shell, I have heard that this brings a lot more costs? Looking forward to your reply and thanks for the great video!
Hi there!! great tutorial everything worked fine but I don't see the "Test Events" proof that events are coming from Server side... any idea what could cause it?
A really valuable video, thank you! I've been setting up Conversions API for the last few weeks, have read/watched a lot of strong content on the subject, yours was the first to have explained how/why load the web container via the server. I am struggling with one thing. I use custom engagement events (scroll depth, time on page) - I have successfully set up CAPI to send the events via both browser and server and they are deduplicating correctly. However while I am able to send custom parameters (ie Scroll Depth 50%) via the Browser/Pixel I just cannot get the parameters be included via the Server. ie those parameters are shows within 'Test Events' for the Browser, but not shown for the Server, nor are they shown in the Server container outgoing HTTP request details. I have the custom parameters referenced in the base GA4 web tag, the GA4 event tag, and the Facebook tag (I have experimented with both Custom HTML and Facebook Incubator template versions). Any pointers would be much appreciated!
@@VertexMarketingAgency Hi, with a 'Websites_Tracking' custom event name, I have multiple tags firing at different Scroll Depths or Time on Page, with parameters for those values. ie Scroll Depth (parameter name), 50% (value). The event is being sent via the server. However the parameters are missing within "Test Events" entries. In the GTM outgoing HTTP request body in the server container I see the event name, ID and standard parameters detailed. However for custom_data I see "custom_data": { "contents" : null}. If I test via a payload using Graph API Explorer, the parameter shows. So I'm assuming it must be something wrong I'm doing in GTM.
if you also want Google Analytics to send data from the same server, do you need to set up another client in the Server Side Container? Or, is it already doing that? Thanks for your help. Your videos are so well done.
Thank you so much for this video! Question - you mentioned about loading the GTM webserver script via the GTM server side. Should this be best practice? If we are saying that one of the flaws with webside is ad blockers, shouldn't this impact GTM webserver script from loading, hence GA4 and FB CAPI will not function? Thanks again
Thanks for the great tutorial! I have a question pertaining to using the server url as apposed google tag manager standard url >From minute 34 you speak about changing the head tracking code as well as the body tracking code. >How exactly or where exactly am I supposed to change this? If i just replace the standard code with my server url, the website is not even picked up in preview mode. >Please note that I have gone ahead and created a GTM client as well in the server container and put cloudshell to "live mode" Thanks for your help in advance
Hi Cedric, thanks a lot for the very helpful content. One question: You said that some things (custom domain, cname...) did crush your website? Does that mean one couldn't enter the website afterwards or something worse? Was the website fully functional again after undoing the settings? Thanks for clarifying and best wishes! Ole
Hi Cedric, @VertexMarketingAgency great video, thank you for sharing. I followed step by step but when I put this live, events stopped tracking in GA4. What could be the reason for this? The the CAPI was working and sending data.
Great tutorial. I have a question. When I test the event in business manager, the server activity is not activated. And also the event ID gives me a weird number like ob3_plugin-set_...... how can I solve it?
Hi, thank you for the great explanation! When setting up the FB conversion API, FB offered me to use their self-installation wizard. It connected to my GTM and created 4 tags automatically in the client-side GTM - a FB pixel setup tag, FB pixel event tag, FB GA4 Config tag and FB GA4 Event tag; and 1 FB tag in the server-side GTM. I am a little bit confused about few things: 1. Should the newly generated FB pixel tags replace the old ones (set up years ago) or should they work together? The new pixels do have some FB variables included in the code that are not present in the old code (FBEventName, Event_ID_Constant). Is it safe to delete the old pixels and use the new ones only? 2. Once cookies go away eventually, will it be safe to delete the FB pixels from GTM and leave only the FB API tags? 3. I had previously created GA4 tags in order to use them for Google Analytics in both client and server-side GTMs. And now FB has created new GA4 variables, which are almost identical, except for the FB GA4 Event tag in the client-side GTM, which contains some FB variables. Should all of them stay, or is this an unnecessary duplication? In other words, does the FB conversion API require a separate/new GA4 tag or could it use the GA4 tag created for Analytics purposes?
Hey Marina, 1. So I actually never use the setup wizard (I think my process is easier). 2. It's a bit too early to say that. As soon as it becomes best practice, I'll make a video on it. 3. I recommend you don't use the FB wizard and any of it's tags, variables and triggers. Create your own instead or use my template :)
Great tutorial. I have a question. Since I'm using shopify and adding facebook pixel on preferences setting. For website container, if using gtm to add facebook pixel, should I remove the pixel at preferences setting to avoid duplicate issue?
Hello, thank you for the great tutorial. I have two questions: 1- I had one base GA4 tag, and I edited this tag for Facebook capi and put the server URL as you said in the video. Facebook capi is working fine and but google analytics stop to work. i don't see data since I edited my GA4 basic tag for Facebook capi. Do I have to have two dedicated base GA4 tags (page view), one for Facebook capi and another for basic GA4 for analytics? 2- Do we have to upgrade our testing server to production? Can we go with testing? Thanks.
Hi, thank you for the detailed instructions! I have been able to receive all the events when having the event_test_code, but when I remove it, it is not showing up in the Overview section graph nor adding lead counts to the Campaign conversion results, any reason for this?
Thank you so much for making this video... I just tried to download the file, but I think there is an issue with it. Can you confirm that the CAPI Custom GTM Templates is the right one to download?
Hi Cedric thank you for this video why should I add my web container to inside my server ? can I just stop once "deduplication' is detected by Facebook ?
Hello Cedric, Thank you very much for sharing this tutorial. Tried to get the CAPI Custom GTM Templates but the link is broken. Is there any other way to get it?
In this video you are sending the FB pixel from web and sending CAPI by server. Have you done any videos on doing proxy the FB pixel or another marketing tag from the sGTM through an HTTP requests? Obviously, being able to control the FB cookie through 1st party server response header settings is much more appealing than having those cookies set from the web to the client.
Thanks for this tutorial. I'm just getting a business started and wow are things complicated! I can't seem to make the above links to work...is there an updated place I can go?
Hello i love ur video but there is one problem i cant get tag facebook conversion API TAG - he is not on my tag list's its deleted from there ? or it will be avaible only after create server-side container ?
Thank you for this great video. Really great walkthrough! I have one question regarding the GA4 tag setup. I already have a GA4 setup running server side. Do i simply just need to add the variables from your template to my already existing GA4 tags, download the Facebook CAPI template on the Server GTM and follow your instructions to make it work? I think my real question is, do i need to create seperat GA4 event tags for the facebook events, or can i use my existing ones? Kind regards
Really great walkthrough. Thanks for demystifying the transport_url vs 'send to server container' question. Have you run into an issue where your GA4 is not receiving data after following these instructions? My GA4 now won't receive events, even in the DebugView. Any ideas?
How would this differ then using the facebook app on Shopify that uses Shopify's server to send the info to facebook? Is one more reliable than the other? Trying to understand why I would want to go through all these hoops on a personal server.
Hi Cedric & thanks for the video. Quick question: I am not currently using GA4 on my sites. Still on UA. How do I get this to work without having to upgrade to GA4? Do you have a video for that? Thanks in advance for your help.
First of all thanks for this useful video and your insights. Is it possible to use Universal Analytics instead of GA4 when setting the FB CAPI? I have the GA4 configured with just one event (purchase). All other events in my GTM container are configured in UA/GA3.
Hi, thank you so much for this amazing tutorial. I'm stuck in how to create custom triggers for events like AddToCart. As you mention there is another video with this explanation, however I was unable to find it. Can you gimme the link pls?
This video should give you a better idea of how to use GTM How to Setup Facebook Pixel Standard Events (With GTM) th-cam.com/video/fvTejMup7jI/w-d-xo.html
Great demo! Thanks. I've traked all events within my site. But some events are outside my domain, in Hotmart. Is there any workaround to track hotmart events (checkout, purchase...) as well??
I've never used hotmart so I'm not sure what that setup would look like... I recommend you check if they have a native intergration with Facebook like Shopify does.
Thank you for the video! I have one question though, if I use set up Facebook Conversion API with google tag manager would that fix the missing data from my ads manager (Add to cards, Initiated checkouts and Purchases). BTW, I am using Conversions API with Shopify built in
No, unfortunately Facebook will still not attribute some your conversions to your campaigns. I recommend you use the native Shopify & Facebook intergration (it also does server side tracking).
Thank you soo much for this tutorial! Best one out there. Unfortunately my website crashes when trying to create a custom subdomain. I have removed the pre-setting and entered all the A & AAAA records with @. Still my website keeps crashing. Any clue what I might have done wrong?
Great video, I lost a little bit at the last minute when you change the url of the gtm with your url domain in the GTM script code tracking. This change should be implemented by the developers team right? Because it's direct in the code.
great tut! So the pros of SS GTM instead of web are pagespeed & more privacy basically. If we already have web GTM can we change it to SS GTM (I haven't found that option) or do we have to delete and start again? Would that create any problems like data loss etc.? PS : I think I found it. Export the web container workspace and after setting up the ss container importing the previous workspace?
Do we need to upload the json file? Shouldn't the tags fire if we configure them in GTM? Sorry, missing the point of why to add the json file. Thanks in advance for your time and thanks for uploading the video
Hello! Thanks for this tutorial. It is amazing. I've followed every single step. The only thing that doesn't work for me is the 'Deduplicating'. When I test the events in the 'Test Events' section in Facebook event manager, The browser events come in later then the server events. Is this the reason the events aren't deduplicating? In the overview section, the 'Event Match Quality' displays 'poor'. Is this the reason the Timestamps aren't the same?
Hi, Thank you so much for sharing this tutorial which is so clear and helpful. I don't know if I missed the part, but I'm curious about what event parameters (event_time, first_party_collection,page_location....) are for? I don't see these data shown anywhere on Facebook or GA4. How can I use these fields?
Happy to hear this video was helpful! Well the event time is used for the timestamp of the event, the first_party_colelction is for user data parameters to work in the server-side and page_location is simply to send the page URL. This data should be available to you inside GA4 but not Facebook.
Hello, thanks for the video ! I struggle with Event ID, it's not the same for the client vs server. My facebook tag and GA4 are not launch at the same time due to RGPD, how can I have the same Event ID ?
You need to be using the same trigger because If not the event ID will be different. Outside of that I would need to audit your account to see what the problem is.
Thank you for your video , Can you help me when I submit the code it says this error : "Unknown variable name FB - Base Tracking Unknown variable “Billing First Name” found in a tag. Edit the tag and remove the reference to the unknown variable.", I don't know how to add this variable, where can I see the installation instructions for this?
@@VertexMarketingAgency I see facebook allows built-in google tag in Set up through a partner integration section can you make a video about this and how is it different from your video ?
Awesome Tutorial! Thank you: I need help at 35:19 I'm getting the message "Container config cannot be empty." Container Config (Required): I don't what to enter here or where to find what to enter This is my first trying this on Google Cloud.
The only connection for both the browser and server is pageviews. How do I set up the server for leads and purchase? I set up the GA event name "generate_lead" with the same trigger for the FB lead event. I only see browser activity, but not on the server side. Is there something I'm missing?
How did you set up the View Content and Purchase Triggers? I imported your template to my container but some of the tags are missing triggers. I am in E-commerce and I use Shopify.
@@VertexMarketingAgency I'm trying to find out how I should set up the triggers but I'm not sure how to. Can you give an example for Ecommerce users? I noticed you already have them set up as Custom Triggers, just wondering how to set that up so it fires correctly.
You mentioned you had a video about setting up triggers but it does not give an example of how to set up View Content and Purchase Triggers. You have "Transaction Completed" as a Custom Trigger for Purchase, how would I go about setting that up for Ecommerce?
Hi Cedric, you did a great video for MeasureSchool about Facebook Conversion API w/ Zapier. I was wondering what should we put for the Event ID field in the Zap? It seems like it's very important since it allows Facebook to de-duplicate conversions. there is no event_id parameter when i do a test lead, only contact_id. and i cant find the answer anywhere on youtube... please let me know!
Unfortunately, Zapier doesn't offer that feature... I'm sure there's a ninja way of creating an event id in Zapier but I always end up using GTM when setting this up.
Great Guide! I am having issues with FB browser pixel not receiving the pixel fire from GTM. I get it from the server side but not browser side. In GTM it says that it fired off. So the Page Views deduplicate it self. And then It just deduplicates the lead from the server side even though it never came in from the pixel side.
hey, thats a very nice guide! thanks so much! everything worked at the first setup! ive only one problem, my events in the events-manager having the same event id, same event time and the same url but they are not deduplicating, ive read also the commentarys here but i cant find nothing :D do u have any suggestions?
Hi thanks great video! I still have one thing to do...i configured in GA4 the tag parameter "items". In this tag i also have the content_ids for Facebook. But to run a dynamic ad i need to send to Facebook directly the field content_ids (i needo it also to deduplicated the custom events)...how i can configure the content_id from GA4 tag and facebook pixel code? Thank you
Hi Mario, the best way would be to create a content ID for all your products and push it to the data layer. Once it's in the data layer, you can use a GTM data layer variable to access the content ID. Hope this makes sense :)
how can you setup a trigger for a purchase using browser/server if you have a multi order bump/upsell funnel on clickfunnels? I wanted to have the trigger be a button text click and have the next page be the tag of product purchased. However there is variable data and that purchase could contain 1, 2 or 3 products being purchased. just a high level answer would be sufficient if possible
Hi. Thanks for a great tutorial! I am having an issue where my PageView events are NOT being deduplicated when I debug. They have the exact same URL, Event ID and action source. They differ in the "user data keys" though. Server pageview event contains: User data keys: Browser ID, IP address, User agent and Browser pageview contains: Advanced matching parameters: IP address, User agent, Postcode. My other events like "view content" and "Add to cart" are depuplicated just fine. Any idea what is causing this?
Hi friend, everything was amazing and i almost made everything correct. But when im trying to see the action of the webside on the server side, doesnt appear the tag activated. What you think i made wrong? That is the only part where i have problems Please helps. Thanks For so much helps
if i dont wanna have a web tracking but only server tracking to improve load speed how i could do it ? do i event send a transport_url and event id on every custom and standard events from ga4 and facebook ? do i also need put first party collector = true on every custom and standard event from ga4 and facebook ?
@@VertexMarketingAgency transport_url, event id and first party collector = true is needed in every event and config tag ? my setup is working but im not sure if im doing it the right way
Do i need to set up tags and triggers if we have already made specific events through the pixel (browser) and if so, can i simply just copy the code and implement them on GTM?
Here's something you should really add to this video because it took me way longer than it should have to troubleshoot this issue. I didn't even realize the issue until I noticed a day later that my Google Analytics account wasn't capturing any data. Most of us are going to use Google Analytics 4 alongside Facebook Conversion API. In your video, it makes it look like all you have to do server-side is setup the FB Conversion API tag and data will go to both places. Maybe that's not your intention but with this being a tutorial for newbies, I just assumed Google would have some internal mechanism to send data off to Analytics.
Once you check the box in your web container to send GA4 data to the server, you'll stop receiving data to your Google Anaytics 4 account. In order to prevent this from breaking, you have to go to your server-side container and add another tag (along side the FB CAPI tag) for Google Analytics: GA4. Input your measurement ID, and set the trigger for that same GA4 client you used for FB. Submit it all and you're in business. Now your server-side setup will send data to both Facebook and Analytics.
Looking back on it now, it makes total sense. I just never considered it because I've literally seen nobody do this in any of the tutorial videos on TH-cam.
Yes, that’s correct the GA4 tag needs to be created in the server container if you want to send the data to GA4 (and it’s the same thing for other tools like UA or FB… you always need a tag). I appreciate the feedback!
Thanks God I came here looking for this comment and realized my thoughts were true. This comment may saved lot of people.
This should be pinned or added in the description!
I noticed the same thing with GA4. But what about Google Ads?
Do I need to also set it up for my Google ADS Conversion tags that I already have in my Browser Container? If yes, do I need to use the same trigger as GA4 and FB or something different? GTM is also suggesting a 'Conversion Linker' tag.
I just made a copy of the tagg to copy it to the server container. Does this solve it aswell?
It's the best video on TH-cam for setting up the FaceBook Conversion API.
Thanks man for it.
You're welcome :)
Thank you so much for your video. I did exactly what you said and it works now!
Hands down "Best gtm/FB Capi Tut" on the Tube ! especially if you never had a GTM set up before like me. I was totally newb at it. Thanks Cedric, you helped me a lot !
Glad to help!
honestly, this is the best tutorial on any topic to date. I can't believe how much detail you give us. Strat session booked for Monday. I have so many systems integrated for a funnel I had to put together due to merchant restrictions with our 2 CRM's and Clickfunnels
🎯 Key Takeaways for quick navigation:
00:00 *🎥 Introduction to Google Tag Manager and Server-Side Tracking*
- Explains the purpose of the video,
- Mentions that the setup will be shared for easy use,
- Stresses the importance of supporting the video for better TH-cam visibility.
01:11 *📚 Understanding Facebook Conversion API and Server Side Tracking*
- Detailed overview of what is Facebook Conversion API and Server Side Tracking,
- Explains how tracking information gets send to Facebook platform using tags in Google Tag Manager,
- Discusses the difference between browser-side and server-side tracking.
03:28 *💻 Setting up Facebook Conversion API with Google Tag Manager*
- Demonstrates live setup of Google Tag Manager,
- Explains the need for event id and timestamp to avoid duplicacy in data,
- Shows how to import the setup provided by the video creator into one's own Google Tag Manager account.
05:21 *🔧 Configuring Various Events in Google Tag Manager*
- Walks through different types of tags and their relevant settings,
- Discusses concepts like advanced matching, object properties, triggers, variables,
- Highlights the difference between standard and custom events.
10:19 *📈 Setting up Server side tracking using ga4 tags *
- Details how to setup server-side tracking,
- Mentions the need for Google analytics 4 property,
- Describes what each attribute in the setup does and how to set them.
14:25 *🏷️ Setting up Other GA4 Events and user properties*
- Discusses how to set up other Google analytics 4 events,
- Stresses on the importance of correct ID to send data to server,
- Further explains the purpose and usage of triggers, setting up user properties and how the event names differ between Facebook and GA4.
16:47 *🛒 Introduction to Property Setup and Custom Events*
- Explains how to add currency and value to your data layer,
- Highlights the importance of adding currency and value-especially for metrics like return ad spend,
- Goes through the setup for adding user properties.
18:23 *🕹️ Setting up GA4 and Custom Events*
- Walks through the process of creating custom events,
- Explains the need for consistent naming for events across GA4 and Facebook,
- Stresses the importance of selecting the exact triggers as your Facebook tag for the browser.
19:20 *🎯 Creating the Server Container and Choosing Cloud Provider*
- Demonstrates the step for creating a server container and choosing Google Cloud,
- Discusses the cost associated with server-side tracking,
- Guides through the process of adding a payment method and verifying domain name in Google.
22:33 *🌐 Setting up Custom Sub Domains and DNS Records*
- Explains the process of setting up custom subdomains and considering uniqueness,
- Guides through setting up DNS records and its time frame,
- Discusses the process of verifying domain in Google.
24:05 *🧾 Configuring Server Container URL *
- Shows the process of adding the server container URL to your browser,
- Discusses about the need for using your own server URL for tracking,
- Highlights a specific error, 404, when not set up correctly.
25:15 *💽 Setting up GA4 Client, Tags, and Triggers *
- Demonstrates setting up GA4 client, tags, and triggers,
- Highlights the need for choosing the specific tag template for the Facebook Conversion API,
- Explains the process of getting the pixel ID, access token, and test event code, along with setting up a custom trigger for GA4.
28:08 *🔄 Setting up Google Tag Manager Web Container *
- Guides through setting up another client for the Google Tag Manager Web Container,
- Highlights the need for adding the container ID from the browser container,
- Demonstrates setting up the measurement ID for GA4.
30:05 *🕵️♀️ Inspecting Event Fire in Facebook Events Manager*
- Highlights the connection between the browser-side and server-side events,
- Discusses the importance of custom conversions for custom events,
- Shows the importance of setting up DNS records for using your own server and adding the codes into the website.
32:37 *🏢 Server-side Tracking for Google Tag Manager*
- Discusses the importance of server-side tracking for Google Tag Manager,
- Demonstrates how to set up the web container library,
- Highlights the need of changing the script of Google Tag Manager in the web container to use the server URL instead of Google's.
34:15 *🚀 Deploying the Server *
- Shows how to access the Google Cloud Platform for deploying the server,
- Discusses the need of verifying that the project ID matches with Google Tag Manager,
- Highlights the process of deploying the server through Google Cloud Shell.
34:59 *📌 Upgrading in Google Cloud Platform*
- Explains how to match Container ID in Google Cloud Platform with the Google Tag Manager,
- Walks through the authorization of Google Cloud Platform for the upgrade script,
- Discusses the significance of setting a policy script URL and enabling request logging.
35:35 *⚙️ Changing Deployment Mode*
- Demonstrates changing the deployment type from "Testing" to "Production" in the settings,
- Advises turning on auto-scaling and setting the minimum number of servers,
- Discusses the maximum number of servers needed based on company size.
36:37 *💰 Understanding Cost Implications*
- Clarifies that upgrading the server initiates cost for the service,
- Mentions the cost varies depending on the number of events sent to the Facebook Conversion API,
- Explains the process of acknowledging and confirming the paid service.
37:31 *🔄 Recap of Server-side Tracking Configuration*
- Recapitulates the setup of server and browser tracking, event ID creation, and event duplication,
- Reiterates the process of creating custom subdomain in Google Cloud for first-party server authentication,
- Recounts the creation of GA4 client and Facebook tag for sending data to Facebook Conversion API,
- Summarizes the method to load the Google Tag Manager web library via the server, not Google's server.
Made with HARPA AI
Literally been trying to read the developer stuff on Google Tag manager to understand this! Was getting nowhere! Thank you so much! You should add the donate on your videos!
Happy to hear we were able to help! I know there’s not much information about this subject online.
Thanks man! This is by far the best tutorial!
I have found this video very informative and one of the best tutorial about Facebook Conversion API. It would great, if you could make another video for Pinterest Conversion API.
23:11 can you please tell me where should i add DNS records? in Main Domain or a custom domain in cpanel that i want?
Thanks god for the existence of this guy
Ahah thanks Fernando!
Hands down the best, we all appreciate the time, effort, knowledge and resources you've provided with this video.
You are my heros guys!!!
Ahaha! Not all heros wear capes ;)
Amazing Cedric! you rock!
Awesome video. Great and helpful content
Glad it was helpful!
Amazing video, THANK YOU so much. We'd been struggling with the CAPI implementation for a while and this was a perfect walk-through.
Glad I could help!!
Hi Cedric, your responses to the following questions are requested:
1) After importing the container, will the default event parameters values (event id, event time,...) require or are generated by the presence of a data layer? Or will they work in general?
In general my website does not have a data layer so I will be using javascript variables created with the GTM Variable Extension.
----------
At approximately 17:38 you begin to reference GA4 'user properties'.
2) Are those property names (user_data.email_address; user_data.first_name,...) the equivalent of the 'customer information data parameters (email, first name,...)' used when FB pixel advanced matching is enabled?
3) Could the 'user properties' values be those variables created by the data layer or custom javascript?
Thank you for your helpful videos.
Wow. This is such a knowledge-packed walkthrough. Thank you!
Glad you enjoyed it!
Great video as always, thanks alot. One question though, the unique event ID, is it a unique number that the developper should push to the datalayer?
Brilliant tutorial. Thanks 😊
Wow, awesome video, mate.
Thanks :)
Absolutely awesome! Big thanks Cedric!!
My pleasure!
Hi, thanks for the video, I have a question, what would be the average cost of aws for the service?
Amazing turorial, thanks for that! The question would be why do you want to use FB pixel on the website and the server and then make them to de-duplicate? Why not to use only on the server side tracking?
Because Facebook still prefers to receive events via their own FB pixel script.
Great tutorial. I really really like this video.
Glad you liked it!
Everything seems to work, thank you so much! However it costs a lot of money especially if you want to set it up for every client you have (as an agency). For example I got a small website with a low volume of pagevisitors, I'm paying for 5 days already 20 dollars! That's insane. Is there a free way or a less expensive way?
So what is it that you have to pay for?
@@FreeQuick how much is it via stape?
@@leroywilliams5237 actually it's free for 1 cloud server haha
Yes it’s not cheap, you can try other services like state.io or reduce the amount of servers you use.
Good stuff! wasnt expecting the load GTM js file via the subdomain at the end of the video :-)
Glad you liked it!
Thanks you for your great work. But why not using "all pages" trigger instead of "GA4" trigger. Whats the difference between these two triggers
I’m assuming you’re talking about the server container? If so, it’s because we only want to send data to Facebook when our GA4 client claims a request.
Hi, do you have by chance a tutorial of how to do it but with our own servers. Google Cloud charge us a lot money monthly and we only have one active landing page. Thanks for your tutorial.
Great video 👍
Thanks 👍
What do you use to create the "event id" variable?
Hi Vertex, Thank you for your value video. Of all the videos I watched on this subject, your videos are the only ones I find very well taught and step-by-step. I have a question: When I go to the App Engine in Google cloud when I clicked ADD A CUSTOM DOMAIN it directed me to create an application. Is this correct in order to add the website?
No, it should simply allow you to add a custom subdomain. Please make sure your GTM project is linked to Google Cloud.
very nice video! But this still uses cookies right? So i use the real server side conversion API from FB..what is better?
hi. good video. I dont understand something... in the subdomain, what is in there? the store? or just use it as a reference to send events?
The subdomain is the transport URL so it’s not a website or landing page.
@@VertexMarketingAgency thanks
hello hi, im currently using GTM web for my container, does it means I should set up another server container and use both web and server container for my website at the same time? Thanks.
Yes, correct! If you want to do browser and server tracking (that's what I recommend)
thankyou for tutorial! , i have question, currently i dont have google cloud for server, but Now i'am using Vultr as hosting which is my domain stick in it. So if i chose Manually provision tagging server on container setting, and then code Container Configuration generated. and then what should i do next ? where i should put that code?
I always use Google Cloud so unfortunately I can’t answer that question. I recommend you use Google Cloud or AWS for this setup.
Is it essential to activate "Request logging" in the Google Cloud Shell, I have heard that this brings a lot more costs? Looking forward to your reply and thanks for the great video!
Hi there!! great tutorial everything worked fine but I don't see the "Test Events" proof that events are coming from Server side... any idea what could cause it?
I recommend you watch my other video on how to diagnose/troubleshoot your FB CAPI setup.
A really valuable video, thank you! I've been setting up Conversions API for the last few weeks, have read/watched a lot of strong content on the subject, yours was the first to have explained how/why load the web container via the server. I am struggling with one thing. I use custom engagement events (scroll depth, time on page) - I have successfully set up CAPI to send the events via both browser and server and they are deduplicating correctly. However while I am able to send custom parameters (ie Scroll Depth 50%) via the Browser/Pixel I just cannot get the parameters be included via the Server. ie those parameters are shows within 'Test Events' for the Browser, but not shown for the Server, nor are they shown in the Server container outgoing HTTP request details. I have the custom parameters referenced in the base GA4 web tag, the GA4 event tag, and the Facebook tag (I have experimented with both Custom HTML and Facebook Incubator template versions). Any pointers would be much appreciated!
Hey Richard, can I know what are the parameters you’d like to send?
@@VertexMarketingAgency Hi, with a 'Websites_Tracking' custom event name, I have multiple tags firing at different Scroll Depths or Time on Page, with parameters for those values. ie Scroll Depth (parameter name), 50% (value). The event is being sent via the server. However the parameters are missing within "Test Events" entries. In the GTM outgoing HTTP request body in the server container I see the event name, ID and standard parameters detailed. However for custom_data I see "custom_data": { "contents" : null}.
If I test via a payload using Graph API Explorer, the parameter shows. So I'm assuming it must be something wrong I'm doing in GTM.
Hey I'm getting an error importing the JSON template. It says "file format is invalid" "container to import is invalid with the current container"
same
Did you found a fix?
Superb!
if you also want Google Analytics to send data from the same server, do you need to set up another client in the Server Side Container? Or, is it already doing that? Thanks for your help. Your videos are so well done.
You would need to create a GA4 tag inside your server container. I recommend you watch my GA4 server side video :)
Thank you so much for this video!
Question - you mentioned about loading the GTM webserver script via the GTM server side. Should this be best practice? If we are saying that one of the flaws with webside is ad blockers, shouldn't this impact GTM webserver script from loading, hence GA4 and FB CAPI will not function?
Thanks again
Greate video, Thank you so much sir!
Happy it helped!
Thanks for the great tutorial!
I have a question pertaining to using the server url as apposed google tag manager standard url
>From minute 34 you speak about changing the head tracking code as well as the body tracking code.
>How exactly or where exactly am I supposed to change this? If i just replace the standard code with my server url, the website is not even picked up in preview mode.
>Please note that I have gone ahead and created a GTM client as well in the server container and put cloudshell to "live mode"
Thanks for your help in advance
It's hard to say what exactly is causing your error but I recommend you make sure your server url is properly connected to GTM server.
@@VertexMarketingAgency Thanks, I am 100% sure it is. Could you tell me where exactly I edit the code for Header and Body?
Hi Cedric, thanks a lot for the very helpful content. One question: You said that some things (custom domain, cname...) did crush your website? Does that mean one couldn't enter the website afterwards or something worse? Was the website fully functional again after undoing the settings? Thanks for clarifying and best wishes! Ole
This was just a temporary issue.
@@VertexMarketingAgency My website crashed this morning after adding the DNS records. How long does "temporary mean" ?
may we use segment instead the google cloud server?
Yes, you can!
Hi Cedric, @VertexMarketingAgency great video, thank you for sharing. I followed step by step but when I put this live, events stopped tracking in GA4. What could be the reason for this? The the CAPI was working and sending data.
Great tutorial. I have a question. When I test the event in business manager, the server activity is not activated. And also the event ID gives me a weird number like ob3_plugin-set_...... how can I solve it?
Is the FB CAPI tag failing? I recommend you watch my video on how to troubleshoot the FB CAPI.
Hi, thank you for the great explanation! When setting up the FB conversion API, FB offered me to use their self-installation wizard. It connected to my GTM and created 4 tags automatically in the client-side GTM - a FB pixel setup tag, FB pixel event tag, FB GA4 Config tag and FB GA4 Event tag; and 1 FB tag in the server-side GTM.
I am a little bit confused about few things:
1. Should the newly generated FB pixel tags replace the old ones (set up years ago) or should they work together? The new pixels do have some FB variables included in the code that are not present in the old code (FBEventName, Event_ID_Constant). Is it safe to delete the old pixels and use the new ones only?
2. Once cookies go away eventually, will it be safe to delete the FB pixels from GTM and leave only the FB API tags?
3. I had previously created GA4 tags in order to use them for Google Analytics in both client and server-side GTMs. And now FB has created new GA4 variables, which are almost identical, except for the FB GA4 Event tag in the client-side GTM, which contains some FB variables. Should all of them stay, or is this an unnecessary duplication? In other words, does the FB conversion API require a separate/new GA4 tag or could it use the GA4 tag created for Analytics purposes?
Hey Marina,
1. So I actually never use the setup wizard (I think my process is easier).
2. It's a bit too early to say that. As soon as it becomes best practice, I'll make a video on it.
3. I recommend you don't use the FB wizard and any of it's tags, variables and triggers. Create your own instead or use my template :)
Great tutorial. I have a question. Since I'm using shopify and adding facebook pixel on preferences setting. For website container, if using gtm to add facebook pixel, should I remove the pixel at preferences setting to avoid duplicate issue?
Hey Brian, check out the other video I made about server side tracking for Shopify. Here: th-cam.com/video/kbpPPYvguL0/w-d-xo.html
Hello, thank you for the great tutorial.
I have two questions:
1- I had one base GA4 tag, and I edited this tag for Facebook capi and put the server URL as you said in the video. Facebook capi is working fine and but google analytics stop to work. i don't see data since I edited my GA4 basic tag for Facebook capi. Do I have to have two dedicated base GA4 tags (page view), one for Facebook capi and another for basic GA4 for analytics?
2- Do we have to upgrade our testing server to production? Can we go with testing?
Thanks.
Hi, thank you for the detailed instructions! I have been able to receive all the events when having the event_test_code, but when I remove it, it is not showing up in the Overview section graph nor adding lead counts to the Campaign conversion results, any reason for this?
Lots of thing could be causing this. I recommend you watch the other video I made about how to diagnose/troubleshoot your setup.
@@VertexMarketingAgency I tried to find it under your channel but cannot find it. Can you please provide the link to the video here?
Question. Do I enable advanced matching on GTM and Facebook event manager or just on GTM?
It’s not really something you “enable” you can just add it in the FB tag template and Facebook will know what to do with it.
Thank you so much for making this video... I just tried to download the file, but I think there is an issue with it. Can you confirm that the CAPI Custom GTM Templates is the right one to download?
Yes, it is :)
Hi Cedric
thank you for this video
why should I add my web container to inside my server ? can I just stop once "deduplication' is detected by Facebook ?
thanks vertex ♥
I not found "facebook plugin API" in tag manager
what the best alternative?
It should be there… I use it all the time :)
@@VertexMarketingAgency
Pls write it's name 🥲
Whats the accuracy of tracking after setting this up? How much better it can get?
You'll get a bit more visibility in ads manager but server side tracking is the near future of tracking.
Hello Cedric, Thank you very much for sharing this tutorial. Tried to get the CAPI Custom GTM Templates but the link is broken. Is there any other way to get it?
The template works. You just need to download the file to your computer by right clicking on it and hit save as.
In this video you are sending the FB pixel from web and sending CAPI by server. Have you done any videos on doing proxy the FB pixel or another marketing tag from the sGTM through an HTTP requests? Obviously, being able to control the FB cookie through 1st party server response header settings is much more appealing than having those cookies set from the web to the client.
Thanks for this tutorial. I'm just getting a business started and wow are things complicated! I can't seem to make the above links to work...is there an updated place I can go?
Are you refering to the GTM template?
Hello i love ur video but there is one problem i cant get tag facebook conversion API TAG - he is not on my tag list's its deleted from there ? or it will be avaible only after create server-side container ?
The FB CAPI tag in located inside the server container.
Thank you for this great video. Really great walkthrough! I have one question regarding the GA4 tag setup.
I already have a GA4 setup running server side. Do i simply just need to add the variables from your template to my already existing GA4 tags, download the Facebook CAPI template on the Server GTM and follow your instructions to make it work?
I think my real question is, do i need to create seperat GA4 event tags for the facebook events, or can i use my existing ones?
Kind regards
You can use your current GA4 tags but make sure you're using the proper event names and adding the event ID to all you GA4 tags.
Do you have tutorials on this topic?
I have one about GA4 server side so not exactly the same topic but really similar.
@@VertexMarketingAgency Thank you for reply!
Really great walkthrough. Thanks for demystifying the transport_url vs 'send to server container' question. Have you run into an issue where your GA4 is not receiving data after following these instructions? My GA4 now won't receive events, even in the DebugView. Any ideas?
I had this problem. But I made another tag using the server side gtm instead and it worked fine (maybe better if it's server data)
If you create GA4 tags in the server container it should resolve your problem :)
How would this differ then using the facebook app on Shopify that uses Shopify's server to send the info to facebook? Is one more reliable than the other? Trying to understand why I would want to go through all these hoops on a personal server.
Hi Cedric & thanks for the video. Quick question: I am not currently using GA4 on my sites. Still on UA. How do I get this to work without having to upgrade to GA4? Do you have a video for that? Thanks in advance for your help.
Unfortunately, it only works with GA4 for now. You could create a GA4 account simply for the FB conversions API and not use it.
First of all thanks for this useful video and your insights. Is it possible to use Universal Analytics instead of GA4 when setting the FB CAPI? I have the GA4 configured with just one event (purchase). All other events in my GTM container are configured in UA/GA3.
No unfortunately, you can only use GA4 for now.
Hi, thank you so much for this amazing tutorial. I'm stuck in how to create custom triggers for events like AddToCart. As you mention there is another video with this explanation, however I was unable to find it. Can you gimme the link pls?
This video should give you a better idea of how to use GTM How to Setup Facebook Pixel Standard Events (With GTM)
th-cam.com/video/fvTejMup7jI/w-d-xo.html
Great demo! Thanks. I've traked all events within my site. But some events are outside my domain, in Hotmart. Is there any workaround to track hotmart events (checkout, purchase...) as well??
I've never used hotmart so I'm not sure what that setup would look like... I recommend you check if they have a native intergration with Facebook like Shopify does.
Thank you for the video! I have one question though, if I use set up Facebook Conversion API with google tag manager would that fix the missing data from my ads manager (Add to cards, Initiated checkouts and Purchases). BTW, I am using Conversions API with Shopify built in
No, unfortunately Facebook will still not attribute some your conversions to your campaigns. I recommend you use the native Shopify & Facebook intergration (it also does server side tracking).
Thank you soo much for this tutorial! Best one out there. Unfortunately my website crashes when trying to create a custom subdomain. I have removed the pre-setting and entered all the A & AAAA records with @. Still my website keeps crashing. Any clue what I might have done wrong?
Hi Stefan! I believe the problem is with your "@". Usually this symbol means root domaine. So instead of adding the "@" add your subdomaine.
@@VertexMarketingAgency Hi Vertex, thank you for the reply. Now it works :)
Great video, I lost a little bit at the last minute when you change the url of the gtm with your url domain in the GTM script code tracking. This change should be implemented by the developers team right? Because it's direct in the code.
So this step is not a must but yes, it would need to be done by a technical marketer/developer or anyone that understands the code of your site.
great tut! So the pros of SS GTM instead of web are pagespeed & more privacy basically. If we already have web GTM can we change it to SS GTM (I haven't found that option) or do we have to delete and start again? Would that create any problems like data loss etc.?
PS : I think I found it. Export the web container workspace and after setting up the ss container importing the previous workspace?
To follow what I'm doing in the video you need both web & server container.
Do we need to upload the json file? Shouldn't the tags fire if we configure them in GTM? Sorry, missing the point of why to add the json file. Thanks in advance for your time and thanks for uploading the video
No you don't need to use the temlate I'm providing. This is just to help and save you some time :)
Hello! Thanks for this tutorial. It is amazing.
I've followed every single step. The only thing that doesn't work for me is the 'Deduplicating'. When I test the events in the 'Test Events' section in Facebook event manager, The browser events come in later then the server events. Is this the reason the events aren't deduplicating? In the overview section, the 'Event Match Quality' displays 'poor'. Is this the reason the Timestamps aren't the same?
Please watch my video on how to troubleshoot your FB CAPI setup :)
Hi, Thank you so much for sharing this tutorial which is so clear and helpful. I don't know if I missed the part, but I'm curious about what event parameters (event_time, first_party_collection,page_location....) are for? I don't see these data shown anywhere on Facebook or GA4. How can I use these fields?
Happy to hear this video was helpful! Well the event time is used for the timestamp of the event, the first_party_colelction is for user data parameters to work in the server-side and page_location is simply to send the page URL. This data should be available to you inside GA4 but not Facebook.
@@VertexMarketingAgency Are these event parameters a must when you set up CAPI?
Hello, thanks for the video ! I struggle with Event ID, it's not the same for the client vs server. My facebook tag and GA4 are not launch at the same time due to RGPD, how can I have the same Event ID ?
You need to be using the same trigger because If not the event ID will be different. Outside of that I would need to audit your account to see what the problem is.
@@VertexMarketingAgency Ok it seems logical. But not RGPD compliant in my case. Thanks for your answer tho :)
Do you know if it's possible to set up a server-side container on a Squarespace subdomain?
I don't see why it would be an issue. As long as you have access to the DNS you should be fine.
Do I have to create a new GA4 Tag for server container and check mark "Send to server container" ? Or I can use my old web container for that?
You can use your old GA4 but make sure you create the GA4 tag inside your server container.
Thank you for your video , Can you help me when I submit the code it says this error : "Unknown variable name
FB - Base Tracking
Unknown variable “Billing First Name” found in a tag. Edit the tag and remove the reference to the unknown variable.", I don't know how to add this variable, where can I see the installation instructions for this?
Thank you so much , i found this th-cam.com/video/fDuwmudV-oU/w-d-xo.html&ab_channel=VertexMarketingAgency
You need to remove the variable or create it by pulling from the dataLayer.
@@VertexMarketingAgency I see facebook allows built-in google tag in Set up through a partner integration section can you make a video about this and how is it different from your video ?
Awesome Tutorial! Thank you:
I need help at 35:19 I'm getting the message "Container config cannot be empty."
Container Config (Required): I don't what to enter here or where to find what to enter
This is my first trying this on Google Cloud.
It sounds like you're in the wrong project or the project isn't connected to the server container.
The only connection for both the browser and server is pageviews. How do I set up the server for leads and purchase? I set up the GA event name "generate_lead" with the same trigger for the FB lead event. I only see browser activity, but not on the server side. Is there something I'm missing?
Hello, can I ask please? What I can do if I do not have Facebook Conversions API Tag in a search Gallery in Tag Templates? Thank you very much
It should be there but let’s say it wasn’t you could use the http request
How did you set up the View Content and Purchase Triggers? I imported your template to my container but some of the tags are missing triggers. I am in E-commerce and I use Shopify.
You need to create the trigger yourself because that’s specific to your site.
@@VertexMarketingAgency I'm trying to find out how I should set up the triggers but I'm not sure how to. Can you give an example for Ecommerce users? I noticed you already have them set up as Custom Triggers, just wondering how to set that up so it fires correctly.
You mentioned you had a video about setting up triggers but it does not give an example of how to set up View Content and Purchase Triggers. You have "Transaction Completed" as a Custom Trigger for Purchase, how would I go about setting that up for Ecommerce?
Hi Cedric, you did a great video for MeasureSchool about Facebook Conversion API w/ Zapier. I was wondering what should we put for the Event ID field in the Zap? It seems like it's very important since it allows Facebook to de-duplicate conversions. there is no event_id parameter when i do a test lead, only contact_id. and i cant find the answer anywhere on youtube... please let me know!
Unfortunately, Zapier doesn't offer that feature... I'm sure there's a ninja way of creating an event id in Zapier but I always end up using GTM when setting this up.
Great Guide! I am having issues with FB browser pixel not receiving the pixel fire from GTM. I get it from the server side but not browser side. In GTM it says that it fired off. So the Page Views deduplicate it self. And then It just deduplicates the lead from the server side even though it never came in from the pixel side.
I recommend you ask your question in our community and add screenshots :)
What exactly loading the web container inside the server helps to achieve?
It helps you remove all traces of GTM on your site and keeps things first party.
@@VertexMarketingAgency But it doesn't seem to work. Followed your instructions step by step but GTM just doesn't seem to load from my sub domain.
hey, thats a very nice guide! thanks so much! everything worked at the first setup! ive only one problem, my events in the events-manager having the same event id, same event time and the same url but they are not deduplicating, ive read also the commentarys here but i cant find nothing :D do u have any suggestions?
Please watch my video on how to diagnose/troubleshoot your setup :)
me too :( Did you success the deduplicated?
Hi thanks great video! I still have one thing to do...i configured in GA4 the tag parameter "items". In this tag i also have the content_ids for Facebook. But to run a dynamic ad i need to send to Facebook directly the field content_ids (i needo it also to deduplicated the custom events)...how i can configure the content_id from GA4 tag and facebook pixel code? Thank you
Hi Mario, the best way would be to create a content ID for all your products and push it to the data layer. Once it's in the data layer, you can use a GTM data layer variable to access the content ID. Hope this makes sense :)
On your server side GTM, what was the purpose of you sending stuff over from GA4 (on client side) only for them to be eventually sent to Facebook?
Because instead of just sending the data to GA4 I can also send it to the FB CAPI.
why we need GTM? i have a woocommerce store and i run ads on FB
GTM works well with Woocommerce but you need it to track your events like purchases.
@@VertexMarketingAgency that’s why i meed gtm? Can’t i just look at the numbers on Facebook manager?
how can you setup a trigger for a purchase using browser/server if you have a multi order bump/upsell funnel on clickfunnels? I wanted to have the trigger be a button text click and have the next page be the tag of product purchased. However there is variable data and that purchase could contain 1, 2 or 3 products being purchased. just a high level answer would be sufficient if possible
In your case I would use a page URL or data layer event.
Hi. Thanks for a great tutorial! I am having an issue where my PageView events are NOT being deduplicated when I debug. They have the exact same URL, Event ID and action source. They differ in the "user data keys" though. Server pageview event contains: User data keys: Browser ID, IP address, User agent and Browser pageview contains: Advanced matching parameters: IP address, User agent, Postcode. My other events like "view content" and "Add to cart" are depuplicated just fine. Any idea what is causing this?
Tried to disable "automatic advanced matching" - Did not help anything
If you try giving both server & browser the exact same data keys, does it work?
@@VertexMarketingAgency I will try look into how to do that thanks 😊
@@VertexMarketingAgency same event, same bug with same data keys. i.imgur.com/UdF7fna.png
Hi friend, everything was amazing and i almost made everything correct.
But when im trying to see the action of the webside on the server side, doesnt appear the tag activated.
What you think i made wrong?
That is the only part where i have problems
Please helps.
Thanks For so much helps
We downloaded the file but how do we update the account information with our FB account built inside of it?
if i dont wanna have a web tracking but only server tracking to improve load speed how i could do it ? do i event send a transport_url and event id on every custom and standard events from ga4 and facebook ? do i also need put first party collector = true on every custom and standard event from ga4 and facebook ?
You can do that by removing all the Facebook tags inside the web container and only keep your GA4 tags (all the rest stays the same).
@@VertexMarketingAgency transport_url, event id and first party collector = true is needed in every event and config tag ? my setup is working but im not sure if im doing it the right way
Do i need to set up tags and triggers if we have already made specific events through the pixel (browser) and if so, can i simply just copy the code and implement them on GTM?
Yes, you'll need to create your tags and triggers.
unable to download the file that you mentioned in the video
at 23:10, you mentioned only add the 4 As and 4 AAAAs records to your DNS record. Do you add those to your root domain or to your demo subdomain?
DO NOT add those records to your root domain (it will crash your site). Add them to your subdomain.