Getting the transcript
Reading the captions from YouTube. A video nobody has opened here before takes 10 to 30 seconds; this page fills in on its own.
Getting the transcript
Reading the captions from YouTube. A video nobody has opened here before takes 10 to 30 seconds; this page fills in on its own.

Cody Schneider Podcast · @codyschneiderclips
Words
11,793
Runtime
1:00:12
Speaking pace
196wpm
Reading time
49min
196 words per minute, between the 181 median and the 201 75th percentile of 349 measured videos. That distribution comes from the 349-video hook study.
Opening (first 30 seconds)
For the last four months, I have been managing Facebook ads almost entirely through Claude Code and taken that even a step further to program in the logic that I would run an account and have an agent managing that account for me. It's just software in the background. That's researching ads, that's making ads, that's publishing ads, that's turning the losers off, that's promoting the winners. And in this live class today, I'm going to teach you everything that we've learned about building agents that run your Facebook ads. I'm going to talk through the whole setup
98 words, the words spoken in the first 30 seconds at 196 words per minute.
Free, no signup. See how the first 30 seconds hold attention, with rewrites.
Sentence shape
| Measure | This transcript |
|---|---|
| Sentences | 591 |
| Average words per sentence | 20.0 |
| Longest sentence | 154 words |
| Questions asked | 62 |
| Sentences containing a number | 31 |
Most used terms
Filler phrases
1,019 in total: uh 313 · like 230 · um 226 · you know 97 · basically 63 · actually 50 · right? 14 · kind of 11 · literally 9 · I mean 6.
A literal whole-word count of the same phrase list the Prepublish browser extension uses, so a phrase inside another word is not counted and a phrase used in its ordinary sense still is. It is a count and not a judgement.
Run the check on the words above: where attention is likely to drop, with a rewrite for each weak line. The free check shows the scores and the one issue costing the most.
What this transcript is
Every word below is the caption track YouTube publishes for this video, pulled from the video itself and reproduced unchanged. It is not Prepublish's writing, not a summary, and not a re-transcription: it is the video's own published captions. English captions, generated automatically by YouTube, in the video’s original language. Source: the video on YouTube. A channel that would rather this page did not exist can ask for its removal through the contact page, and it is removed.
No Script X-ray for this video: YouTube shows a Most replayed graph only once a video has enough views.
For the last four months, I have been managing Facebook ads almost entirely through Claude Code and taken that even a step further to program in the logic that I would run an account and have an agent managing that account for me. It's just software in the background. That's researching ads, that's making ads, that's publishing ads, that's turning the losers off, that's promoting the winners. And in this live class today, I'm going to teach you everything that we've learned about building agents that run your Facebook ads.
I'm going to talk through the whole setup process, the entire technology stack that you need, and I'm going to walk you through step by step how to get this done. You can take the transcript of this video. You just can give it to Claude and have it walk you through this whole process. If you're new here, my name is Cody Schneider. I'm the co-founder of graph.com. I've been doing digital marketing for the last 15 years of my career.
And with that said, let's get started with today's live class. Let's get started. All right. First off, uh let me screen share and we can jump into my notion document and go through this. So cool. Uh, so the agent I'm going to be talking about today, here's an example of success that we saw from this. So this is a company that we work with. Uh, they're selling uh to financial advisors. We took their cost per lead down from they are averaging about $100 when they started with us, got it down to $53 over a four-week period.
So on the agenda for today, what we're going to be talking about is why you should be doing this, what the opportunity looks like here. Um and then we are also going to be uh talking through the building of the analytics infrastructure. How to research the pain points and the desired outcomes of the target customer that you're trying to sell to. Uh how to actually make these ads like how do you make the static ads? How do you make the video AR avatar UGC variations?
What we're using there and what we're experimenting with. Um what is the Facebook ads marketing API? How do you use it to manage the ad accounts and actually upload all the creative there? um what is the ad account or ad campaign structure that we're seeing be successful currently and then what is the analytics and reporting infrastructure that's necessary to actually give this agent an understanding of like what is actually driving business revenue for you and then the final one as well that we're going to be going over uh is uh deploying this agent into the cloud.
What does that actually look like? How do you actually do that process? and then we'll have a question and answer immediately after that. So on the uh housekeeping for this everything is being recorded uh we will share this uh recording the transcript and this notion document with you after the call and then all the questions that you have feel free to ask those in the chat as the uh the you know presentation or what we talk through goes uh goes along at the end of the meeting or at the end of the webinar uh we will answer as many of those questions as we can.
We got a huge time slot for answering those questions. We found that uh to be one of the things that people are most or find most valuable uh based off of the other ones that we've ran like this. So first off, why does this system work? So uh I just want to begin with the Andromeda algorithm update and what that is. So Andromeda, just for people that are uninitiated, is Facebook ads uh new uh advertising system. Uh it's basically their AI that chooses which ad to show to which person.
Um so this was released uh late last year, but it's kind of just been rolling out and we've seen a lot more impact on this um in uh the first like quarter of this year. Uh the biggest change with Andromeda is that it's your targeting is no longer interest based targeting. So historically, for example, if I wanted to target uh say people that had a mountain biking interest, I would go and select that interest on Facebook as the people that I wanted to get in front of.
In contrast, now how Andromeda functions is the ad creative itself is actually the targeting mechanism. And so the ad that you make and the landing page that you're sending them to, these are all signals that uh Facebook is basically looking at to identify who what which person on the platform should I show this ad to is really like what's going on here. And so when you think about what you're doing from a targeting standpoint, um you're really trying to create ads as much uh you're really at scale with as many hitting as many different personas as possible so that you can try to give Facebook basically the the firepower that it needs to show the ad to the right person.
So this is the whole strategy and kind of uh you know uh reasoning behind this. So with that, um, how we think about the actual production process for this and the core concepts that we're going to talk about today is we're trying to make and publish more ads to the account. We're trying to allow Facebook really enabling Facebook to prospect for winning ad formats. We're going we then are trying to trim the losers. So that what how I think about it personally is it's almost like survival of the fittest, right?
I am trying to uh like test all these different ways and then the survivors live on and the losers you know they get trimmed from the account. You promote those winners as much ad budget as that you can give to those winners. Uh you you do that uh and then you iterate on those winners. So you take the winning ad formats and you you remix those over and over again. So all right, moving on to the first module. Um talking through the infrastructure that's necessary to actually do this effectively.
So, a couple things that you're going to need uh to be able to run this account or ad account um or sorry, run Facebook ads effectively. So, the first thing is Google Tag Manager. So, let's just begin talking through what Google Tag Manager is. Again, I'll go pretty quickly through this, but Google Tag Manager is basically a tool that Google provides for free that allows you to create conversions for whatever that target action is that you're trying to get a user uh to do.
So if you're for example e-commerce um it's that conversion action for a payment. If you're uh a B2B software company uh it is you know that lead conversion action. You can go deeper into the funnel as well and have it server side. I'll talk through that at uh later on in the presentation today. Um but basically what Google Tag Manager why we use this is couple uh couple things. I can install the Google Tag Manager tag once within the uh uh uh uh head of my website and then I can deploy all of my tracking pixels throughout uh or through this Google Tag Manager without having to go and install each of them individually.
And so this is just a way to manage that. It also enables me to create conversion events that are custom firing from my again whether it's a form submission where whether it's a signup action etc. I can send that back through Google Tag Manager to Facebook ads as a conversion event and then this is a way for me to train Facebook on the user action that I'm trying to get it to occur. So again, the funnel that we're thinking about here is that we put ads on Facebook, we send them to a landing page and then uh we have like a signup form or we have a uh payment action or it could be really any user action that you can imagine.
Um you are we can basically uh use Google Tag Manager as a way to be the bridge to track that conversion action. So, what you're going to do uh within Google Tag Manager or really within your application and then connect to Google Tag Manager and this is largely just for the transcript here so that you can give this to your coding agent in the future to help you walk uh you through this. Um you're going to create uh you're going to create um what's called uh a custom event that pushes to the data layer.
Um so a custom events uh and data layer. I'm just going to search this for you to show what I mean by this. So it's basically a uh event that gets pushed to the data layer when the user does that action that we can observe within Google Tag Manager. And this is how we can create these custom triggers that we send back to the ad platforms. All right, so we've got that. Um now, uh moving on to uh the stack from an analytics standpoint.
So, um, it depends on every company again, whether your shape is e-commerce or it's B2B or, uh, it's a service business that's, you know, regional. Um, but the majority of companies are going to be typically the same thing. I'm I'm pulling in data from my Facebook ads. I'm pulling in data from something like Google Analytics or Posttog. And then I'm either connecting my CRM or my CMS, uh, you know, whether that's like WordPress or, uh, Shopify.
Um, and then that transaction data, I'm trying to unify that across all these places so that we understand which ads are actually performing, right? And so when you think about the funnel here, what I'm looking at is I'm looking at the data that Facebook gives us on the conversion. I'm looking at the data that Google Analytics gives us on the conversion. I'm looking at potentially my product data that I'm getting from Posttog.
And I can actually tie all of that together even deeper. like I can see the actual user like why we use post hog a lot of the time um is we can see they came from a Facebook ad initially they left the site but then two days later they googled the the name of the company and they came back in organic Google Analytics is telling us that it's an organic uh uh conversion but in reality it was like multi-touch you know that that occurred um and then the fi so that that's kind of what the stack ends up looking like on the conversions events the The strategy here is you want to start with a conversion action that is upfunnel and then work your way down as close to revenue as you possibly can get.
So just to make that concrete as an example, so say you're a software company um and you are wanting to you initially start with signups as the conversion action that you're sending back to Facebook for your targeting. Um over time you want to move deeper and deeper into the funnel. So uh a company um that we started uh you know forever ago um the the deeper funnel action that we found is if they uploaded a um a webinar we it was a content repurposing software.
So if they uploaded a recording uh immediately after sign up way more likely that they would turn into a paying customer. So we started out with the signup conversion event then we went to the did they upload event and then we went into a payment event as time went on and we had enough conversion actions. So why don't you just go immediately to the payment event? Why why don't we start there? The reason is that you have to have a big enough conversion volume to send back to Facebook to get that training to occur.
And with without enough conversions, you aren't able to to get Facebook to basically learn the type of person that is most likely to actually like turn into a paying customer. So you have to start at that top part of the funnel and then work your way down into deeper events. Now, a mistake I see a lot of people make when they do this process is that they try to track everything with conversion events. You don't need to do that.
Pick it's typically like one one you're going to if you have more than five, it's typically too much. You're just looking for those leading indicators to what it it looks like that you know somebody does before they turn into uh uh like a paying customer. And again, this is the shape of this is different across whether you're B2B, uh, whether you're e-commerce, um, whether you're, you know, local business, but this is kind of the core idea.
I'm trying to, uh, start with, um, a less deep action. Um, and and or sorry, trying to start more upfunnel, then work my way down. And then the other thing uh that is pretty uh ex honestly I it's one of the most exciting things for me or that I that I've been playing or we've been playing with over the last year is using server side conversion events to qualify the leads in real time to send this back to Facebook ads that this is what a good lead looks like for us.
So you hear this all the time. Hey, we're running ads and the lead quality was terrible. Well, the reason is because the algorithm is just focusing on that form submission, not on is the right person doing the form submission, is the right lead doing the form submission. So, how do you solve for this? You use what's called the Facebook ads conversion API. Um, oh, let me just go to this. Uh, so the Facebook ads conversion API allows for you to create a conversion event that is firing from a server. and everything that I'm saying here um you can again just give the transcript to your agent, your coding agent.
It's going to be help it's going to help you be able to figure this out. Um so this conversion API what it allows for you to do is create custom events that qualify the lead in real time. So we just did this for a company um they're um manufacturer um deal size, you know, deal volume or deal speed is like four weeks on average for them. If we had a conversion event for a qualified lead, you know, deeper down in the funnel, we wouldn't start getting data back until four weeks later.
So, how do we solve for this? Well, we did or what we do is we use uh basically um Appify uh has a similar web uh endpoint that allows for us uh to uh basically call uh similar web traffic like how much traffic I don't think uh yeah, this is what I think the one we're using. um how much traffic the site is getting and we can use this secondary metric as is this a good business or not for them. So examples of this if you're say for example you're selling to uh consumers it would be like the zip codes for the address that they put in.
Um if you're selling to u u uh you know B2B it could be the CRM that they're using what's the headc count at the company uh etc. Um, if you're selling to SMBs, it could be how many Google reviews do they have? What's the velocity of Google reviews? All of this can be looked up in real time now. And then you can have an agent give a score to a lead that's 1 to 10. And you can basically qualify that lead. And then based off of whether you know the threshold, say it's six and above, we we say that's a good lead quality.
That's what gets sent back to the fa to Facebook ads. And you can use this in in all channels, not just Facebook. You can use this for Google. You can use this for LinkedIn, all of your paid ad strategies is that you can do this exact same thing. So, all right. Um, coming back to uh the document, just keeping this moving today. We got a ton to get through. So, the next part of the strategy is once you've got your infrastructure set up, you need to figure out what are the pain points and the desired outcomes of the people that I'm trying to sell this product to.
So, how do you do this? Um, I'm going to show you a very simple way to do this. Today we're going to just use perplexity and I'm going to show you how this is possible. So, um you the easiest way to accomplish this uh is you're basically going to scrape Reddit for or you're literally going to prompt this. So, uh scrape Reddit for the pain points and outcomes that somebody would have. Uh I'm just going to use this example today.
Um that's um uh actually let me do this uh scrape Reddit uh for the pain points uh and desired outcomes of someone uh who wants to buy uh AI WordPress uh uh design. So say you have a product uh it's a basically a vibe coding tool for AI WordPress. Um, so this is the way that you can go and find information. So what I'm I'm basically trying to do and I don't know if it did it correctly here. Uh, it did not. Uh, let me go do this.
Uh, let me do just a different prompt structure to actually show you a real example. Um so uh it for the pain points um uh someone has that a product uh that does AI WordPress design solves. And so what I'm trying to do here though just to show you this example is I'm basically trying to take the conversations that are already happening on uh you know in these public forums. This is the best way to source information for the ads that you're going to try to create.
You're not trying to guess what are the pain points and the outcomes that I or the desired outcomes that I'm trying to um you know use for for this ad creative. I'm going to source this from the language that the uh um customer or that these people are already using in these forum settings, right? Um so inconsistent page builders, great way to talk about it, right? Um overwhelming themes and builders, another great solution.
So all of these what you can then do uh is basically take these as source material to to then turn into ads. And I'm going to show you how to make these ads in a second, but this is the way to basically get that first uh information to understand how the market is thinking about what are the problems in the market and how do I become that bridge to solve that problem for the market with the product that I'm providing.
All right. Um so for that actual extraction, I just used uh uh perplexity to show you an example of this. How we actually do do this is we use a tool called XAI. Um it has a um a really generous free tier. You can give this API to your cloud code to your codeex to your cursor and then it can go and do this research for you um uh in the background. So this is how we actually pull that and then again we're using that source material uh to actually create these ads.
So now how do we actually make these ads? Um, and everything I'm describing here, I am co like if you're doing this yourself manually after after watching this video, what you're try what you're doing is basically co-working with somebody like something like cloud code again or codeex uh to do this whole setup process. So why I suggest or we use Google Tag Manager, they have a really robust API. So, a lot of the setup that I just described, you can literally have your your your coding agent go and walk you through that whole setup process.
It'll just tell you what it needs to get this done. And it can do a lot of the setup for you automatically. And that's the reasoning like everything that I'm describing here. I'm not talking about like a human going and doing this. We are uh getting this coding agent to go and do this process for us, do this setup process, build these initial builds. Once we have that system that we're running locally, that is when we're going to go and actually deploy this into the cloud where an agent is running on some type of cadence, whether it's hourly, whether it's daily.
Um, but again, we'll get to that further on. I just wanted uh, you know, just just context orient the conversation for today. So, how do you actually make these ads? You uh, what we're using is uh, Google Nano Banana. Um, specifically what we're using uh, is this reseller called Kai AI. they have it's a single unified API that enables you to uh basically use all of the frontier models in a single place. Um whether it's Google Nano Banana Pro uh GPT image 2 etc.
Um but uh we have found that for the price points and the volume that we're doing nanobanana is more than capable of getting the output. So that's what we use for statics. Um and then for uh AI avatar like UGC style videos uh we are using hen uh plus 11 labs as the voices what we found that the 11 labs voices are way better than the than the um avatar voices that are coming directly out of hen and then we've just started using more and more seedance uh and experimenting with it.
Uh it's just more expensive. So this is why you it's really just a costbenefit analysis of what what you're going uh to uh you know what you're willing to pay on on a pervideo basis. Typically what we suggest um and like what a lot of what we do is we'll use uh a cheaper model to do testing. Once we find winning formats we can go and use these more advanced models. So uh with this though again talking through how do I actually generate you know the actual ad creative for this etc.
I'm using the API key that Kai provides. And then what I'm typically doing is I'm going and I'm finding an ad library of a competitor or somebody else in the industry that I can use as source material. Um, this is if you're trying to solve the cold start problem of like how do I make my initial static ads. This is a way for you to mine that data. So there's an ad libraries on Facebook. There's also face uh Google ad libraries as well.
Uh you can see the ads that uh people are running on Google. Um you can also see this on LinkedIn as well. Um and we're going to do a whole another series about this uh where we're basically uh doing competitor analysis uh based off of the ad libraries of you know your top 10 competitors. How do you aggregate all those ads and then analyze that for your own you know uh basically market research. But uh for today the angle or the strategy here is you can go and you can look at the ad libraries of competitors.
So for example I'm just looking I'm going to bring up uh this ecom company Rise and I can see the statics that they're using and I can use that as uh I can send that in the prompt that I'm sending to KAI um to generate those pieces of creative uh those initials. I can also provide my own brand style guide. So what is a brand style guide? This is your fonts, your colors, um this is uh uh your uh your logos etc. I can provide that as well uh to the image generation model so that it can go and make those statics.
So a lot of what we're using for here is like traditional you know static ads that are uh uh I'll try to find an example to give you a specific you know something like this. This is what this like you know static would end up looking like on the um that we would go and generate as an example. Um the this is uh where we would use Google Nano Banana and then on the video side the uh this is that's where we'd go and do UGC right um the actual video generation. to have that delineation.
All right. So that's how you create the statics. Um for the uh UGC a different format. Um you're basically taking that research that we did previously and then we are using uh this as the for the scripts that we're going to be um uh uh basically generating to hand off to the AI avatar UGC. Um, and again, because we're using the language, we're using the words that people basically uh uh use to complain on Reddit with, what you'll find is that the scripts that you can get out of these are incredible and and being able to talk directly to your customer and resonate with the pain points that they have.
So, how would you write the script? Let's just use this UX complexity one as an example. Um, I would literally go to Claude and I would say something along the lines of uh, you know, uh, I'm, uh, like my product, again, this is going to be a very simple version just to do this live, but my product, uh, is an, uh, AI WordPress, uh, you know, design, uh, company or software. uh write an ad script for UGC um using uh we'll say uh top five hooks uh you can find uh from Reddit in May 2026.
Um here is uh the pain points to write the script based on and again just giving you an example of what this actually looks like. This is when we're actually doing this at scale. It's not a human doing this. This is an agent that's basically writing um uh I don't know what just happened there. Let's rerun that. Um uh anyways, you get the point here. I'm not sure what's going on at the moment, but long story short, uh you're basically using the AI to generate these different script variations.
Then that gets sent to the Hey Gen API um for uh uh the actual uh um uh like creative uh production. Um and we're using an 11 labs voice um within the uh or with the Hunen avatars. We found that this is just the best way to basically you the way to get the best outcomes out of it. Um the best performing creator or creatives uh from Hey Gen or all of the UGC. Um so I would not use any of um like if you go to the avatar section, go to the public avatars uh and go to UGC.
These are the best variations that we've tried. We've tried basically everything at this point and these are always what work and then finding a voice that basically matches the setting of whatever that person is in is the best way that we've seen to do this these uh curations at scale. So all right keeping this moving going back um to module uh four. So got the ability to make ads. Now we're going to talk through great you can make ads at scale.
Awesome. I can make a thousand ads. I don't want to have to go and manually put that into Facebook. Um this is the way that you can do that. Now um so how we are handling all of the account management like uploading ads, managing the ads, uh etc. is all happening through the Facebook ads marketing API. Um so I'm going to talk through more of like how do you actually set this up and configure it in a second. Uh we won't go into crazy detail here.
We could spend the next 20 minutes doing a step by step of this. Um again if you just give this exact thing to your agents um it will be able to go and walk through this process but I'm just going to talk through the high level uh strategically how you're doing this and how you use the API and how you need to use a data warehouse in tandem with that uh for the analysis. So first off um the Facebook ads API uh marketing API is uh basically the bridge for you to go and uh uh uh manage a Facebook ads account. um using a uh a coding agent.
Um and so the uh the big mistake that I see people you you know do when they are trying to initially set this up is they they actually make a public app and they submit it to Facebook. That is not what I'm saying here advocating for here. In contrast, what you're doing is you're getting a developer API token which is super easy, super fast, super quick to set up. Um and that is what you're using to manage your own account.
You don't have to go through like a public app uh process whatsoever with this. Um but this API I can then give it to that my coding agent and it will have the capability um to go and actually manage the account and also upload all of that creative uh to the ad account. So how do we use the API? It's for two things. It's for uploading new creative and it's for managing the account. So what is managing the account? that is turning off losing ads uh you know promote moving ads around between ad sets uh etc.
The uh thing that you do not want to use this API for is doing the data analysis uh with your um with your agent. And the reasoning be uh for that is because you're going to run into problems with uh Facebook ads terms of service and that really the APIs uh Facebook ads marketing API terms of service. If your agent goes and nukes that API with tons of API calls simultaneously, what will happen is that you will actually like there's a potential that you'll get that out business account or that ad account banned um by Facebook and it's not because they're like against a coding agent interacting with it.
It's because you're abusing the API in a way that is against their their toos. And so how do you solve for this? Um, and I see this happen all the time where people are trying to use the API for the data analysis like they'll, you know, they're trying to pull the data for their ad account through the API and then the agent is like, you know, trying to figure out what do I do with a 100 million rows of data and they, you know, it doesn't have a solution for that.
So the way around this is you have to build a data warehouse and a data or data pipeline and a data warehouse. All of the data that we're pulling from from all of these channels, so from Facebook ads, from Google Analytics, etc., that all goes into that data warehouse and the data warehouse is where you're pulling that information from to do the analysis. So the only thing that you're using to touch the API is for that rights to the ad uh to the to the ad channel.
You're using for the analysis, you're only ever using the data warehouse. This is the the best way that we found uh from a safety perspective. We this is how we've done it from the beginning and haven't had any issues. I I know this has been doing its rounds on social media that it's like you use an agent at all with your Facebook ads account, you're going to get screwed there. That is not the case whatsoever. So, okay.
So, how do you actually set up this API um uh or get access to the API? I'm just going to walk through this. Um so, first you need to go to your uh Facebook ads business for portfolio. Um so, that is going to be uh business.f facebook.com. You're going to go into uh the um uh that it where within that business manager on the lefth hand sidebar, you'll see uh um a section that says apps. Uh you'll click into apps and you're going to create a new app.
Uh you're going to have to upload your policy and your terms. Um you publish this app. It's just a developer app. It's not a public app. It's just like for you to have access to. But once you've published that, then you can create what's called a system user. This is going to be again in that lefthand sidebar. I'm just speed running through this, not showing you because we could spend again 20 minutes here and just for the sake of time.
Um, and then you're going to assign that system user with access to uh the developer app to the Facebook page, the ad account that you wanted to manage and potent and the Instagram account that you wanted to manage. Um, after that, it's going to generate a token that doesn't expire that you're going to be able to get this from the system user. Again, this will all make sense as you go through the process. And if you get lost, just give uh your coding agent access or this information and take a screenshot of your business uh you know portfolio business manager um to uh help you like walk through this process.
It'll be able to guide you through this. This is way easier than it actually like you know looks like when it's just written out. Um and then uh you're going to give that token to your agent. That's how it's going to be able to actually interact with that account. Um, and then, uh, you're basically at that point able to publish these ads via the API into the ad account. You can literally just be like, here is the ad set I want you to upload these ads to.
Go, you know, and it will b bulk upload those ads with the creative, with the uh the headlines, with the uh the text uh that you are wanting to be associated with them. So now that you've done that or you have the ability to actually publish these ads, let's talk about the campaign structure and what we're seeing work right now. Super simple. Um it's basically we are prospecting for winning ad formats. Um we are then when we find those winning ad formats, we're moving them into a winners campaign to try to scale the ad budget that's available.
And I'm going to diagram this in a second just to show you what this looks like. Um we are trimming the losers from those adsets. Um and again just to reiterate this, we're basically uh you know finding those winning ads and that is where we're spending, you know, as much money as we can until we start to see uh uh diminishing marginal returns. So what I mean by that is every ad has a shelf life, especially it's way faster in Andromeda, especially in B2B now.
Um and so there's only so much ad budget that you can put to a specific ad before it starts to the the cost per action starts to get too high basically. Um, so to diagram what this actually looks like uh uh from a process, I'm just going to use uh this software TL Draw to create this. Um, so uh how we uh you know what this ends up actually looking like is we have these, you know, three pieces of ad creative that we've made.
Um those via the API, right? Um are then uploaded uh into the uh Facebook ads accounts. Um and then uh we'll let me just draw some arrows here to give some diagram specs. So these are uploaded via the API into the Facebook ads account. Right? So this is the bridge here. Um and then within the accounts what I am doing is I am having uh um so two separate campaigns. So the structure ends up being something like this where it's campaign one.
Uh so we'll call this the testing campaign and under that testing campaign I can have multiple adsets that I'm testing simultaneously. So within those adsets, how we're seeing this work right now um is we have uh five ads within each of these adets um that are basically fighting against each other for the ad budget that is available. And the reasoning behind this again I'll just pull this down um and then the second layer down from this is we have add one you know add two add three etc.
Um, so these ads are fighting against each other within that ad set for the budget that's allotted to it. When I find a losing ad, and what I mean by that is that ad like spent x amount of money, it didn't create a conversion. And and in reality anymore, like honestly, Facebook has gotten so good that it identifies the winning ad for us and all of the budget goes there. Like say we have these three ads and it's going to be like okay this one is the most likely to create that conversion action.
All the budget is going to go to ad two. That ad uh we then are taking and at this point once we've identified and it can the the pace of this can be within two days. It can be uh within a week. It just depends how much budget you're spending and how much uh uh like what's your average cost per action. So, say for example, you have $100 and your average budget or sorry, you're spending $100 a day and your average cost per signup is $5.
You're going to get uh uh way faster uh like understanding of what um uh is a winning ad in comparison to your ad budget is uh you know $100 a day and your average cost per action is $70. But that winning ad that then goes into a winners's campaign. And in that winners campaign, what I'm doing is really a similar structure. Um, but I'm basically having the winning ads compete against each other. And I'm observing the winning ads for when they start to uh arrive at what's called ad fatigue.
So ad fatigue is basically like the audience has seen it so much that it's no longer producing the outcome that we expected, right? That's that's kind of the idea here. And so this is how I'm prospecting for winning ads. I'm finding winners. And then the final process of this is I'm taking those winners and I'm going to go and I'm going to remix those over and over again, finding different ways to say the same winning idea, the same winning concept. put that back into testing.
And so this is how this learning loop happens. And you can get this even more advanced. This is I won't go into this today, but like something we are obsessing about right now is like the entropy of this problem. And so what does that mean? It basically is like if you just let the agent go in this loop constantly, it it makes a lot of the same stuff unless you introduce like new DNA into the system. So how do you introduce that new DNA?
Again, it's coming back to the Facebook ads libraries of your competitors. We're also using tools like uh Viralo AI. They have an API that allows you to scrape um the trending Tik Toks uh and YouTube uh shorts and uh in or maybe I think it's only Instagram reels, Tik Tok uh don't know. Yeah, so actually yeah, it is YouTube shorts as well now. But it basically allows for you to scrape these winning formats from the from their their library.
This is this way to introduce this entropy into the system or solve for that problem where the agent gets stuck, you know, making the same creative over and over again. Um, but with that, once you've, you know, got that system, basically at this point, you've got a way to create ads that you know your audience is going to have an interest in. You have a way to upload and test those ads. And then you're now in a loop where the ads are learning based off of the live data stream that's coming back from the conversion side of the the equation.
So, all right, how do you do the analytics and reporting? Now, um, so again, I talked about this some already, uh, in the API section of the document. You only want to use the API for those rights. So, managing the account, you don't want to use it for the data analytics. Um, that is where it just I'm just telling you now, we've gone down that that technology tree and have seen all the problems that come from it. You can have the agent hallucinating, you can have truncation errors, you can have page nation error, it's all these different things.
Um the the best way to do this is you build this data pipeline and a data warehouse um that uh you're pumping all of your data sources into and then you're giving your agent access to that data warehouse so it can query any information that it needs about your business for the for its context to understand what's actually working. And then when you give that access you can also do a couple really interesting things. You can do conversational analytics, which means that you can interrogate that data, ask it questions, look for trends, and then it also allows for you to build live reporting dashboards based on top of that warehouse.
And so the open- source way to do this um if you're like, hey, I want to build this entirely myself is using a tool called Airbet um as the data pipeline. And then you can use a product called ClickHouse as the data warehouse. So, there's a way that you can go and set this up. Uh, and then basically you're giving your agent access to the Click House warehouse is is what this ends up looking like if you want to build this entirely by yourself.
That is a possible way that you can do it. Um, but with this that basically allows for you to have the analytics, you know, pipeline. And when I think about, you know, the diagram of this, what this actually looks like, right, in practice. So, I have all of my data sources that I'm pulling in from. So Facebook ads, my Google Analytics, my CRM, they're all going via a data pipeline into a data warehouse, right? So this is the data warehouse and within that data warehouse, I am giving my agent access to both uh to query that information, right?
So my agent has access to that data warehouse. it can read you know and basically like do that conversational analytics and then from this and when I say agent I mean coding agent and then from this um this agent then has the API key right uh and that API key is how it's interacting with Facebook ads so it's using this for the analysis and you know this is the brain of the system and then it is basically um uh uh using that data analysis uh to manage the accounts so that's like fundamentally h what's happening under the hood here.
All right. Um so now you've done all this, you've got it run locally, you're using cloud code to do this whole process. What do you do next? So the next piece is you're trying to actually deploy this agent autonomously into the cloud. So all this code that you've written that enables you to do it locally, you need to get this hosted somewhere. So the way to do this um is you you use literally it's just software at the end of the day. all that we're do like what is an agent?
An agent is just like software with a thinking loop with some type of live data stream. That is all that's an agent is under the hood like when you actually analyze what's going on. Um so you can deploy to something like a railway um or any of these like cloud hosting providers um a as a solution again if you want to do this open source entirely on your own. Um the challenges you're going to face if you try to do this on your own um is going to be setting up the data pipeline and warehouse.
We've tried to I've you tried to do this open source uh in the past. It is an absolute pain to manage. It is so much work on the engineering side. Um and then also the uh the basically the server to host your agents. This is also just something that you have to think about and manage when really you're just trying to get these outcomes to occur. You're trying to get this like the uh you don't want to be thinking about the infrastructure and managing the infrastructure.
You just want to be thinking about getting the agents live and having them do the work for you being these virtual employees for you. Um the other piece is then getting the data visible to your agents. It's just very hard to like connect it to your data warehouse and do it well in a way that um doesn't expose your data. Also, if you're at a large company and you're trying to do this and you go and approach your CTO and you're like, "Hey, uh give me access to your our snowflake database so that I can build an agent on top of it." There's a very strong like, you know, likelihood he's going to say, "Absolutely not.
I'm not giving you that access. Um, and then also uh with all this you need the system has to evolve. It has to basically like progress as time goes on as uh the market changes. So as you see Facebook ads evolving etc. You have to basically um you know update the agent. So this is what we do at Graph. Uh we basically everything that I just talked about today this is what we go and build for companies. Um so we deploy this exact agent in five business days.
Uh we also implement agents for Facebook ads, for Google ads, for SEO, AI, search, social media management, cold email, uh you name it, we've probably done it. Um and then we also do the uh the reporting dashboards, etc. And we build out that whole infrastructure piece. So the data pipeline, the warehouse, and the place to actually host the agents. So we uh just were doing this for deployed service. We uh uh just this last week started rolling out self-service where we basically give you all the infrastructure to do that deployment.
So your local agents that you're running right now, you can deploy into the cloud based off of this live data stream and onto a server that we provide. This is also that's there. With that said, thank you for coming today. We're going to open it up to Q&A. I appreciate your time. So yeah, Will, do you want to uh fire off some of the questions that we got? >> Yeah, I think we've got one uh first that I know we get quite a bit uh on the calls we take.
So, anonymous attendee says is asking, "What is the minimum ad budget you think you'll need to get enough data for a system like this to be successful?" >> Yeah, so it really depends on the company type. Um, but just to throw out some numbers for you, like we have a business that's selling to SMBs um that uh their average cost per lead is around $30. So, you know, that that's the number that we saw. Um we uh have another business um where they're basically the the conversion action uh is uh for demos booked.
Uh their cost per demo book is about $80. Um we uh have a like a productled growth company that's just like going for signups. Their cost per signup we've gotten it down to like $ 250 which is awesome. Um it really just depends on the the customer type uh you know the the the person that you're selling to. What I typically suggest with people um is if you're like a local business, you do $30 a day, you can typically get enough data over a twoe period to see what's working when you have the set up appropriately.
If you're going national, $100 a day on an ad budget, um you can typically get this, you know, off the ground and moving. But it really just depends. The more you spend, the faster your learning cycles are. Um but there's kind of this like you know you're fi trying to find this equilibrium of especially when you're solving that cold start problem that zero to one where you want to spend enough to get data like get signal um but not spend so much that what where you're just you know burning budget but that first period all you're looking for is like some signal once you find hey this winning ad format is working then you go back to the drawing board you remix those ads and then go in that cycle over and over again you know where you're basically improving off your best performers.
So yeah, other questions I can try to answer. Will >> Yeah, we got a couple a couple interesting ones in here. Um Anthony is asking for the ad structure, this is kind of when you were going through the the winners campaigns and such for Facebook ads. For the ad structure, is the campaign event the same between campaigns, i.e. form submit for both? >> Yeah. Yeah. So you can do that. It's the same campaign or same uh structure.
Um, we have done this in the past though where it's like we're basically prospecting for winning ads with signup and then we're putting them into like the winners campaign is a deeper conversion action. Say for example like a demo booked or like an actual payment. That's something that's totally totally works. We've seen that work. Um the uh I I've actually like suggested that to a decent amount of the companies that we've worked with, especially in the early days where we're just like, "Hey, we're just trying to get some signal of like what ad creative is actually going to function." again that that's the the higher funnel action will get you, you know, basically pointed in the right the right direction or orientated and then from that you can go to that deeper conversion action.
Um but yeah, you can have that that split. We've also ran campaigns side by side where it's like we have a demo event as the booking. Uh we have like a higher funnel, you know, maybe it's a form submission as as the event and same ad creative like competing against each other. Um we haven't seen a huge discrepancy between those of like the quality that comes from that. Um, with that said though, the value of somebody that books a demo that's just like a way higher intent that they're like actually buyer ready.
So, it just it depends on your your go to market motion really like is it very if it's very sales driven, I would probably lean into book a demo um like over the long term. If it's very uh like almost self-service productled, you know, you're you're basically trying to, you know, optimize for that signup and then for some type of user action within the product that sends that signal back to the ad platform. So yeah, other questions I can try to answer, Will? >> Yeah, let me see.
I think this is a good one. So, uh, Stephen is asking, um, if you're doing this on a smaller scale, do you really need the agent component or can you just deploy the ads and run iterations yourself? >> Yeah. Yeah. Yeah. I would you could 100% deploy the ads. Um, it's just a time consuming thing. Like I I make this sound very easy like, oh, cool. We're going to make 10 ads and we're going to upload it to Facebook ads. that that's probably in reality like four hours of work like to be totally blunt with you.
Um like it I would still suggest like even if you don't do the agent that's deployed like a full agent right that's managing the Facebook ads entirely in the cloud at least have the a Facebook ads API key and these other elements set up like with your local daily driver whether that's cloud or codeex etc. so that it it's just going to be so so so much less pain to actually upload the ad creative which is like a huge time suck and manage the account.
Like I can't tell you how many times uh especially when we're you know initially training people or like showing people the ad platforms like Facebook ads is absolutely like one of the most horrendous pieces of software that's ever been built. Um you know it and Google ads are both just notorious for this. They're just complicated for the sake of being complicated. I think it they largely do it just because it makes people spend more money.
That's besides the point. Um we're not going to put on our tin foil hats here, Will Knight. But I won't. Um but the uh uh what what this if you're just like if it's small budgets, I I would say like probably just keep it in your your your local driver. Um once you've got that system working and you're like, "Hey, this is operating." The last thing you're going to want to do is like keep managing that on a daily C. It's not like you just turn this on and it runs, right? like this is like work that has to happen continuously.
Um so that's why at that point that's where you can transition into having this like you know fully autonomous solution. So other questions I can try to answer will >> um yeah so I there we go. Um David asks should you add should you do lead scoring after the lead becomes a client like in three to four weeks later? >> I so you know in a I've always found that that that doesn't work well. Um, and the reasoning for that is it's largely just like it's it's hard to send that action back to Facebook.
Now, there's some people that swear by this where they use like HubSpot's deep funnel conversion optimization where it's like somebody moving through a pipeline and as soon as they get moved to closed one, then it sends back a conversion event, you know, back to to the ad platform. I have friends that that's like what they do and they swear by. I try to have typ typically faster learning cycles just because I have found that uh like you know waiting four weeks to know what's going to happen if that's what your sales cycle looks like.
It's just way too long. What you can do though is on the closed one leads you can uh basically like map the shape of what their that company looks like and then use the shape of them as like a proxy metric for that you know in real time lead scoring. So to give you an example of this, again we did this for this manufacturing company. They gave us like here's their, you know, 2900 best customers and then we looked at again their traffic to their website, the branded search volume, like all of these secondary like business metrics that are typically uh signal like you know that this is actually a real business, like a real company that that is doing well.
And we could actually make, you know, basically create a um a shape of like this is what a good customer looks like, right? here is the way that we can like actually see what a good customer looks like. And then from that, we can have that conversion action be based on that. So, we're using our best customers, our best clients as the way as like the map to to to score that lead, if that makes sense. So, um it's a little bit of a confusing way to say it, but it's basically just take what are your what does the shape of your best customers look like?
How do you find, you know, secondary data around them that shows like what they are as a company? like maybe it's the services they provide again maybe it's the Google reviews they had etc and then from that you build that into that conversion action that's that server side conversion again event that's firing as the lead comes in right so if you're when you think about it um it's like this lead provides their information uh you know you go and you look up all this about that company uh and then you know literally this happens within seconds where it's it's giving a binary score of yes no is this a good lead rather than us you know having to wait four weeks after that lead closes.
So yeah, other questions I can try to answer, Will? >> Yeah, I think this is a good one. Um, Irene says, "Do you have any clients in the cosmetic surgery space?" >> We don't recurrenly in the cosmetic surgery space. Um, we largely so far have been working with uh B2B uh companies. That's kind of been our our specialty. We've done a little bit of work with ecom um and seen some results there that are awesome. Um again, a lot of their problems is the creative production side.
And then we've done some work also with like consumer applications and seen that as well. we're just starting to step into like regional businesses, like we just have a handful of companies that we're starting to work with. Um, but on the cosmetic side, this is something that's totally possible. Anything that's very visual, I could see this like, you know, this will work very well. Like, uh, I've done work in the past, for example, for um, uh, you know, stuff in the med spa space, and the beauty space, you know, anything that has that visual element to what they do, uh, it ends up working, you know, incredibly well.
So, yeah. Other questions I can try to answer, Will? >> Yes. Let me see here. Um, I think this is a good one. Can you use any uh Can you use the Facebook ad MCP for any of these steps? >> Yeah, you can use the MCP. Um, the only thing that I found with the MCP is that sometimes that all like the endpoints that are available um they aren't like first off like all the endpoints, we don't see them there. Um, and then second, uh, the like the scale that we're talking about sometimes it can just like functionally break.
So, we found that just going straight to the API, uh, can be a more stable and just like it's just a more robust way to do this. Um, don't quote me on this, the last time I used the MP MCP was like four weeks ago, but there was only I think it was like a handful of endpoints that you could actually hit through that. Uh, in contrast, uh, like with the API, it's, you know, it's it's basically everything that you could do in the UI you could do through the API.
So that's why we lean towards that more and more, you know, and and also suggest that to everybody that we're working with. So I think the fa that Facebook does have a CLI now, which is basically like, you know, a way for uh your coding agent to interact with it via the terminal. Um we haven't spent a lot of time with that. We found the API to be like more than capable of doing this. But there is a way to do that with the CLI.
Now it's like a something that they released recently, but again, I don't have as much experience with that. So I don't want to talk directly to it with and just you know spew spew some BS but yeah other questions I can try to answer. >> Yeah I think this is a good one just to kind of put things in perspective. Um anonymous attendee asks how feasible is it that I can do this on my own including the data warehouse? >> Um I have budget for to outsource um essentially what they're asking is should I expect this to go smoothly or I'll have to learn a ton of debug? >> It's it's going to take you a lot of time and be totally blind.
It's totally possible. You could totally build this. Um, I mean, just to put like time frames on it, it's probably four to six weeks um to get it like enterprise ready, right? Um, if you're like, "Hey, I just need to build this myself and it can be kind of, you know, monkey patched." Um, the like maybe the timeline is like two weeks to actually get it into like a usable state. Um, but to actually have it like in a fully ready version of this, uh, it's it's like it is going to take that time.
And it's largely just like the amount of tokens that are necessary for this. Totally possible. I don't want to like defer like deter you. But um it's kind of just you know with every business decision it's like time is the most limited resource we all have. Um do you want to invest that time? You know if you come from like this token abundant mindset right then it's like okay we that doesn't really matter. But um that you know the contrast like for example for us literally in 10 minutes you can have everything set up and live right in in in contrast to you're going to be you know call it hog wrestling you're just hog wrestling the coding agent to basically like get the data pipeline warehouse solution all all implemented.
So yeah other questions that we can try to answer will >> yeah I think this is a good one. um how is this similar or different to Hyros I'm hope I'm pronouncing that correctly or other thirdparty attribution platforms. >> Yeah, so on their side they're I I haven't looked at Hyros in a while but from uh historically how I understand them is they're basically like validating the attribution um from all the ad platforms uh that you're sending traffic from.
So like Facebook is saying the number is X. uh you know Google Analytics is saying the number is Y and then Hyros is like no it's actually Z this is the way that we should be waiting it and why you would use a tool like that traditionally in the past is you would basically be trying to um like h you're almost auditing the ad every ad channel is going to try to take like every conversion and be like that was our conversion right because they they want you to spend more money there so this comes into attribution of like first touch last touch uh you know blended attribution We this is a whole other can of worms.
Um it is an unsolvable thing in my experience. How does marketing actually work? It's like we I describe it as you're trying to build digital gravity. So I'm trying to build like mass on the internet and get more people in rotation with the brand. Um but with that said, I I know Hyros has some new AI functionality where it's like managing the accounts. Um I think it's it's I I don't have a ton of uh you know detail or understanding on on those specifics and the u the core piece of this is like it just depends.
I they I believe only have like a handful of data connectors. The whole reason that you want to do this is you can get all of your like literally all of your business data into a single location which enables you to track not just the single channel but how is it affecting like the entire you know rest of the business. But yeah I I think that this is where everything is going though. will say that like there all like these platforms this is where the direction is headed where it's like some type of autonomy on the the the media management side um is coming for everyone also the channels are trying to introduce this like I just had a call with Google yesterday and their team was sh telling us basically like they're you know they're trying to build this internally like why aren't they you know why aren't we using their internal system and the reason is it's it's misaligned incentives is what it comes down to a lot of the times where um like you know that platform wants you to spend more money and you want the ad platform to get you a cheaper cost per action, right?
So, it's just two different goals that they're trying to get out of it. But yeah, we got time for one more question. Uh what's the last one? >> Um last one is from let me scroll up a little bit uh from Stephen. He says why is the data aggregation and agent calling uh said data so hard? Can you use something like superbase to store that data? Can you give us a little bit more context on the snowflake reference and uh why would you need that?
Is it for previous ad data? >> Yeah, so you can use uh so superbase is technically a Postgress database. So it's not built for querying data is the biggest challenge. So like if you did like say 100 million rows in a superbase database and then tried to query it in a way um that like I mean it could take like literally minutes to get the the data back for you. In contrast, when you use something like ClickHouse, it could be in, you know, milliseconds, right?
For the same exact query that you're writing, it's just structurally like fundamentally different. You can 100% potentially like pipe that data into Superbase like via for example the Facebook ads API like the this is a hypothetical. Um the you could pull that um you'd have to like build the system so that it's uh observing rate limits. you'd also have to like manage the duplication because it gives you like chunks of data simultaneously uh or chunks of data that have overlapping um and then you would also have to have it where it's like I you know for example Facebook ads alone it has like 42 tables and like you know hundreds of columns and within each of those tables so you have to start to think about the data like the the warehouse infrastructure or the Postgress database infrastructure to be able to facilitate all this um it's it's a probably an easier way like again just going to that data pip pipeline warehouse solution um because it's just going to solve a lot of those challenges that you're going to face if you try to do this on like just like a a Postgress database or a database that isn't built for this type of data analysis work.
So, ClickHouse um is, you know, something that's comparable to like a snowflake as an example. But yeah, guys, I got to jump uh unfortunately, but thank you for your time today. If you want to set up a call with Will and I, uh please go to the graph.com and you can schedule a time there or reach out to will.com. we'll find a time for you and super excited to work with you in the future. Thanks for joining. We'll send a recap or send this video out to everybody uh who was on the call.
Thanks again. Yep. Thanks everybody.
The words are the caption track's own and nothing is reworded or re-transcribed. Paragraph breaks are placed between sentences so the text reads as prose.
Free tools for your own script: paste a draft and see where it stands before you record it.
Paste your draft and see where viewers are likely to drop off, with a rewrite for each weak line.
Paste the first 30 seconds of your own draft for a hook score and rewrites.
Check your draft against YouTube's advertiser-friendly guidelines before you record it.
Read this channel's public videos and transcripts, and download a writing brief for it.