Free YouTube Transcribe

Video transcript

How to automate paid ads with AI!

Duncan Rogoff | Learn Claude Code · 9,121 words · 42 min read

Want to search this transcript, jump the video from any line, or download it as TXT, SRT, or VTT?

Open in the transcript tool

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.

Recently added transcripts

Browse the whole transcript library

This transcript was generated from the captions YouTube publishes for this video. Get the transcript of any YouTube video atfreeyoutubetranscribe.com, free, unlimited, no sign-up.