UGC ADS / SAAS

SaaS UGC video ads: scripts that open a real account

A B2B viewer sorts by job title in the first line and by migration pain in the fifth. Three script shapes, twelve hooks and the screens that answer both.

Make this adJump to the scripts

A SaaS UGC ad sells to a role, not a demographic, so the first line names the job and the second names the tool being replaced. The proof is a real account with messy data in it: the spreadsheet you deleted, the import that took four minutes, the per-seat price, and the meeting that no longer happens.

What a saas UGC ad has to do

Name the job title in the first line

"I run ops at a forty-person agency" sorts an audience harder than any targeting option. A viewer decides whether this is their problem by recognising the job, not the industry. State the role, the team size and the day of the week the pain lands on.

Open a real account, not a demo workspace

Demo data is the B2B equivalent of a filter. Show two hundred rows, inconsistent client names, an abandoned column someone added in March, a status that has been "in review" since July. Blur what you must. A workspace that looks maintained by humans is the thing that reads as true.

Show what it replaced, in the same shot

Nobody in B2B buys a new category, they buy a replacement. Put the old thing on screen: the shared sheet, the Slack thread with fourteen replies, the standing Monday meeting in a calendar. Then show the same job done in the tool. The comparison carries the ad, not the feature list.

Answer the migration question on camera

The reason a switch does not happen is rarely the product. It is who has to move the data and what breaks while they do it. Say how the data went in, how long it took, whether you ran both systems in parallel, and what did not come across cleanly.

Put the seat price on screen and hand over the forwarding sentence

The person watching often cannot approve the spend. Show the pricing page with the per-seat number and the seat count you use, then say the one sentence they can paste into a message to their manager. That sentence is a deliverable, and most SaaS ads skip it.

Land the click on the feature, not the homepage

If the ad showed a reporting workflow, the click should open the reporting page with that screenshot near the top. A homepage forces the viewer to find the thing again from scratch, and the ones who were only half convinced do not bother.

Script skeletons

Three saas UGC scripts

Beats with timecodes, then a written-out example. Swap the product name and the detail, keep the shape.

The spreadsheet I deleted

A tool replacing a shared sheet that a team has outgrown but nobody has the authority to kill.

  • 0-3s | Hook: the sheet on screen, scrolling, voice names the row count and the job title
  • 3-9s | The break: show the exact place the sheet fails, the merged cell or the version conflict
  • 9-17s | The replacement: the same job done in the tool, one continuous screen recording
  • 17-24s | Migration: how the rows got in, how long it took, what you had to fix by hand
  • 24-29s | Close: seat price on screen, plus the sentence to send to whoever approves it
Written out

Product: Formwork, an intake and project tracker for design studios (fictional)

[Screen recording. A spreadsheet scrolling fast. Client names blurred.] "Two hundred and eleven rows. I run studio ops for eleven designers."

[Stops on two rows with the same client name and different statuses.] "Two people edited this on Tuesday. Now the same job is live and archived."

[Switches to Formwork. Drags a job card. A status updates, an owner avatar appears.] "Same job, one card, one owner. It cannot be in two states."

[Shows an import screen, a row count, a small error list.] "The import took four minutes. Nine rows had no owner and I fixed those by hand."

[Pricing page, cursor on the per-seat line.] "Nine dollars a seat, eleven seats. Tell your director it replaces the sheet, not a hire."

Spoken word count: 91. Runtime: about 29 seconds.

Friday, start to finish

A product with too many features, sold by showing one role's worst recurring hour.

  • 0-3s | Hook: name the recurring task and how long it used to take
  • 3-10s | The old hour: screen-record the manual version, sped up only where nothing changes
  • 10-18s | The new version: the same output produced in the tool, at real speed, no cuts
  • 18-24s | The catch: name one thing that is still manual, so the rest is believable
  • 24-28s | Close: what the click opens, and the per-seat price
Written out

Product: Cadence Board, recurring client reports for agencies (fictional)

[Face to camera, open-plan office noise behind, laptop turned sideways.] "Every Friday I spent about forty minutes rebuilding the same six client reports."

