Full transcript
Clone Winning Ads with AI
0:00What if you could take one ad that
0:02already works and instantly clone its
0:04success for every audience you target? A
0:07member of my school community asked me
0:09exactly that. They have a couple of ads
0:11that are absolutely crushing it. So,
0:13they reached out to me to see if we
0:14could use AI to remix those ads that are
0:17already winning for different niches.
0:19I've never built an automation like this
0:20before, so we're going to sit down
0:22together and build it step by step from
Building Client Automation from Scratch
0:24zero. We'll feed in a winning ad. Then,
0:26we'll have AI analyze the creative
0:28direction and the copy. And then we're
0:30going to have Nano Banana regenerate
0:32different versions tailored to different
0:34audiences. So say we have an image for
0:36photographers. We'll change it around.
0:37So now it's targeted to graphic
0:39designers. Same style, what's already
0:41working, but a brand new message. By the
0:43end of the video, you will have a
0:44working automation where you can turn a
0:46single ad into 10 or 100 new versions
0:49without hiring a graphic designer and
0:51without touching Canva. If you're new
0:53here, my name is Duncan. I've grown my
0:55AI agency to over $10,000 a month and
0:57I've sold my automation workflows to
0:59thousands of customers. If you want to
1:01get access to the automation that we
1:02build today, I also run a school
1:04community where I help people like you
1:06learn to build and sell AI automations.
School Community Blueprint Access
1:09All you have to do to get access to the
1:10template is head over to the link in the
1:12description and click join. So, before
1:13we hop into build mode, I just kind of
1:15want to walk through how I'm thinking of
1:16approaching this task today. We can
1:18treat this like a real client project. I
1:19like to always think through all the
1:21steps cuz I find it's really, really
Planning the Automation Workflow
1:22helpful once you go to start to build.
1:24and we're going to cover everything you
1:25need to know today. How to connect to
1:27air tableable, how to use chatpt, nano
1:29banana, all the fun stuff. So, the very
1:31first thing we're going to do, we're
1:32going to start by kind of just like
1:33starting to build out our air table
1:35database. And this is going to be used
1:36as the trigger for our automation
1:38workflow. The way I like to work is I'll
1:40kind of work in pieces. And the more you
1:42get into automation, you'll find
1:43yourself doing this more and more kind
1:44of bouncing back and forth between like
1:46Air Table and NN and ChatgBT and all of
1:48these things. It's not one straight
1:50line. So after that, we're actually just
1:52going to hop over to the school platform
1:54to just quickly research like the type
1:55of people who are on school. Our goal is
1:57to get people to actually create their
2:00own communities on school. Next, we'll
2:02probably hop over to chatbt to like
2:03write our analysis prompt. Basically,
2:05the prompt that's going to analyze the
2:07images for us to give us like the copy
2:09and the creative direction and all of
2:10those things. Then once we have that, we
2:12can kind of pull in our different
2:13audiences from here to Nanobanana along
2:16with the reference image and kind of
2:18this analysis prompt. And we'll also
2:19create a prompt to then like tell Nano
2:21Banana how we want it to remix that
2:23image. What's really cool about this
2:25system, it's very very scalable. Like
2:27we'll be able to create, you know, one
2:28remix or 10 or 100. It's really
2:30powerful. And then once we have all the
2:32images, of course, we want to store them
2:33back into the Air Table database for
2:35review, hand off to the client. They can
2:37pick their favorites. They can run ads
2:38with them. They can AB test. They can
2:40see what's working. They can come back
2:41to us for feedback, and we can make
2:42changes. So, this is sort of how I'm
2:44thinking of approaching it. So before we
2:46get started, let me just show you real
2:48quick that these are the ads that I was
2:50handed, right? So here's an ad for
2:52school. Turn your passion into a
2:53community, learn together. What topics
2:56can you teach and get paid for on
2:57school? Some of these things, hobbies,
2:59music, money, etc. One thing you notice
Reviewing Reference Ads
3:01they have in common, like a lot of them
3:02have start your free trial. They have
3:04the school logo. So I'll go ahead and
3:06download that because we'll probably
3:07include this. And the last one is just
3:09kind of like this wanted poster. So,
3:10we'll probably use chatbt to like
3:12analyze what's working on these ads like
3:15thematically or the way that we like
3:16talk about things. But, this is a good
3:18start just so you guys kind of know what
3:19we're working with here. So, the next
Setting Up Airtable Database
3:21thing we're going to do, step one, we
3:22just want to like store these ads in Air
3:24Table. So, we can start creating our Air
3:26Table database to store everything. So,
3:28I'm just going to come over to Air
3:29Table. I'll leave a link in the
3:30description where you can sign up
3:31totally for free. And I'm just going to
3:33come in here and I'll do create and
3:35we'll create a new workspace. We'll just
3:36build this all from scratch just to get
3:38started. And why don't we just call this
3:40school ads because that's what it is.
3:43Always good to label everything. Table
3:45one. Why don't we just go ahead and call
3:47this reference ads. And I'm probably
3:50going to have just like another table at
3:51some point just for the logo itself. We
3:54can do that in a second. And so I think
3:55all we need here, well, we can just go
3:58ahead and say add one. We can give these
4:00names if we want, but you know, I
4:01actually kind of think it doesn't matter
4:02in this case, but you do kind of need to
4:04have a main field here. I don't need any
4:06notes. I don't need an assigne. I can go
4:08ahead and I can kind of delete all of
4:10this stuff. It's always good to have a
4:11status field. I find it's good for
4:13feedback and things like that. So, maybe
4:14we'll keep that in there. Uh like if we
4:16were to pass this off to a client in the
4:18end and say, "Hey, here's the system.
4:19You can buy it from me for $3,000 or
4:21whatever and do this yourself." Um I'll
4:23show you how we can incorporate this,
4:24too. So, we have these attachments here,
4:26and what I'm going to do is I'm just
4:27going to go ahead and I'm going to see
4:30if I can make this smaller so you guys
4:31can see what I'm doing. I'm just going
4:33to go ahead and I'm going to take add
4:36one. And let's just go ahead and drag
4:38this in here.
4:40And I'll take ad two and drag this in
4:42here. I'll take ad three. And I will
4:45drag this in here. Okay, cool. So, we
4:47have our ads all ready to go. And we can
4:49change the status. Maybe we'll say,
4:51yeah, I like in progress and, you know,
4:53finished or something like that. Okay,
4:55great. And this is fine. This is just
4:56kind of like for feedback. The other
4:58thing I want to do is I just want to
4:59have a place to store the school logo.
5:01So, what I'm going to do is I'll just go
5:03ahead and duplicate this table. We don't
5:06need to duplicate the records. I'm just
5:07going to call this school logo for
5:09reference. Great. And we're just kind of
5:12doing all of the setup here. And I'll
5:13just go ahead school logo. That's fine.
5:15And we don't need to ask. Doesn't
5:17matter. So, let me just go ahead and
5:18find the school logo just so we have it
5:20cuz I think we might want to insert this
5:22into the images. So, let's go here. I'm
5:24going to go ahead and save this image.
5:26Call it school logo. Great. Come back in
5:30here. Go ahead and just go ahead and
5:32drag the school logo into this
5:34attachments field because we'll probably
5:35bring this over to Nano Banana 2 so that
5:37it gets our logo correct. So this is a
5:40good start for Air Table just so we know
5:42that we have access to all of these ads
5:45and then again at the end we'll probably
5:46make one more table over here to store
5:48all the final pieces. I'll have to think
5:50through how exactly we want to do that.
5:52Like it may actually be beneficial to
5:54create a separate table for every single
5:56ad, but let's cross that bridge when we
Researching Target Audiences
5:58come to it. Cool. So actually we have
5:59done step one in here. Let's go ahead
6:02and let's check off that thing is huge.
6:04Let's go ahead and check off uh step
6:06one. Great. Next thing we want to do is
6:08we want to quickly research the school
6:10audience. So I'll come over here. This
6:12is my community on school. Again, I'll
6:13leave a link in the description if you
6:14want to pop in. Um and we can come over
6:16here to the schoolers community. Anybody
6:18who has a community on school gets
6:20access to this. And basically you can
6:21come in here and you can see like who is
6:23performing really well. Right? This is
6:24the hobbies category. There's a music
6:26category. There's money, spirituality,
6:28tech, health, sports, self-improvement,
6:30and relationships. So, these are all of
6:31the categories that you can kind of like
6:33have communities on. So, this is really
6:35interesting, right? So, this is just
6:37kind of good to know. We can see like
6:39kind of again who our audience might be.
6:41Like, this person is making, you know,
6:43$2,500 a month just talking about
6:45football. This person is making $21,000
6:48a month, you know, teaching people
6:49photography. So, super super interesting
6:51here. So, what I'm going to do is I'm
6:53just going to open chatbt and I'm going
6:55to take a screenshot of just these
6:57categories just to see what it comes up
6:59with.
7:00And I'm going to drop this in here and
7:02I'm just going to say based on these
7:04school community categories, who are
7:07like 50 possible candidates to start new
7:12communities? Things like photographers,
7:15tarot, AI enthusiasts, like you name it,
7:18etc., right? So, just kind of see like
7:19who are the type of people we might be
7:21trying to target with our ads. So,
7:23again, I want to walk you through the
7:24process of how I'm going to approach a
7:26problem like this. Then at the end,
7:28you'll see how we weave all of the
7:30pieces together. Okay, photography.
7:32Okay, this is cool, right? So, actually
7:33broke it down into the categories.
7:35Photography, drawing and illustration,
7:36music production, songwriting, money,
7:38personal finance, spirituality,
7:40astrology, an enthusiast, no code
7:42builders, indie hackers. Okay, this is
7:44super super cool. This is great. Can I
7:47just copy all of these? And I don't know
7:48the answer to this. Can I come over here
7:51and just do and you know what? Why don't
7:52we just duplicate this because it's
7:54going to have most of the fields we
7:55need. And can I just do this? Expand
7:58table so that all the pasted cells will
8:00fit. Cool. This is cool. Let's just see
8:03if I can clean this up here. Remove the
8:05numbers and categories. Now just give me
8:09the items on separate lines. Let's just
8:12go ahead and see if we can clean that up
8:13so we can really easy copy and paste
8:14this over. That's the goal. Cool. Can I
8:16copy these? Come back over here now.
8:18Paste these in. Expand the table. Great.
8:20So now we have all of our potential
8:22categories in here. This is awesome. I
8:25can go ahead. I can delete the
8:26attachments field. I can go ahead and
8:28delete the status field. And we'll just
8:30go ahead and we will name these
8:31audiences. These will be our target
8:33audiences. Great. Cool. So now we've
8:35gone ahead and we've researched school
8:37and the audiences. So what we can do now
8:39is we can actually hop into NADN to
8:41start building out the automation
8:42workflow and using Chat GPT to do a
8:45little image analysis. Okay. Okay, so
Building n8n Automation Workflow
8:47here we are inside of NADN and right
8:49here we're going to click the big plus.
8:50This is what's called the trigger step.
8:52This is the thing that starts off your
8:54entire automation and I want to set
8:56ourselves up for success in the long
8:57term cuz I know how I'm going to do
8:59this. So normally what you might do here
9:00is just trigger this manually by
9:02clicking execute workflow. But I want to
9:04set up a way that we can actually
9:05trigger this from inside Air Table. So
9:08what I'm going to do is I'm just going
9:09to type in web hook and we're going to
9:10trigger this with a web hook. Now this
9:12is a little bit more of an advanced
9:14topic, but it's super super powerful.
9:16So, let me show you how this works. So,
9:17first things first, I'm going to hop
9:19into Air Table and we're going to create
9:20a button. So, I'm going to click the
9:22plus here and I'm going to type in
9:23button. And this button is going to
9:25allow us to start NADN from right here.
9:28Why don't we just go ahead and say
9:29create ads and we can just name this
9:31create.
9:33And I like this blue and white. This is
9:35great. And so here, this is the URL that
9:37this is going to open. And right now,
9:39let's go ahead and just use this test
9:41URL. So, I'm going to go ahead and copy
9:43this. If I come over here, I can do
9:45quotes and paste this in. Now there is
9:48one more thing we need. We need to do
9:50question mark record lowercase R capital
9:54I lowerase D equals. And so now what
9:57we're doing is we want to pass the
9:59record ID because every single row in
10:01Air Table has its own record ID. We want
10:04to pass that into NAD. So I'm going to
10:06do space and I'm going to say and and
10:08I'm just going to say record ID. And you
10:10can see here that this pops up here. I'm
10:12just going to close parenthesis and I'm
10:14going to go ahead and click create
10:15field. This takes a second to run. So
10:17now I have this button here that's going
10:19to open up this web address. So what I'm
10:21going to do is I'm just going to do
10:22listen for a test event. If I come back
10:24in here, let's just try this with the
10:26first one. And actually I'm going to try
10:27this with the second one cuz it's a
10:28better aspect ratio. It's square. Cool.
10:30And we can say workflow has started,
10:32which is awesome. If I come back in
10:34here, you can see, let me switch to the
10:35schema view, that we actually have all
10:38of this information coming in from Air
10:40Table. And what we really care about is
10:42this record ID because now we're going
10:44to be able to get all of the rest of the
10:46information. This is awesome. So what
10:48I'm going to do here is I'm just going
10:50to click P for pin. And so now we have
10:52that data saved so that we can go ahead
10:53and work on the rest of the workflow
10:55without having to come back to Air Table
10:56for a little bit. Cool. I'm going to
10:58click save. What we're going to do now
11:00is I'm going to go to Air Table. Come in
11:03here and I'm going to do get a record.
11:05If you've never connected to Air Table
11:07before, let me show you how to do it.
11:08It's really, really easy. All you want
11:10to do is come into credential to connect
Connecting Airtable to n8n
11:12with. Come down here and go ahead to
11:14create new credential and we need an
11:16access token. So if you come over to air
11:18tableable, just head back to
11:19airtable.com. Come into your little
11:21profile picture and you want to go down
11:22to the builder hub.
11:25You can open this up. On the lefth hand
11:27side, you want to make sure you're in
11:28personal access tokens. We can go ahead
11:30and do create tokens. And I can just say
11:32like school ads test. And there's a
11:34couple of scopes we want to add. So I
11:36want to add the records read. I want to
11:39add the records right and I want to go
11:41ahead and add the bases read and that's
11:43all we need from here we want to add all
11:45resources so now we have access to all
11:48current and future bases in all current
11:50and future workspaces so this basically
11:52now gives this access to everything you
11:54do in air tableable can go ahead and
11:56click create token we can copy our token
11:59come back over to nadn do this and we
12:02can just name this school ads test great
12:05click save we are all connected to go
12:08with air table and you actually never
12:09have to make this connection again
12:11because now you've tied this to all of
12:12your records. Super cool. So, we're
12:15getting the record from the list and I'm
12:17just going to go ahead and type in the
12:18base is school and the table in our case
12:21is going to be the reference ads and the
12:23record ID. Now, what we can do is we can
12:25just pipe in this record ID from the web
12:28hook. And if I click execute step, this
12:31is going to pull in all the information
12:33from the record. Here's the name of the
12:34record. This is just add to. And the
12:36thing we mostly care about is this URL
12:39because now we're going to pass this URL
12:41to chatbt to actually analyze the image
12:44for us and tell us what's in it and
12:46what's working. So I actually already
12:48have this really great image analysis
12:50prompt, but I do want to adapt it for
12:52our specific use case. So I'm going to
12:54just copy this. It just says, "You're an
12:56expert AI creative analyst. Your purpose
12:57is to analyze an input image and
12:59deconstruct its visual and thematic
13:01elements into a clear, structured
AI Image Analysis Prompt
13:02report." So I'm just going to go ahead
13:03and copy this. Right. So I'm back inside
13:06of chatbt and let's figure out what I
13:08want to ask it. And I think it's really
13:09helpful if sometimes like it's helpful
13:12just to use dictation mode in chatbt.
13:14It's a lot faster and you can kind of
13:15ramble and it generally understands what
13:17you're trying to say. So the first thing
13:19I'm going to do is I'm going to go ahead
13:20and I'm going to upload the three images
13:22that I have that are ads. They're
13:24somewhere down here. It's these three.
13:26I'm just going to upload these in and
13:28I'm going to say I'm giving you three
13:31ads for school and I'm also going to
13:34give you as an input an analysis prompt
13:37for an AI agent to analyze images. And
13:40what I want to do is I want to adapt the
13:43agent prompt to make sure it's specific
13:45for analyzing this type of ad creative.
13:49So I'm just going to paste in the prompt
13:51right here. I'm going to click check.
13:53Chat GBT is going to go ahead. It's
13:55going to transcribe my message and then
13:57all I'm going to do is I'm just going to
13:59go ahead and paste in the the prompt
14:01that I already had. So, let's go ahead
14:02and see how it's going to make changes
14:04to this prompt for us. So, this is
14:05really really specific. Cool. You're an
14:07expert marketing creative analyst
14:08specializing in school ad creatives.
14:10Your purpose is to analyze an input
14:12image and deconstruct its visual
14:13structural and thematic elements. Cool,
14:15cool, cool. Report structure. Write a
14:17single paragraph summarizing the image.
14:19Core subject setting. the medium, which
14:23is basically like the style of it, the
14:24lighting, the mood, all of this stuff.
14:26Cool. And then here, list and describe
14:27every element, summarize the ad's main
14:30marketing idea. This is great. This is
14:32super helpful. So, what I'm going to do
14:34now is I'm just going to go ahead and
14:36copy this because I know we're going to
14:38need it. Let's copy this. And now, what
14:40we can do is we can go back in. We can
14:43go ahead and click the plus. And I'm
14:45going to say open AI. What I want to do
14:47is go to OpenAI. And I'm going to come
14:49down here to analyze an image. If you
14:52want to know how to connect to OpenAI
14:53because you're going to need to connect
14:54with your credential, you just go to
14:56create new credential. You can come over
14:57to platform.opai.com.
15:00Go ahead, create your account if you
15:01don't have one. Come into settings. Go
15:04into API keys. Click create new secret
15:07key. And we can just call this school
15:08ads. Cool. Go ahead, select the default
15:12project. Do create secret key. So again,
15:14there are some tedious steps, but again,
15:15once you set this up once, you don't
15:16have to do it again. You would just copy
15:18this API key and go back into NAN and
15:21paste this in here and you have a new
15:23connection all ready to go. I'm just not
15:25going to do it because I've already done
15:26it. This is great. I'm just going to go
15:27ahead and analyze this with GPT4 latest.
15:30This is cool. I'm going to pipe in this
15:32URL here so we have access to it. And
15:34the text input, I'm just going to go
15:36ahead and paste in our prompt here. And
15:38simplify output is good. So I'm going to
15:40click execute step and let's see what we
15:42come up with. The image is a promotional
15:44ad for school highlighting the wide
15:45variety of topics users can teach and
15:47get paid for. It has clear upbeat tone,
15:49etc., etc. And so we can come in here
15:51and we can just see the main focus is
15:53the headline. What topics can you teach
15:55and get paid for? Followed by a topic.
15:57Okay, this is cool. So this gives us a
15:58really clear description of the elements
16:00of that specific ad.
16:03And in case you forgot what the ad looks
16:06like, I'm just going to go ahead and
16:07open this back up just to give you a
16:09quick little refresher that this is the
16:11ad that we are analyzing. So from here,
16:12the next thing we need to do is we need
16:14to create a prompt that is going to
16:16remix this image for every single one of
16:19our niches. So what I'm going to do is
Generating Remix Prompts
16:21I'm just going to click the plus here
16:23because we need to now pull in every
16:25single one of the niches. So I'm going
16:26to click the plus. I'm going to do
16:28search records. We can come in here. We
16:30can type in school. Do school ads from
16:32the list. What we want to do now is the
16:34audiences. And we can return all of
16:36them. Just for the purpose of this, I'm
16:38just going to return like three of them
16:40so that make sure we can just kind of
16:41keep this streamlined and once we're
16:43ready, we can really roll this out to a
16:44lot. So you can see here we have
16:45gardening, we have music production, we
16:47have energy healing like Reiki and
16:49chakras. Okay, cool. Interesting. So
16:50this is a good start. And so now what I
16:52need to do is we need to combine these.
16:54So I need to take the analysis of the
16:56image and I'm going to add a merge node
16:58here. I'm going to combine all possible
17:00combinations. And you'll see why in a
17:02second. So I'm going to do this. I'm
17:04going to connect up the school node
17:05here. And let me go ahead and click play
17:08because what we have now is we basically
17:10have the description of the image as
17:12well as the name of our audience. So
17:14here is gardening. You can see we have
17:15the description of the image again. And
17:17now here this is music production. And
17:19so now we have three total items coming
17:20out of this. And so now we need to be
17:22able to take the analysis of the image
17:24take the new audience and then create a
17:27prompt for an AI image generator. So how
17:29we're going to send this to nanobanana
17:31to actually remix the image. So we're
17:33going to hop back into chatbt to do
17:35this. So I'm just going to go ahead and
17:37I'm going to click copy on the JSON to
17:39give chat GPT this output so it
17:41understands the type of thing we are
17:42working with. So now I'm going to come
17:44back into chat GPT. I need a prompt for
17:47an AI agent and the agent as input will
17:50be given an analysis or description of a
17:53static ad. It is also going to be be
17:56given the niche or audience. So someone
18:00like photographer or graphic designer or
18:02someone like that, right? And what I
18:04need the agent to do is I need it to
18:06remix the copy and the creative of the
18:09advertisement to appeal to the new
18:12audience. I want to keep the same style
18:14choices from the original ad. I mostly
18:17just want to work on changing the copy
18:19and then maybe updating the imagery for
18:22our desired audience. Right? So, if I
18:24have someone who's interested in
18:25gardening, say I want to show uh, you
18:27know, like shovels and rakes or
18:28something flowers, right? And if I have
18:30someone who's interested in photography,
18:31I want to show like cameras, right? So,
18:34I'm just going to go ahead and do that.
18:36And I'm going to say once this is done,
18:39I'm just going to give it the example
18:40analysis so it understands example
18:43analysis for context. And I'm just going
18:45to go ahead and paste that in. So, now
18:47let's see the type of agent prompt that
18:49it's going to come up with. You are an
18:50expert creative copywriter and visual
18:52strategist. Your task is to remix an
18:54existing static ad so that it appeals to
18:56a new niche or audience while preserving
18:58the original ad's tone, structure, and
19:00visual style. This is great. This is the
Setting Up Nano Banana
19:02revised copy that's given and the visual
19:04updates. Okay, cool. This is really
19:05cool. There is one thing I need to
19:07change because remember I want to
19:08actually make this well, let me just go
19:10ahead and tell it. This is really great.
19:12But the output format, I need to format
19:14the output for an AI image generator. So
19:17we need to structure this as a prompt
19:19for an AI image generator so that it
19:22understands how to create the new image.
19:30Cool. This is the same thing. This is
19:31giving us the original inputs and the
19:33target audience. Here's the instruction.
19:35Your output must be a single image
19:36generation prompt. One continuous
19:38paragraph written descriptively for an
19:40image model. This is great. Here's the
19:42prompt example output. Cool. This is
19:45very cool. Okay, great. So, let's go
19:47ahead and let's copy this. So, now I'm
19:50going to come back over here. I'm going
19:52to go ahead and click the plus and I'm
19:54going to go ahead and just use Open AAI
19:55for this. So, OpenAI. And what I want to
19:57do is I want to message a model. What's
19:59great is that we already know how to
20:00connect this to OpenAI. We don't need to
20:02do this again. I'm going to choose from
20:04the list. Why don't we go GPT40 latest?
20:07And I'm going to add a message because I
20:09need to add a system message. And so the
20:11system message is how we want the system
20:13to behave, which is basically what we
20:16just determined, right? This is how we
20:17want the system to behave. Great. The
20:19user message is essentially like your
20:22chat box that I was just using inside of
20:24chat GPT. So I'm going to switch this to
20:26expression. I'm going to open this up to
20:27make this a little bigger. And first I'm
20:29going to say image analysis. If I can
20:32type. I swear that now that I'm doing
20:34all this AI stuff, my typing is worse.
20:36And I'm just going to say new target
20:38audience. So, I'm going to go ahead and
20:40say gardening. This is great. So, let me
20:42go ahead and I'm just going to click
20:44execute step. And because we have three
20:46inputs, we should actually get three
20:47different image prompts coming out of
20:49this. Cool. Create a highresolution
20:51static ad in the school brand style.
20:53Clean, bright, and friendly with minimal
20:54flat design and bold typography.
20:56Maintain the same layout as the original
20:58ad described. Bold headline at the top,
21:00etc., etc. Replace the headline text
21:02with what gardening skills can you teach
21:03and get paid for on school. That's
21:05great. There's one thing I want to add
21:06down here is I just want to say ensure
21:09that there is a CTA slignup button to
21:15start free trial cuz I notice that if
21:18you go back and we look at a lot of
21:19these you can see start your free trial
21:21and then if I go to the other one I
21:22think this one also has like start your
21:24free trial on this right cool. So, I
21:27just want to make sure that we include
21:28that. Start free trial, sign up button,
21:31and why don't we say at the bottom.
21:35I'm just going to generate this again
21:36just to see what the output is. It's
21:38always good to test along the way. Okay,
21:39this is great. Followed by a grid- based
21:41array of white rounded cards featuring
21:42color colorful emoji style icons and a
21:45call to action bar at the bottom with a
21:47start free trial button. This is great.
21:49So, let's just go ahead and start to see
21:51what we come up with.
21:54So if I come back in here, we can go
21:56ahead and we can check this off because
21:58we've now used chatbt to write our
22:00analysis prompt. The next thing we do is
22:02we need to use nano banana to remix the
22:04image. So I'm going to get a little
22:05fancy here because I think we're going
22:07to need a couple of different nodes. So
22:09let me just zoom in here and let's just
22:10rename these so we know. Why don't we
22:12just say get add
22:15and why don't I just go ahead and come
22:17down here and I'm going to do air table
22:19again because what I want to do is I
22:20need I actually want to pull in the
22:22school logo. So I'm going to do get a
22:24record again. I'm going to go ahead and
22:26select from our list school ads.
22:29Now from the table I'm going to go ahead
22:31and say school logo. And if I come down
22:33here let's go ahead to school logo. And
22:34there's just like an easy way to see and
22:36we can just go into formula and we can
22:38say ID. And if you come in here and all
22:41you have to do is do record and we can
22:44do this record ID. Now if I go ahead and
22:46do create field, this is just a nice
22:48like easy way to display the record ID
22:50for this particular record. So this is
22:52the record ID. So I can just click this
22:54and click copy. If I come back in here,
22:55I can just paste in this record ID
22:57hardcoded in because that record is
22:58never going to change. Now we have
23:00access to the school logo. So I'm just
23:02going to go ahead rename this. And why
23:04don't we just say school logo. Great.
23:07So, what I want to do now, let me save
23:09this, is I want to combine the output of
23:11the school logo
23:13and the ads into one. And so, what I'm
23:15going to do is I'm just going to clean
23:16this up a little bit so it just makes it
23:18easier. I'm just going to go ahead and
23:20set this.
23:21And I'm just going to drag in this. And
23:23I'm just going to go ahead and call this
23:25add URL.
23:27And I'm going to also go ahead and do
23:28another set node down here, which is
23:30going to make our life a little bit
23:31easier. We can just call this school
23:34logo URL. Great. Now I have these. It's
23:39just going to be a little bit easier for
23:40us to grab stuff. This actually isn't
23:42totally necessary, but add URL. And I'm
23:45just going to call this always good to
23:47label things. Great. And now I can do
23:49this merge node. Can merge these
23:51together. Can go ahead combine these by
23:53position. Going to go ahead and say
23:55position here. Number of inputs two.
23:58Now I can link these up. I can go ahead
24:00and click play. If I come in here, you
24:02can see I have the ad URL and I have the
24:04school URL. nice and tidy. That is the
24:06goal. And I have a single output here.
24:10And now the reason I do this is because
24:11what I want to do is I'm going to add
24:13one more merge node because now we're
24:15going to merge all of the outputs from
24:17everything. I'm going to do combine. And
24:19what we're going to do, we're going to
24:19do all possible combinations. So I'm
24:21going to combine that with this. And if
24:23I go ahead and click play, what we're
24:25doing now is we're basically let me just
24:28go ahead go back. We're analyzing the
24:30image. We're searching the records to
24:32get all of the new audiences that we
24:34want. We're writing our new creative for
24:36every one of those audiences. And then
24:38we're merging the creative together. But
24:40come in here now. You can see we have
24:42the prompt that we want. We also have
24:44the ad URL and the school logo URL for
24:47every single one of our audiences. So
24:49now we can feed all of this in to Nano
24:52Banana to generate our brand new images.
24:56So in order to do that, we're going to
24:58use a site called Kai Aai. I leave I'll
25:00leave a link in the description where
25:01you can sign up. This costs about 2
25:03cents per image to generate. So, pretty
25:06cheap. So, you can just go ahead and
25:07create an account here. And I'm going to
25:10show you exactly how to set this up. So,
25:12what's great is that you can basically
25:13see all the parameters that this has,
25:15but you really don't need to worry about
25:16this because what we really care about
25:17is this curl request right here. So, I'm
25:20just going to go ahead and I'm going to
25:21copy this. And you can see the things
25:22that we can give it as an input, right?
25:25We can give it the prompt. So, we just
25:27generated the prompt and we can give it
25:28all the image URLs that we need. We can
25:30give it the output format and the image
25:32size. I think we want to keep this as
25:33one one. So I just copied this and now
25:36I'm going to come back over here.
25:39Let me zoom in
25:41and just for testing sake I'm just going
25:42to add a limit node just to restrict
25:44this to one for now. We'll go ahead and
25:46we'll we'll remove this in a second. I'm
25:48just going to click the plus. I'm going
25:49to go to HTTP request. All I have to do
25:52is go to import curl. So I'm just going
25:54to go ahead and import that here. And
25:56now you can see we have this all set up
25:58and ready to go. The only thing we need
26:00here is our API key. So, I'm going to
26:02come back into KAI. I can come over to
26:05the dashboard and I'm going to show you
26:06a really great way to set this up. And
26:08you can just come into API key and we
26:11can go ahead and click copy or you can
26:13go ahead and do create new API key. And
26:15I'll just say school ads and go ahead
26:17and click create. So now we have a new
26:20API key. I'm not actually going to use
26:21this so you guys can't, you know, steal
26:23my monies. Uh but great. So what you
26:25would do is you just have bearer space
26:26and then you would paste in your API key
26:28right here just like this. But what
26:31we're going to do is we're going to set
26:32this up the proper way. So keep in mind
26:35here right here we say authorization for
26:37the name with a capital A and down here
26:39we have the value as bearer with a
26:41capital B a space and then our API key.
26:43So we can actually get rid of this. We
26:45actually don't need any headers anymore.
26:47And I can come into authentication. I
26:49can do generic credential type. I can
26:51select the header and I can go ahead and
Testing Image Generation
26:54do create new credential. And this is a
26:55way for us to store this credential
26:57always. And so that we don't have to
26:59come back and add our API key again. And
27:01so remember we had the name as
27:03authorization. And here we're typing in
27:05I'm just going to go to expressions. So
27:06you can see we're typing in bearer space
27:09and then pasting our API key. And I can
27:11go ahead and click save. And now we have
27:13a brand new credential all saved and
27:15created and ready to go. Now we need to
27:16update a few more things. This is
27:18actually making the request to
27:19Nanobanana. Okay, I do know that we can
27:22get rid of this callback URL. We're not
27:24going to need it. So, I'm just going to
27:25go ahead and delete that. Now, the input
27:28for the prompt, I can come in here.
27:33I can do this and I can go ahead and
27:35paste this prompt in here. And I'm just
27:36going to copy this from something else
27:38that I had. I'm just going to put in
27:40this kind of like formatting. This is
27:42we're replacing all of these slashes
27:44with other things and replacing spaces
27:46with some new lines. And this is just a
27:48way to clean this up for Nano Banana so
27:50that we don't get any errors. Awesome.
27:52So the next thing I need to do is I need
27:53to pipe in these URLs. So I'm just going
27:55to go ahead and I'm going to remove
27:57this. I'm going to go ahead and put in
27:59the add URL. I'm going to go ahead and
28:01do comma. I'm going to do space. I'm
28:03going to do one quote. I'm going to pipe
28:05in the school logo URL.
28:07And I'm going to do end quote here. And
28:10I think we should be good to go. I think
28:11that's all we need. So let me go ahead
28:13and let's send this off. And let me test
28:15this. Cool. So this is exactly what we
28:17wanted. We can see here that this was a
28:19success. This got sent off properly. We
28:21didn't return any errors. That's exactly
28:23what we're looking for. So I know that
28:25these take about a minute to generate,
28:27maybe a little bit less. But what I'm
28:28going to do here is I'm going to add a
28:29wait node. So I'm just going to do this.
28:31We're going to wait for 60 seconds. And
28:32then what we're going to do is we're
28:34going to check to see if the image is
28:35done generating. So I'm going to come in
28:37here. I'm just going to say gen image.
28:40Great. I'm going to wait 60 seconds.
28:42Then what I'm going to do here is I'm
28:43going to add another HTTP request. And
28:45if I come back into KAI. Okay, this is
28:48great. We're already set up here. What I
28:49want to do is I want to come back into I
28:51want to come into the models here. I
28:53want to do can just type in nano for
28:55nano banana. We can come back to it.
28:57Okay, great. So, if I come in here and I
29:00go back to the API docs, what we want to
29:02do is we want to query the task. And
29:03this is really simple to set up. This is
29:05an example of the request. Really, all
29:07we need to do is make sure we have
29:08access to this URL. That's pretty much
29:10it because we actually already have
29:12access to our API. And so if I come in
29:15here, I can just go ahead and I can
29:17paste this in. And we're going to need
29:18to replace this task ID here. What I do
29:20want to do is change this authentication
29:22to general credential type. We're going
29:24to go ahead here. We're going to go back
29:25to header off. And we can go ahead and
29:27select our Kai school ads right here.
29:30This is great. And this is really all we
29:31need to set up for this. And so what I'm
29:33going to do is I'm just going to come in
29:34here and I'm going to hit P to pin the
29:35analysis. So we don't need to do it. I
29:37should have done that earlier. I'm going
29:38to hit P to pin the prompts that we
29:41generated. And we're good to go. And you
29:42can see here we generated an image.
29:44We're waiting 60 seconds. And now what
29:46I'm going to need to do is I'm actually
29:47just going to need to change this task
29:49ID at the end here to match what we have
29:52inside of here. And you can see here we
29:53have this task ID. So I'm just going to
29:56go ahead and go ahead and remove this
29:58and just pipe in this task ID.
30:02I'm going to click save. So that
30:04finished and we have all of this
30:05information in here which is great. And
30:07you can see that we actually have this
30:09resulting URL. So let me just go ahead
30:10and copy this and just open this up in a
30:13new tab. You can see this is cool. What
30:15gardening topics could you get paid? And
30:17four on school. Okay, so it's not
30:18exactly accurate, but it's pretty close.
30:20Maybe a little Photoshop work could
30:22work. Watering potted plants, starting
30:23seeds, soil and compost. So with a
30:25little bit of Photoshop love, this could
30:27be a really, really good start. And here
30:29we actually got the school logo correct,
30:31which is awesome. And I will say this ad
30:33is actually particularly complex with
30:35all these different icons and copy. And
30:36Nano Madenna actually did a really great
30:38job. I'm pretty impressed with this.
30:40This is awesome. So now that we have
30:41this, let me see where we're at here. So
30:43we basically just figured out how to
30:44have Nano Banana remix the images and
30:46now we just have to store this back
30:48inside of Air Table. So what I'm going
30:50to do here is I'm just going to add an
30:51if node. And this is like a little a
30:53little pro tip here. And what I'm going
30:55to do is I'm just going to come down
30:56come down come down. And I just want to
30:57say the resulting JSON string
31:01come in here and go to is not empty. So
31:04I just want to make sure that there is
31:05something in it. And if there isn't,
31:08what I'm going to do is I'm just going
31:09to loop back to this wait node. And so
31:11basically, it's going to generate the
31:13image, wait for 60 seconds, check to see
31:15if the image is done. If it is done,
31:17it's going to store it in air table. If
31:19it's not done, it's going to wait
31:20another 60 seconds, and then check
31:21again. So I'm just going to say get
31:24image. Okay, great. Now, from here, go
31:27ahead and click save.
31:29And we need to come back into Air Table
31:31because what I need to do is I need to
31:33go ahead and I want to duplicate this
31:35table one more time. I can come in here
31:36and I can just say final ads. Go ahead
31:39and click save. Great. And I can come
31:41back in here. And now what I can do is
31:42click the plus. I can go into air table.
31:45What I want to do here is I want to
31:46create a record. Cool. Going to go ahead
31:49and type in school for our school ads
31:52base school ads
31:56for here. I want the final ads.
31:58And let me just go ahead and hit this
32:01little play button here. So now we have
Storing Final Ads
32:02we actually have data in it. So I can
32:04come in here. What I want to do is I
32:06come all the way back to the beginning
32:07and I'm going to go into this get add
32:09node. All I'm just going to do is I'm
32:10just going to grab the name, right? And
32:12then from here, we can change the status
32:14here to finished. And all I want to do
32:16now is I want to go ahead and store this
32:18image
32:21in this attachments field. Now, I know
32:23for a fact that this is not going to
32:27work, but we're going to make it work.
32:30So, first things first, I'm just going
32:32to copy this. I'm going to come into
32:34chatbt. Now I'm going to say in nadn I
32:38need to adjust my expression to extract
32:43only the image URL starting with http
32:48and ending withpng.
32:53This is step one. So let me just go
32:55ahead and copy this and see how this
32:56works. And so I'm just going to replace
32:58this here. And now you can see we've
33:00actually removed everything that is not
33:02the URL that we want. Great. This is a
33:04good start. I do know also that air
33:06table requires a very specific array
33:09format for storing these images
33:11directly. I've used this before and this
33:13is great. Cool. So I have this and I
33:15know this is format that we need. So we
33:16can say the top option works. I need to
33:20now convert it to use this array format.
33:25Cool. Cool. Let's go ahead and let me
33:27copy this. And now let me come back in
33:28here and if I paste this in go here now
33:31we have this array format for the URL.
33:33So let me test this out. If I click
33:35execute step can see here this is saved.
33:38Great. If I come back over here we have
33:40the ad. We have our attachment field and
33:42the status is set to finish. So now we
33:44have a brand new ad for school. Super
33:47cool. This is working. So now what we
33:49got to do is we just got to test this
33:51out. So for here let me just go ahead
33:53and let me up the limit to like 50 just
33:55so we have it. This is great. This is
33:57cool. I'm just going to go ahead and I'm
33:58going to delete this ad from here so we
34:00don't have it. Let's just run through
34:02the system from the start. So, let me go
34:03ahead and unpin this data. Unpin this
34:06data. Unpin analyze image. Unpin the
34:09item from the web hook. Okay. Go ahead,
34:11click save. Let's see. Do we have
Testing Complete System
34:13everything that we need? This is
34:14awesome. So, the way you kick this off
34:17is basically you come into your
34:19reference ads. And this time, let's go
34:20ahead and use this wanted poster. And I
34:23should just be able to go ahead. Ah, one
34:24more thing I forgot. And so now we're
34:26back in here. I'm going to click execute
34:27workflow. It's waiting for the trigger.
34:29If I come in here, I'm going to go ahead
34:31and click create. Workflow was started.
34:33Awesome. We can come in here. We can see
34:35we're analyzing the image. We're getting
34:37all of the audience, right? Anyone from
34:38our audience. We're just picking three.
34:40We're going to update this to 50 or
34:41however many. We're now analyzing the
34:43image. We're going to put that together.
34:45The analysis with the school logo, the
34:47desired audience. We're going to send
34:49that off to Nano Banana to generate a
34:51brand new ad. We're going to check to
34:52see if that ad is finished. And then
34:54we're going to store everything back in
34:55the air table database. Just for testing
34:57earlier, I switched this to check every
34:58two seconds. You can see check every two
35:00seconds instead of 60. So I should
35:02really switch this back because we don't
35:03need to check every 2 seconds. Good news
35:06is uh this actually finished really
35:08fast. So maybe maybe checking every two
35:09seconds does make sense. So let me come
35:10in here. Let me go into these final ads.
35:13You can see we have three brand new ads
35:15all finished. Let's go ahead and see.
35:17Wanted people with unusually green
35:19thumbs. If you talk to your plants more
35:20than people, it's time to grow your
35:21online community. investigations reveal
35:24your prime suspect for I don't know what
35:26this is but you know co col co col co
35:27col co col co col co col co col co col
35:27co col co col co veins et okay okay but
35:28anyway like a little bit of work in
35:30photoshop and we're pretty good and I do
35:32think ads with less copy will will work
35:34you know more in our favor but this is
35:36pretty cool people who align chakras for
35:38fun raiki masters crystal grid gurus or
35:40readers okay that's cool then next for
35:43our next audience people who obsess over
35:44sounds beats beats and bouncing tracks
35:47so again these are really close and
35:49taking this into Photoshop a little bit
35:50I think can get us the rest of the way
35:52there. I also think with some again like
35:55simpler ads at first, this will work a
35:57little bit better for us. So, I think
35:59maybe instead of like, you know,
36:00whatever, maybe I'll set this to wait 10
36:02seconds instead of 60. That was
36:03shockingly fast. Okay. And there's one
36:06last thing that I got to show you before
36:08we can make this production ready. So,
36:10before you hand this off to a client,
36:11it's the last thing is we want to switch
36:13this from test mode into production
36:15mode. And all we have to do is change
36:17the URL that we're calling from Air
36:19Table. So, let me show you how to do
Production Mode Setup
36:20that real quick. And so you can see here
36:21this is the test URL and you can tell
36:23because it has test right here. And if
36:26we switch to the production URL, it's
36:28actually the same. It just doesn't have
36:29that dot or that dash test. So all we
36:32have to do to make this production ready
36:34is one, we want to go over here. We want
36:36to just switch this from inactive to
36:38active. Great. So now we're in
36:39production mode in NADN. And then we can
36:42come over here to our Air Table
36:44database. And we just need to update
36:45this button. So, if I come in here and I
36:47go to edit field, I just need to take
36:49the web hook and we can see it here. Let
36:51me see if I can make it a little bit
36:52bigger for you. And we can just take out
36:54this dash test and we should be good to
36:57go. So, if I come down here and I click
36:59save, now we've updated the web hook to
37:01call the production web hook instead of
37:02the test web hook. And why this is cool
37:04because now you can just go down the
37:06line and click create, create, create.
37:07I'm just going to do it with this first
37:08one. And you can see here the workflow
37:10has started. And then if we pop over
37:12into NAD, we can come into these
37:14executions right here. And you can see
37:16that this has already started running.
37:18So this means we are ready for
37:19production. We can package this up. We
37:21can hand this off to a client. We can
37:22share this Air Table database with them
37:24and say, "Hey, just click create and
37:25you're good to go." And we have an
37:27automation all ready to go creating
37:29brand new ads that we've remixed from
37:31our best performing content. Okay, cool.
37:33So this is finished and it took about 3
37:34minutes and let me go back and let me
37:36just show you the reference ad that
37:37we're using for this last run so that we
37:38get an idea of what it is. So if we come
37:40in here, this is the reference image.
37:42And if we go back over to our final ads,
37:44we can scroll down here. We can
37:45basically see what we have for
37:46electronic music. Turn your DJ skills.
37:49Turn your passion into an EDM community.
37:51Learn together school. Starf free trial.
37:53Awesome. Uh tax optimization uh for
37:56creators. Grow together. Save together.
37:58Feeling overwhelmed. Connect and learn.
37:59Optimize and thrive. Starf free trial.
38:01No school logo on that one, but pretty
38:03good. Let's go ahead and see what else
38:05we got here. Film scoring and sound
38:07design. Uh turn your passion for sound
38:09into a community. Create alone. Share
38:11and connect. learning collab. So, these
38:12are pretty freaking cool. I'm really
38:14generally very happy with these. We got
38:16our gardening one. Turn your love for
38:18plants, individual nurturing, community
38:19sprouts, digital exchange into a growing
38:21community on school star free trial. So,
38:23these are awesome. So, now you have a
38:25production system all ready to rock. So,
38:28if you thought this video was helpful,
38:29please make sure to subscribe to the
38:30channel. If you want to get access to
38:32the resource we built today along with
38:34all of my tips and tricks for building
38:35and selling AI automations, check the
38:37link in description. Introduce yourself.
38:39I'll see you inside.