I Built the Ultimate UGC Content System with AI Agents (free template)
Nate Herk | AI Automation
0:00 VO3.1 Nano Banana Sora 2.
0:02 There are all of these amazing models dropping.
0:04 So, I figured why not just build a system
0:06 where we can use all of them.
0:07 So, what we're going to be looking at today is
0:09 the ultimate UGC ads system where all
0:11 you have to do is fill in some raw
0:12 information on a Google sheet like a
0:14 product photo, the ICP, the features of
0:16 that product, and a setting of the
0:18 video.
0:18 And then all you have to do is
0:19 come in here and choose your model.
0:21 Whether that is V3.1, a combination of
0:23 Nano Banana and V3.1, which is super
0:25 cool.
0:25 I'll show you guys exactly how we
0:26 do that in a sec here, or using Sora 2.
0:29 This lets you seamlessly test a bunch of
0:30 different creatives and product features
0:32 and settings across a ton of these
0:34 different AI video generation models.
0:36 So, the question that we're going to be
0:37 trying to answer today is which one is
0:39 best for UGC ads.
0:40 So, taking a look at
0:41 this workflow, you can see that there's
0:42 basically three paths.
0:43 There's the VO3.1 path, the Nano Banana Plus V3.1 path,
0:47 and then the Sora 2 path.
0:49 So, we're going to jump into a live demo.
0:50 We're going to run all three of these paths,
0:51 and I'm going to explain what every
0:52 single node is doing so that you guys
0:54 can set this up for yourself.
0:55 And as always, I'm giving away the entire
0:57 system for free.
0:58 All you have to do is
0:58 join my free school community.
0:59 The link for that is down in the description.
1:01 So, before we go ahead and run the live
1:02 example, let's look at a few of our
1:04 outputs that we've already gotten with
1:06 this exact system.
1:07 So, the first product
1:08 we tried was creatine gummies.
1:09 Here is what the actual product photo looks
1:11 like.
1:11 So, you can see it's a creatine
1:12 gummy jar.
1:13 We then have the ICP, which
1:14 is young adults wanting to stay fit.
1:16 The product features for this are delicious
1:18 gummies, easy to remember to take daily,
1:20 makes workouts better, more energetic,
1:21 stuff like that.
1:22 In the video setting,
1:23 we have a young man who is parked in his
1:25 car about to go into the gym holding the
1:27 gummies.
1:27 So, the first one we'll look at
1:28 is Nano Banana Plus Google V3.1.
1:31 I love that these creatine gummies
1:33 actually give me more energy for my sets
1:35 and they're tasty, so I actually
1:36 remember to take them every day.
1:39 All right, here's the same one with Sora
1:40 2.
1:41 I love these creatine gummies.
1:43 They actually taste amazing and I never
1:45 forget to take them.
1:46 They make my workout stronger and I feel more
1:48 energized.
1:49 And then here's V3.1.
1:51 These taste amazing and I actually remember them
1:53 every day for a my workouts feel
1:55 stronger and I've got more energy.
1:57 You may have noticed a few things with
1:58 the reference image and the way they
1:59 were speaking, but let's continue on to
2:01 the second example which was hair shine
2:03 spray.
2:03 So, I'm going to go in the same
2:04 order.
2:04 Nano Banana Plus VO3.1 Sor 2 and
2:07 then V3.1.
2:08 I love how this gives my hair that
2:10 glossy finish without any greasiness.
2:13 It dries instantly and feels weightless.
2:16 I love how this gives instant glossy shine
2:17 without any greasiness.
2:18 It dries fast and feels weightless.
2:20 I love how this
2:21 adds instant gloss without feeling
2:24 greasy.
2:24 It dries so fast and leaves no
2:26 sticky buildup.
2:28 All right, so we've seen a few examples.
2:29 We'll come back at the end and compare
2:30 more outputs and see which one we
2:32 ultimately deem being the king of these
2:34 models.
2:34 But let's go ahead and do a live
2:35 example.
2:36 So the first two that we did
2:37 were AI generated images.
2:38 This first one was creatine gummies, as you can see,
2:41 and the second one was our hairspray,
2:43 which looked like this.
2:44 So, what we're going to do for the third example is a
2:46 real product image, and this is actually
2:48 from an Amazon listing.
2:49 So, it is a
2:50 portable neck fan like this.
2:51 We have the ICP of middle-aged adults who spend long
2:54 hours outdoors or landscapers,
2:56 construction workers.
2:57 We have product features like it's comfortable, it's
2:59 light, it delivers powerful air upward
3:01 and downward, and it regulates your body
3:03 temperature.
3:04 And we have the video
3:05 setting for a friendly middle-aged woman
3:07 tending her garden in the afternoon sun.
3:09 So, hopefully you guys can see the value
3:10 prop here.
3:11 it'd be really easy to just
3:12 throw in your product information right
3:14 here and then have this thing every day
3:15 create tons of UGC ad content for you.
3:18 Then what happens in the workflow is it
3:20 takes that and we have different AI
3:22 agents here that are trained to prompt
3:23 in different ways and that's how we're
3:25 optimizing you know the features and ICP
3:27 and the setting to actually go into this
3:30 UGC content.
3:31 So I'm going to go ahead
3:31 and hit execute workflow.
3:32 It's going to pull in that data from the sheet.
3:34 It's going to do one row first and the first
3:36 row that it's doing is nano Banana plus
3:38 V3.1 because as you can see right here
3:41 it's basically processing this row and
3:42 that's the model that we chose was
3:44 NanoBanana plus V3.1.
3:46 So I'm actually just going to start to explain what's
3:48 going on here as this is running.
3:51 So you can see here we're pulling in data from
3:52 this sheet, right?
3:53 The only thing special going on here is we're making
3:55 sure that the status column equals ready
3:58 because we don't want to pull in all of
3:59 these rows that have already been
4:00 finished.
4:01 And then we also turned on
4:02 this option that says return only the
4:03 first matching row because we don't want
4:05 to do, you know, all six of these at a
4:07 time.
4:07 We want to just do one by one.
4:09 You could obviously change that if you want,
4:10 but that's the way we're rocking right
4:11 now.
4:12 Anyways, we then go into this
4:13 switch node and what happens here is it
4:15 basically just checks what the model was
4:17 selected as.
4:18 So if it was V3.1, it goes
4:20 up.
4:20 If it was nano plus V3.1, it goes to
4:23 the middle.
4:23 And if it was SOAR 2, it
4:25 goes down.
4:25 As you can see, these three
4:26 paths.
4:27 So, this one was obviously V3.1
4:29 plus nanobanana, which is why it went
4:31 here.
4:32 And that's why we're doing this
4:33 first step, which is an image prompt.
4:35 So, let me explain why I'm doing this.
4:37 What we're starting with is a picture of
4:39 our product because we need to make sure
4:40 that the product image looks actually
4:43 good in our final copy.
4:44 Otherwise, we're not going to be able to sell any of
4:46 that.
4:46 So, in my mind, the most ideal way
4:48 to do this is to take that product image
4:50 that we're given.
4:50 So, if we just want to
4:51 get a quick refresher, taking this
4:53 product image right here and using AI to
4:56 turn this into an image where someone is
4:58 wearing it or holding it and then we can
5:01 take that optimized image and turn that
5:03 into a video.
5:04 And so, ideally, I would
5:05 do this also for Sora.
5:06 But when you send
5:07 a image to Sora, if it looks like a
5:10 realistic human person, even if it's an
5:12 AI generated human, it's going to reject
5:14 it.
5:15 Google VO3.1 however does not reject
5:17 it which is why we have this little
5:19 extra bonus method here.
5:21 Now the workaround here is if you do Sora 2 you
5:23 can use cameos.
5:24 So if you haven't seen
5:25 that before then I'll drop my video I
5:27 made with Nitn and Sora 2.
5:28 I'll tag it right up here and you can see you could
5:30 use cameos.
5:31 So you could create one of
5:32 yourself or you could use some other
5:33 person and have them being in your
5:35 content with your product something like
5:38 that.
5:38 So anyways we're using Nano Banana
5:40 to create an image of the product being
5:42 held or worn by a person.
5:43 And then we take that image and we turn it into a
5:45 video with VO3.1.
5:47 So anyways, you can
5:48 see that that actually just finished up.
5:49 So that's telling me I need to speed up
5:51 a little bit.
5:51 Let's click into this AI
5:53 agent to understand how it is making an
5:55 image prompt.
5:56 We're giving it two
5:56 things.
5:57 We're giving it the product,
5:58 which as you can see, if I open this up,
6:00 it's coming through as portable neck
6:02 fan, and we're giving it the image
6:03 setting, which is actually just the
6:04 video setting, but it says, "A friendly
6:06 middle-aged woman is tending her garden
6:08 under the sun.
6:09 She pauses, smiles at the
6:10 camera, and gestures toward the sleek
6:11 fan resting around her neck." So the AI
6:13 agent takes that information and then it
6:15 reads through its system prompt to
6:17 understand what do I need to do with
6:18 that information.
6:19 I'm not going to read
6:20 this entire system prompt, but you guys
6:22 will be able to once again download this
6:23 template for free and you can dive into
6:25 this and understand why I have it set up
6:27 this way.
6:27 One thing I did want to
6:28 preface though is I made this workflow
6:30 to be a template.
6:31 So these system prompts are not perfect or optimized and
6:33 it would really be on you to get in here
6:35 and customize them a little bit for your
6:36 use case, but it gives us a great place
6:38 to start.
6:39 So anyways, you are an expert
6:40 in hyperrealistic UGC userenerated
6:43 content photography and your role is to
6:46 generate detailed image prompts, not the
6:48 images themselves.
6:49 So you will be
6:50 provided with a product photo which
6:51 should not be changed or altered in any
6:53 way.
6:54 And you will also be given a
6:55 specific setting or scene description.
6:57 So it knows that its role is to create a
6:59 prompt.
6:59 So we come in here and we give
7:00 it some prompt guidelines.
7:02 We talk about human realism.
7:03 We talk about product
7:04 accuracy.
7:05 We talk about composition and
7:07 perspective.
7:08 We talk about lighting and
7:09 environment.
7:10 We talk about authentic
7:11 details, technical style.
7:12 And then finally, some critical instruction like
7:14 only outputting the image prompt, not an
7:17 actual image or you know, hey, here's
7:19 your image prompt.
7:20 You know, we just
7:20 want the prompt.
7:21 So, out of that, what
7:22 we get is our image prompt.
7:24 And you can see it's pretty detailed.
7:25 It has stuff like lighting.
7:26 It has stuff like camera
7:27 angle and composition and stuff like
7:29 that.
7:30 And we're able to take that
7:31 output, feed it into the next node,
7:34 which is our HTTP request to a service
7:37 called Key AI, which lets us access tons
7:39 of different AI image and video
7:41 generation models.
7:42 So this is key.
7:43 As you can see, we have tons of stuff like
7:44 VO3.1, Sora 2 Pro, 40 image, Flux
7:48 Context, Cling Turbo.
7:50 It's kind of like
7:50 the open router for image and video
7:53 generation models.
7:54 So, I'm not going to
7:54 deep dive into exactly how I set up this
7:56 API call, but definitely go and watch
7:58 that sore video if you haven't because I
8:00 actually go step by step and show you
8:01 guys how I did that.
8:02 I'll also tag right
8:03 up here an API video that I made, which
8:05 you should watch anyways because it
8:06 really explains APIs and agents and
8:08 stuff like that.
8:09 Anyways, essentially what we're passing over here is our JSON
8:12 body, which is the most important part.
8:13 The model that we want to use is nano
8:15 bananait.
8:16 We're sending over the input
8:17 prompt, which as you can see right here
8:19 is coming through.
8:20 This is the output of
8:21 the image prompt agent that we just
8:22 looked at.
8:23 Now, there is one thing I did
8:24 here that's kind of special is I
8:25 replaced new lines because you can see
8:27 if I get rid of this expression real
8:28 quick, what happens is we get these
8:30 little line breaks in here and we don't
8:32 want that because that will actually
8:33 break our request to key AI.
8:35 So, that's why I use that little expression.
8:37 I also talk about that in the Sora video.
8:39 And then we're giving it the image URL,
8:41 which is the one that came from our
8:42 Google sheet right here as you can see.
8:44 Finally, we're just saying we want this
8:46 to be vertical because a lot of times
8:47 the UGC content is kind of selfie style
8:49 and it's for like a Tik Tok or an
8:51 Instagram reel.
8:51 So that's what we do
8:52 there.
8:53 Once key gets this request, it
8:55 basically says to us, okay, cool.
8:57 I got all this information.
8:59 We're working on that right now.
9:00 And so the next step
9:01 that we move into here is a wait node.
9:04 You can see that I have this set up for
9:06 5 seconds.
9:06 So it goes ahead and it waits
9:08 for 5 seconds and then it checks in on
9:10 key and says, "Hey, do you have my order
9:12 done yet?" And we're able to get to that
9:14 by sending over the task ID of the
9:16 previous order.
9:17 So it's like when you go
9:17 to a food truck and you order your food
9:19 and it says, "Okay, your order number
9:20 43." This is basically you walking back
9:22 up to the truck and saying, "Hey, I'm
9:23 order 43.
9:24 Is it done?" And they'll
9:25 either say yes or no.
9:27 And that's why we
9:27 use this little if node right here,
9:29 which is basically our yes or no check.
9:31 And we're looking to see if the state
9:32 equals success.
9:34 Because if you look at
9:34 the first time we checked in, the state
9:36 equals waiting.
9:37 The second time that we
9:38 checked in, the state equaled waiting.
9:40 And finally, the third time we checked
9:42 in, the state equals success, which
9:43 means that our order is ready.
9:45 And so notice that we have false branch or true
9:47 branch, and it's true when it's done.
9:49 So what we do is if it's false, we have
9:51 this line that goes back to the wait.
9:53 So this is why you can see it waited three
9:55 times, which means this took about 15
9:56 seconds to generate.
9:57 And so the first
9:58 time it wasn't ready, it came back.
10:00 Second time it wasn't ready.
10:01 We checked in again.
10:02 And then the third time after
10:03 it waited again, it was done.
10:05 And so when that's done, what we end up doing
10:07 is we want to real quick analyze that
10:09 image to see what is actually in there.
10:11 So here's the actual image that it
10:13 created for us, which looks awesome.
10:14 It's a green portable neck fan.
10:15 She's in her garden, and it even matches the
10:18 writing, as you can see.
10:19 See, if we go
10:19 back to the source image, there's a
10:20 little bit of gold text right there.
10:22 There's these circles.
10:23 So, that looks really good.
10:24 And so, I basically grabbed
10:25 this open AI note and said, "Describe
10:26 what's in the image.
10:27 Describe the environment." Stuff like that.
10:29 And we get back, the image features a woman
10:31 standing outdoors in what appears to be
10:32 a garden.
10:33 The environment has raised
10:34 garden beds, blah blah blah.
10:35 The woman is wearing a light blue shirt.
10:37 She has her hair pulled back.
10:38 Around her neck, she has a green wearable device that
10:40 looks like a personal neck fan.
10:41 Blah blah blah.
10:42 So, the reason why I wanted
10:43 to analyze the image real quick is
10:45 because the next step is to use another
10:47 AI agent to create a video prompt.
10:49 And in order to create a video prompt that
10:51 is consistent with our image, not only
10:53 are we going to give it that image, but
10:54 we also want to give it a quick analysis
10:56 of what is actually in that image so
10:58 that its prompt is consistent.
11:00 And I have tried doing this without the
11:01 analyze image step and it still works.
11:03 But doing this, it just seems to be
11:04 higher quality.
11:05 So, anyways, we are
11:07 hitting another AI agent.
11:09 This time we're giving it a little bit more
11:10 information because keep in mind this
11:13 agent isn't just creating a video
11:15 prompt.
11:15 It's also creating the dialogue
11:17 that the person in that video is going
11:19 to say.
11:20 And so in order to do that, we
11:21 give it the product.
11:22 We give it the
11:23 product ICP.
11:24 We give it the product
11:25 features.
11:25 We give the video setting.
11:27 And here's where we give it the reference
11:28 image description.
11:29 So this is the
11:30 analysis of that image.
11:31 So it looks at
11:32 all that information and it says, "Okay,
11:33 what do I do with that?" And so now we
11:35 have our system prompt.
11:36 Once again, not going to read the whole thing, but you
11:38 guys can have access to it for free.
11:40 So, we said that your role as an expert UGC
11:42 video creator.
11:43 Your task is to generate
11:44 a prompt for an AI video model like
11:46 VO3.1.
11:47 Your goal is to create a
11:48 realistic selfie style video that
11:50 appears to be filmed by an influencer
11:51 using one hand to hold the phone and the
11:53 other to interact with the product.
11:55 The video needs to feel authentic, which is
11:57 why UGC ads are converting so well right
11:59 now because it's just real people
12:01 speaking real raw thoughts.
12:03 Anyways, we gave it some requirements like subject
12:05 and framing.
12:06 We talk about the visual
12:07 style.
12:08 We talk about tone and dialogue.
12:10 We give it some technical specs.
12:11 We give it some embedded elements in the prompt.
12:13 As you can see, we tell it that it's
12:15 going to get a reference image and it
12:16 needs to match that appearance and tone.
12:18 And then a real quick output prompt,
12:21 which is pretty concise.
12:22 And honestly, it looks like I might have accidentally
12:23 cut off the last sentence here, but
12:26 hopefully it still came out all right.
12:27 And so after that, we get this output.
12:29 You can see it starts off with a natural
12:30 selfie style 9x6 vertical video, 8
12:33 seconds long.
12:34 friendly middle-aged woman, gardener.
12:35 She's filming on her
12:36 phone.
12:37 She's wearing a light blue shirt.
12:38 And then down here is where you can see
12:39 what the dialogue says.
12:40 So, I love how
12:41 it's so light.
12:41 I almost forget it's on,
12:42 but it pushes a ton of air and the
12:44 battery lasts all afternoon.
12:45 So, that basically took the product features that
12:47 we had given it and it made a quick
12:49 little blurb for this influencer to say
12:52 in the video.
12:53 Now, we're going to take
12:54 this video prompt and we're going to
12:56 feed that into key once again and we're
12:59 going to send it to VO3.1.
13:01 So, here is our HTTP request where we're submitting
13:03 an order to VO3.1.
13:06 I'm going to open up this body, and you
13:07 can see that we have a prompt, which is
13:09 exactly what we just got from the lefth
13:10 hand side.
13:11 Now, the reason it looks all
13:12 messy like this is because I'm actually
13:13 using three replace functions.
13:15 I'm just going to replace new lines, which we
13:17 already talked about.
13:18 I'm going to replace double quotes right here.
13:20 It previously said, I love how it's so
13:21 light and pushes a ton of air, and this
13:23 was wrapped in double quotes, but we
13:25 took those away because that will also
13:26 break the JSON body.
13:28 And then I also had
13:28 to add another one.
13:30 Sometimes based on your chat model, it can be really weird
13:32 and output these double curly quotes
13:34 which don't actually get captured with
13:36 this previous replace function.
13:37 So I threw in this one just as an extra
13:39 guardrail which you guys will already
13:40 have all this set up.
13:41 So you should be
13:41 good to go.
13:42 But now we're basically
13:43 ensuring that our request will go
13:45 through.
13:45 You can see once again we're
13:46 giving it the image URL except for this
13:48 one is actually the image you know it's
13:50 this one that Nano Banana made for us.
13:52 And then for the model we're saying V3
13:54 fast.
13:54 We're using fast instead of
13:56 quality because it's cheaper and it's
13:57 faster and it's still really good.
13:58 And I know this says V3, but trust me, this is
14:00 using V3.1.
14:02 And then aspect ratio 9x6.
14:04 We wanted to make sure that it matches
14:05 the source image.
14:07 So now that we have
14:08 that, it basically does the exact same
14:09 thing.
14:10 It gives us back a order number
14:11 or some sort of ticket.
14:13 And we go ahead
14:13 and wait for 10 seconds right here.
14:15 We then go ahead and check back in on this
14:17 request, giving it our order number to
14:19 make to see if it's done or not.
14:21 And then you can see this happened eight
14:23 times.
14:23 And so we basically checked in
14:25 eight times.
14:25 So a total of 80 seconds.
14:27 So almost a minute and a half.
14:28 And then when we realize that the order is
14:30 actually done, we go ahead and we write
14:31 back to Google Sheets.
14:33 And let me show
14:33 you real quick how we set up this Google
14:35 sheet right back.
14:36 So we're using the
14:37 operation to update the row.
14:39 And we choose our sheet.
14:40 Of course, we shoot we
14:41 choose our document.
14:42 And then it says
14:42 that we have to match on a certain
14:44 column.
14:44 So what we decide to do is match
14:46 on the column number.
14:48 So you can see
14:49 right here, all of these rows have a
14:50 different unique number.
14:51 And when the workflow gets triggered, if we go all
14:54 the way back down to our initial get
14:56 rows, you can see that this row came in
14:58 and it was row number 10 or technically
15:00 row number 11, but the number was 10.
15:04 And so we're basically going to drag in
15:05 the number right here and say, okay, the
15:07 row that we want to update is the row
15:08 where the number column equals 10.
15:11 And so that's why it was able to write back
15:13 to this row right here, which you can
15:14 now see has been changed to status
15:16 finished.
15:16 And we have our finished file
15:18 right here.
15:19 because in Nitn we manually
15:21 set the status to be finished and then
15:23 we drag in the finished video URL that
15:25 we just got back from our key request.
15:29 And so that's basically the full process
15:31 and that's the most complicated one
15:32 because both the top one and the bottom
15:34 one are just doing reference image to
15:36 video rather than reference image to
15:38 image and then taking that image to
15:40 video.
15:41 So anyways, we just covered the
15:42 hardest one and then we'll look at the
15:43 other ones.
15:44 But real quick, let's just
15:45 go look at the actual output because of
15:47 course I'm very curious.
15:48 I love how it's
15:49 so light I almost forget it's on, but it
15:51 pushes tons of air and the battery lasts
15:55 all afternoon.
15:56 That's really impressive.
15:56 I was nervous to see because it's different from
15:59 someone holding a product.
16:00 She's actually wearing it.
16:01 But I mean, the
16:02 voice was really good.
16:03 The tonality was good.
16:04 I thought that this was an
16:05 impressive result.
16:06 But let's move on to
16:07 the next one, which is Sora 2.
16:09 So, what I'm going to do is go back into the
16:11 workflow and I'm going to execute it.
16:13 What this is going to do is pull in the
16:15 next And you can see it got pushed down
16:17 to Sora 2 because when it does this
16:20 check for the model, it knows that the
16:22 model was right here marked off as Sora
16:24 2.
16:25 So I'm honestly not going to spend as
16:26 much time in these next two flows
16:28 because you guys pretty much already
16:30 understand exactly what's going on.
16:32 We have this video prompt agent which once
16:34 again is looking at the product, the
16:36 product ICP, the product features, and
16:38 the video setting.
16:39 The only difference here is that it doesn't have a analysis
16:42 of the reference image because it'll
16:44 just be given that.
16:45 But the system prompt once again we basically say
16:48 you're an advanced UGC video creator.
16:50 You're optimizing for video prompts for
16:51 Sora 2.
16:52 Here is what you'll be given.
16:54 And we go over basically the same exact
16:56 headers.
16:56 Subject and framing, visual
16:58 style, uh tone and dialogue, technical
17:01 specs, prompt, construction, instructions, and an example output
17:05 prompt as you can see down there.
17:07 So what that does is it once again it
17:08 outputs us a video prompt.
17:10 And you can see in this one there actually are new
17:12 lines.
17:12 So, good thing we have that
17:13 guardrail baked in to get rid of those
17:15 new lines.
17:16 As you can see in this HTTP
17:17 request to key, we fill in our body by
17:21 saying, okay, the model we want to use
17:22 is store to image to video.
17:24 Here is the prompt.
17:25 And of course, we're using all
17:26 of those nasty replace functions once
17:28 again.
17:28 We've got the image URL, which
17:30 we're grabbing from the Google sheet,
17:31 which once again looks like this right
17:33 there.
17:33 And we're basically just sending
17:34 all of that over.
17:35 And so, it's going to
17:36 take that video prompt and it's going to
17:38 take that source image and it's going to
17:40 turn that into a video.
17:41 We're doing the exact same thing here where, you know,
17:43 we submitted the order, we have to wait
17:44 10 seconds and then check in and we're
17:46 going to go ahead and constantly be
17:48 checking until we know that our video is
17:50 done.
17:50 On average, I have been seeing
17:51 that V3 fast is finishing in anywhere
17:54 from a minute to 2 minutes.
17:55 And Sora 2 has been taking typically a little bit
17:57 more than that, maybe a minute and a
17:59 half to 3 minutes.
18:00 There are a few
18:00 things to consider.
18:01 Sometimes if you do
18:02 something like a cameo, it's going to
18:03 take longer.
18:03 If you've got a really long
18:04 video prompt, it'll take longer.
18:06 Also, what can influence it is how many people
18:07 in the world are trying to use keys
18:09 endpoints.
18:10 that can make it take longer,
18:11 too.
18:11 But typically, Google V3 fast is
18:13 faster, but it's the exact same flow
18:15 from there.
18:16 We're pulling it back in.
18:17 We're doing the same match to update the
18:19 row, and then we're just updating the
18:20 status of finished.
18:21 And we are putting
18:22 in the final video link into the Google
18:24 sheet.
18:24 There you go.
18:25 It looks like it
18:25 just finished up.
18:26 Let's go back into the
18:27 Google sheet.
18:28 It just got marked as
18:28 finished.
18:29 And we have our file.
18:30 So, let's take a look at the Sora 2 output.
18:33 Man, this thing is so light and the
18:35 airflow hits my face perfectly.
18:37 Keeps me cool while I work.
18:39 And the battery lasts
18:40 for hours, so I don't have to worry
18:41 about it dying out here.
18:43 Man, well, that was another really good
18:44 one.
18:44 A little bit confused where this
18:46 thing came from.
18:46 That was a bit of a
18:47 hallucination, but as you can see, this
18:49 was the reference image, and it looks
18:50 really good in this video.
18:52 Super authentic, and it looks like she's
18:53 obviously standing there taking a selfie
18:55 video.
18:55 All right, so the final one for
18:56 this example is V3.1.
18:58 So, I'm going to
18:59 go ahead and zoom out a little bit, hit
19:01 execute workflow, and it should shoot it
19:02 up this top branch now.
19:04 And I'm honestly not even going to break this down
19:06 because it's the exact same thing.
19:08 I copied over basically the exact same
19:09 system prompt.
19:10 I just switched out 10
19:12 seconds, which is how long the Sor
19:13 videos are, for 8 seconds for how long
19:15 the V3.1 videos are.
19:17 And then I switched
19:17 out sore 2 for V3.1.
19:19 But I wanted to
19:20 keep these prompts across all of these
19:22 flows as consistent as possible to kind
19:25 of limit the variability that we have in
19:27 order to truly see the power of these
19:28 models when we have as many things
19:30 consistent as we can.
19:31 So, I'm just going
19:32 to let this finish up and I will check
19:33 in with you guys when we get our
19:34 finished output from V3.1.
19:36 All right, so you can see that that one just finished
19:37 up.
19:38 Once again, took about 80 seconds.
19:40 Let's go ahead and make sure we got this
19:42 updated.
19:42 And let's take a look at the
19:44 V3.1 output.
19:46 I love how light this is turning.
19:47 It actually blows enough air to keep me
19:50 cool for hours while I'm working.
19:52 Okay, so it's not too bad.
19:53 I honestly think that right now my my order is this
19:56 exact order that we have here, which is
19:58 Nano plus V3.1, then Sora 2, then just
20:01 V3.1.
20:03 A lot of these VO ones have like
20:04 this super HDR weird orange glow looking
20:08 effect.
20:08 I'm not sure if you guys had
20:09 noticed that.
20:10 Here's another example of
20:11 the VO3.1.
20:12 It's not it's not terrible,
20:13 but just in comparison to some of the
20:15 other ones, it definitely looks a bit
20:16 more orange.
20:17 And then another thing I
20:18 noticed is this is the V3.1 example, and
20:21 I explicitly told it to not change
20:23 anything about the reference image
20:24 itself, but we can see the creatine
20:26 gummies is a jar and then in the video
20:28 it's a bag.
20:29 And so it does have the same
20:30 branding and same font as you can see.
20:32 He even actually, this is funny, he's
20:33 got the logo on his hoodie, which is
20:35 honestly a nice touch, but this is a
20:37 bag.
20:37 And in the source image, it was a
20:39 jar.
20:39 And the other creatine ones didn't
20:41 have a bag.
20:41 They had the the correct
20:42 jar, too.
20:43 And I know we didn't look at
20:44 the forearm strengthener example, but
20:46 this was another one where, for example,
20:47 Nano Plus V3.1.
20:49 Let me just show you
20:49 guys this one.
20:50 I love that the
20:51 adjustable resistance actually makes my
20:53 grip get stronger week to week, and it's
20:55 small enough to use right at my desk.
20:57 like super good, super natural, and the
20:59 product photo looked exactly like it did
21:01 that I gave it, which looked like this,
21:03 as you can see right here.
21:04 But then that same one with VO3.1 without Nano Banana.
21:08 Once again, it looks a bit it has some
21:10 weird shadows and it looks orange.
21:11 I love how the adjustable resistance
21:12 actually lets me progress without extra
21:14 gear.
21:15 But it the product photo also once again
21:17 does not exactly match the source image.
21:19 So that's kind of like a huge no no for
21:22 me.
21:22 And another thing that you guys will
21:24 notice when you send a source image and
21:26 you turn that into a video both with
21:28 V3.1 and Sora is the first frame is the
21:31 reference image.
21:32 And this is that first
21:33 creatine example we looked at with sore
21:35 2.
21:35 And you'll notice the very first
21:36 frame is once again the reference image.
21:38 And so when we do nanobanana plus Google
21:40 V3.1 it still does that but our
21:44 reference image is this.
21:46 So it just is
21:46 able to you know pick up right from here
21:48 and it looks way more natural.
21:50 So the point being you could kind of like
21:52 automate the content creation and you
21:54 could have it auto post as well with
21:56 this branch, but I probably wouldn't
21:58 auto post Google V3 like this or sore 2
22:01 like this because of that whole first
22:03 frame, first couple milliseconds thing.
22:05 Now some people argue that it's good
22:07 because then you have a thumbnail, but
22:08 then every single thumbnail on your feed
22:10 would look the exact same and that I
22:12 think would just come across really bad.
22:14 So that's why I think right now my
22:16 favorite is honestly Nanobanana plus
22:18 V3.1.
22:20 Now I think Sora would give it a run for
22:22 its money if it allowed you to upload a
22:24 realistic photo of a human.
22:25 Because if we go back to this first example with
22:27 the portable neck fan when Nano Banana
22:29 made that image, even though this is a
22:31 fake person and an AI generated image,
22:33 if you tried to feed that into Soore 2,
22:35 it would block you because of content
22:37 restrictions.
22:38 So that's why this combo
22:39 has my vote right now.
22:40 But another thing to consider, of course, is cost.
22:43 So comparing these options, I guess there
22:45 were technically three, but let's just
22:46 look at these two because V3 is in here
22:48 for both.
22:49 But option one is nanobanana
22:50 plus V3 fast.
22:52 When you're going through
22:53 KI, which is the one that we were on
22:55 right up here, a nano banana image is
22:57 going to cost you 2 cents.
22:58 So not bad.
22:59 And an 8second V3 fast video will cost
23:01 you 30.
23:03 So total cost per piece of
23:04 content with this system would be 32.
23:07 Now, for option two, if you're using
23:09 Sora 2 and you're going through KAI,
23:11 which is the cheapest I've seen it, so
23:12 definitely do that.
23:13 It will cost you 15
23:15 cents for 10-second video.
23:16 So, really not bad at all.
23:17 About half the cost of
23:19 VO3 fast.
23:20 So, option one is roughly two
23:21 times more expensive than Sora 2.
23:23 So, the question is, is it two times higher
23:26 quality and will it result in two times
23:28 more conversions?
23:28 Or maybe it's not
23:29 exactly a two times match because it's a
23:31 lot cheaper than how much money you'd
23:33 make per sale or whatever it is.
23:35 But there is a bit of a trade-off there
23:37 because you can essentially make double
23:38 the amount of short form UDC content
23:40 with SOR 2 for the same price as using
23:42 Nano Banana and V3 Fast.
23:44 So anyways, I just wanted to sort of give you guys all
23:46 the info, give you the template, show
23:48 you the system, and explain the
23:49 differences between these two models.
23:51 And of course, I'm really really bullish
23:52 on all of this because the fact of the
23:54 matter is you guys can get in here and
23:56 make these prompts better.
23:57 You can play around with different chat models if you
23:59 want.
23:59 We used GPT5 Mini for all of them
24:01 as you can see here.
24:03 And think about in
24:05 6 months from now, a year from now, how
24:07 much better these models will be when
24:08 Sora 4 comes out and when V4 comes out.
24:11 They're just going to get better and
24:12 better and better and cheaper and
24:14 cheaper and cheaper.
24:15 Anyways, I don't want this video to go too long, but I
24:17 did say that you guys could access this
24:18 entire template for free.
24:19 So, all you have to do is join my free school
24:21 community.
24:21 The link for that will be
24:22 down in the description.
24:23 There will also be a full setup guide right over here
24:25 when you download this template.
24:26 And when you join my free school community,
24:28 this is what it will look like.
24:29 You'll just have to click on YouTube resources
24:30 or you can search for the title of this
24:32 video.
24:33 And when you click on the post
24:34 associated with the video, you will have
24:36 right here the JSON file to download and
24:38 you import that into niten and any other
24:40 guides or PDFs that you need.
24:42 I will also write here similar to this post, I
24:44 will include the link to copy this
24:46 Google sheet template so that you guys
24:48 can plug everything in and have a very
24:50 minimal amount of custom configuration
24:52 and just start, you know, producing
24:54 these types of results.
24:56 And if you want
24:56 to see me actually build this system
24:57 live and just kind of talk about what
24:59 I'm doing, why I'm doing it, and my
25:01 thought process, then definitely check
25:03 out my plus community.
25:04 The link for this
25:04 will also be down in the description.
25:05 We've got a great community of over 200
25:08 members who are building with naden
25:09 every day, asking questions, sharing
25:11 what they're learning, helping each
25:12 other out, and a lot of these people are
25:13 building businesses with NAND right now.
25:16 We've also got a classroom section with
25:17 three full courses.
25:18 We've got agent zero, which is the foundations for
25:20 beginners.
25:21 We have 10 hours to 10
25:22 seconds where you learn how to identify,
25:23 design, and build time-saving
25:25 automations.
25:26 We have one person AI
25:27 agency which is for our premium members
25:29 laying the foundation to build a
25:31 scalable AI automation business.
25:32 And then here's the course I was just
25:34 talking about with projects where we
25:35 actually dive into step-by-step setups
25:38 of practical workflows that you can
25:39 actually use.
25:40 Probably one of the best
25:41 ways to actually learn NN in and out.
25:43 We also have one live call per week.
25:45 They're super fun.
25:46 Everyone gets on there and we ask questions and we have
25:48 some cool conversations about the space,
25:49 the industry, all this kind of stuff.
25:51 So, I'd love to see you guys in those
25:52 live calls in the community.
25:53 But that's going to do it for today.
25:54 So, if you enjoyed this one or you learned
25:56 something new, please give it a like.
25:57 It definitely helps me out a ton.
25:58 And as always, I appreciate you guys making it
26:00 to the end of the video.
26:01 I'll see you on
26:01 the next one.
26:02 Thanks everyone.