[Screen recording: tabs, copy, paste into a slide, resize a chart, repeat.] "Export, paste, resize, and one of them always had last month's date on it."

[Cadence Board. Picks a template, selects six clients, hits generate. Six reports appear.] "Now it is one template and a client list. That is real time, I did not cut it."

[Opens a report, points at a section still empty.] "The commentary is still me typing. It does not write that and I would not trust it if it did."

[Pricing page.] "Twelve a seat. We run four seats on the account team."

Spoken word count: 95. Runtime: about 29 seconds.

The objection reversal

A category with an entrenched incumbent, where the honest story is that you refused to switch twice.

  • 0-3s | Hook: say you did not want this tool and give the reason
  • 3-9s | The two failed attempts: what stopped the switch the first and second time
  • 9-16s | What changed: the one feature or import that removed the blocker, on screen
  • 16-23s | The team test: show that other people actually opened it, with a real activity view
  • 23-28s | Close: what you kept from the old system, then the link
Written out

Product: Latchdesk, a client portal (fictional)

[Desk, second monitor visible, arms folded.] "We tried to move off email twice and backed out twice."

[Holds up two fingers, then screen recording of a cluttered inbox.] "First time the clients would not log in. Second time the file history did not come across."

[Latchdesk. A client opens a link with no password and uploads a file.] "Now the client link needs no account. That was the whole blocker."

[Opens an activity list showing nine names with timestamps over a week.] "Nine of our eleven clients used it last week. That is the only number I cared about."

[Leans in.] "We still send the invoice by email. Everything else lives here now."

Spoken word count: 88. Runtime: about 28 seconds.

First three seconds

12 hook lines

The opening line carries the ad. These are written to be said out loud by a person holding a phone.

  1. I run ops for a forty-person agency and I just deleted a sheet with two hundred rows.
  2. We tried to switch twice and backed out twice. Here is what finally changed.
  3. This is our actual board, client names blurred. It is a mess and that is the point.
  4. Nine dollars a seat, eleven seats. That is the entire pricing conversation.
  5. The import took four minutes and I timed it on my phone.
  6. Our Monday meeting was forty minutes long. It is now a link in a channel.
  7. If your team will not open it, none of the features matter.
  8. I am not in sales. I am the person who has to run this every Friday.
  9. This is the exact sentence I sent my finance director to get it approved.
  10. We ran both systems in parallel for two weeks because I did not trust it.
  11. It does not do the thing everyone asks for. Here is what it does instead.
  12. Three tabs, and I have never opened the third one.
Casting

Three creators who fit this product

The wrong face kills a good script. Match the person to the buyer, not to your taste.

Persona

Greg, 44

A finance and operations director in a home office with a second monitor behind him. Arms folded, dry delivery, talks in seats and approvals rather than features. Credible because he is visibly the person who says no to software, so a recommendation from him carries the weight of a reversed decision.

Persona

Simi, 33

An agency account lead filming at a desk in an open-plan office with background noise left in. Laptop turned toward the camera, talks about Fridays and client reports. Credible as a practitioner, the person who has to run the process rather than the one who chose the tool.

Persona

Callum, 28

A solo founder on a laptop at a kitchen table late at night, one lamp, no set dressing. Talks about the import, the workaround and what he still does by hand. Credible for bottom-up adoption, where one person tries a tool before anyone signs a contract.

What does a SaaS ad have to show that a consumer app ad does not?

A consumer installs alone. A B2B viewer is imagining a rollout, a bill and a colleague who will refuse to use it.

The objectionThe shot that answers itThe sentence that fails
"We already have a tool for this"The old tool and the new one doing the same job in one recording"Better than the alternatives"
"Moving the data will ruin my month"The import screen, a row count, the errors you fixed by hand"Migration is simple"
"My team will not use it"A real activity view with names and timestamps across a week"Loved by teams everywhere"
"I cannot approve this"The pricing page with your seat count, plus a forwarding sentence"Contact us for pricing"
"It will not fit our process"The one thing that is still manual, named out loud"Fully customizable"

Naming a limitation is the cheapest credibility in B2B, because every viewer knows the tool has one.

Where should a SaaS UGC ad send the click?

Send it to the screen the ad showed. If the video walked through recurring reports, the click opens a reporting page whose first image is that same view, with the same labels.

The second rule is to keep the pricing one click away, visible without a form. A viewer who cannot find a number assumes the number is bad, and in B2B that assumption ends the session.

The third is to give the page something forwardable. A short summary, a screenshot, a per-seat price. The person who watched your ad may not be the person who buys, and the page has to survive being pasted into a message with the line "what do you think of this".

How do you make a SaaS UGC ad with an AI creator?

The useful move in B2B is one script, several roles. The same workflow means something different to a finance director and to the person running the process, so you want the ops version, the founder version and the finance version.

On MakeViral's AI creator page each persona costs 2 credits on Nano Banana 2 or 1 credit on Z-Image, and a talking lip-synced video on Kling Avatar 720p costs 2 credits per second of speech, from 3 to 15 seconds. Three personas at 2 credits each plus a 12-second read for each one is 6 plus 72, so 78 credits: about $7.80 on the $49.99 plan for 500 credits, and about $5.20 on the $199.99 plan for 3,000.

Then stitch each generated read in front of your own screen recording for 2 credits per stitch. Do not let a generated creator show your product: an invented interface is a lie about a thing the buyer will evaluate on a call. MakeViral does not connect to your ad account, so you download the file and upload it yourself. See the AI UGC creator tool.

Claims to keep out of the script

B2B claims get checked by a procurement person with a list. Write the script so it survives that.

  • Do not invent uptime. No "99.99% uptime" unless it is in a published agreement you can point to.
  • Do not say "guaranteed" about a business result, and do not put an ROI multiple in a script. An invented figure here is a contract problem, not a marketing one.
  • Do not say "bank-level security", and do not mention a certification or compliance standard the company has not completed. If the badge is not on the site, keep it out of the ad.
  • Do not say "unlimited" for anything that has a fair use limit in the terms.
  • Do not put real client names, contact details, revenue figures or messages on screen. Blur them, and get written permission before showing a logo.
  • Do not claim a competitor lacks a feature. Compare your own before and after instead, which is the comparison you can actually evidence.
  • Do not say "cancel anytime" if the plan is annual.

A creator you generate is not a real user of your product, so the script is your pitch and not a customer story. Do not give a generated person a job title and a company and present the result as a reference. Disclosure rules for synthetic creators and paid endorsements change, so check the current requirements on the platform you buy the ad on before it runs.

FAQ

SaaS UGC ad questions

Do UGC style ads work for B2B software?
They work when the creator is recognisably a practitioner rather than a presenter. The format that travels is a person with a job title showing their own messy workspace. What fails is a consumer influencer format pointed at a business product, because the viewer is judging competence, not likeability.
Should the ad show a real account with real data?
Yes, with client names and figures blurred. Demo workspaces read as marketing and are dismissed instantly. Two hundred inconsistent rows with a column nobody maintains is more persuasive than any clean dashboard, because it looks like the viewer's own account.
How long should a SaaS UGC video ad be?
Twenty-five to thirty-five seconds. B2B needs the extra time for the migration answer and the price, both of which are the reason a viewer does not convert. Cut the feature tour and the founder story before you cut either of those.
What do I do about the person watching not being the buyer?
Write one line for them to forward. Put the per-seat price on screen, say what it replaces, and phrase the close as a sentence they can paste to a manager. Treat the viewer as an internal advocate rather than a purchaser and the script changes shape.
Can an AI creator play a job role convincingly?
For the spoken hook and the framing, yes, and generating an ops version and a finance version of one script is cheap. For the product itself, no. Record your own screen, keep the generated part to the talking head, and never present a generated person as a named customer.

Make a saas UGC ad

Pick a creator, paste the script, and get a talking video. Two credits per second on Kling Avatar, two credits for the creator portrait.

Cancel anytime. 14-day refund window on unused credits.