You're the owner. You don't need a Super Bowl spot. You need four local ads this month that a tired person will stop on, that match a landing page you can honor, and that you can shoot on a phone in the lot. Missed-call. Seasonal. Review. Offer. That's the roster. ChatGPT writes the first draft of the script. You shoot it. Canva or CapCut cuts it. A human still hits publish, and a human still refuses the fake results and the stock-testimonial lies the model will happily hand you.
This is the demoted version of "cinematic ads." The first half-second still matters. Taste still matters. What does not matter for a two-truck HVAC shop or a one-doctor practice is a storyboard tool, a fake Hollywood pipeline, and a week of generating drone shots of a house you don't service. Weekly ads beat a once-a-year "brand film" you never post.
Effectiveness. The ads exist to book diagnostics, new-patient exams, seasonal tune-ups, or whatever you actually sell this month. Efficiency. Three hours an ad, not a production company. Quality. No invented savings, no "our customers save $4,000" unless that's a number you can stand behind, no actor pretending to be last Tuesday's patient. If the landing page still lies, stop shooting.
Who it's for
You run HVAC, dental, or another local shop that already spends something on Meta or Google, or that should be posting to the Google Business Profile and Instagram every week and isn't. You can hold a phone. You can tell the truth about an offer.
You are not a commercial director. If you have an agency, this playbook is what you hand them so they stop sending you twelve "concepts" and no booked jobs.
What you get when done
Four finished ads — scripts, shot lists, captions — in one month. A simple quality gate you run before anything ships. A folder of B-roll you can reuse next month (truck door, front desk, the real operatory, the thermostat on a wall you had permission to film). A rule: the ad and the page say the same number.
Time and tools
One ad a week. Week 1 missed-call, week 2 seasonal, week 3 review, week 4 offer. About 45 minutes to script, 45 minutes to shoot, 45 minutes to cut and post, 45 minutes of buffer for the part that always overruns.
Tools:
- ChatGPT or Claude for hooks and scripts. You will throw away most of them.
- Phone. Horizontal for YouTube/Google, vertical for Reels/Shorts/GBP. Shoot vertical first if you can only do one. Lock exposure. Clean the lens.
- Canva (static + simple video) or CapCut (the actual editor I want you in). You do not need a "generative film studio" to advertise a $89 diagnostic.
- The offer in one sentence, written before you prompt.
- Real reviews you have permission to quote, or a customer willing to be on camera. If you have neither, the review ad is you reading a public Google review you did not write, with the name the customer already put on Google — still no fake stars.
Optional paid boost after the organic version exists. Don't boost a lie.
Prerequisites
A landing page or GBP post that can take the click this week. Capacity to do the work you're advertising (if hygiene is booked out six weeks, do not advertise a new-patient exam you cannot seat). The four-line offer pad from below. A person who can approve claims — you.
The quality gate (read this before Step 1)
Write this at the top of the ad folder:
- No fake results. No "$1,200 average savings," no "500 five-star reviews" if you have 40, no "same-day install" in July if you cannot staff it.
- No stock-testimonial lies. No Canva stock nurse saying she "has been our patient for 12 years."
- No fabricated Google reviews in the ad. We never write fake reviews, on Maps or in a Meta caption.
- The number in the ad is the number on the page.
- A human publishes.
If the model drafts a testimonial, you either get a real customer on camera or you cut it.
Step 1 — Write the offer and pick four hooks
Why. Faster creative on a fuzzy offer is how you buy clicks into a story you don't tell. The four ads share one brain: what they buy, what they pay, what happens in 48 hours, what you will never claim. Then each ad is a different door into that same brain.
Exactly what to do.
On a pad, four lines:
- What they buy (diagnostic, new-patient exam, tune-up, the SKU).
- What they pay, and what they don't.
- What happens in the next 48 hours after they tap or call.
- What you will never claim.
Then pick this month's four:
- Missed-call ad — you pick up, after hours, or you text back. Only if that's true because you installed the catcher, or you staff a phone. Don't advertise a night operator you don't have.
- Seasonal ad — heat, cool, allergy, back-to-school hygiene, whatever the weather actually is.
- Review ad — a real review, or a real customer. Proof, not a scripted "I had a great experience" from your cousin.
- Offer ad — the $89 / $99 / tune-up special. The number is the star.
I am making FOUR local ads this month for [shop], a [HVAC / dental / service] business in [city].
The offer (do not change the numbers):
1. They buy: [ ]
2. They pay / they don't: [ ]
3. Next 48 hours: [ ]
4. Never claim: [ ]
Audience: people in [zips] on [phone Reels / Google / GBP].
Give me, for each ad type (missed-call, seasonal, review, offer):
- 3 hooks that work in the first half-second (words ON SCREEN + first spoken line)
- 1 recommended hook per type, with a one-sentence why
- A 15–20 second script (voiceover or on-camera)
- A 6-shot list a non-filmmaker can shoot on a phone in a parking lot or waiting room we have permission to film
- Caption and first comment
- A "kill list" of lines that would violate my never-claim list
Constraints:
- No cinematic horror parodies. This is a local shop.
- No fake stats.
- No stock-testimonial language.
- Humor is allowed if I would say it to a neighbor. Cringe is not "edgy."
- Ask me 4 questions before you write if the offer is incomplete.
Pick one hook per ad. Not ten. If none of the three make you feel anything — laugh, recognition, "that's my Tuesday" — run the prompt again with a harsher never-list.
Done looks like. Four hooks written on a card. Four never-claim lines. You have not opened Canva yet.
Step 2 — Scripts and shot lists you can actually shoot
Why. A script without a shot list becomes you talking at a desk for 40 seconds. That's how local ads die. You need six shots, a first half-second that isn't your logo, and a last frame that is the number and the next step.
Exactly what to do.
Copy the four scripts below, then run the prompt to swap in your facts. Shoot the list in order. Hold each shot 4–5 seconds so you can cut.
Missed-call — script (HVAC-flavored, steal it):
On screen at 0:00, big type: "We called. You didn't." Voice or owner on camera: "If your AC died at 8 p.m., voicemail is not a plan. Text or call [shop]. We pick up or we text back. Diagnostic is [price]. We don't quote the repair until we see it." Last frame: phone number, hours, "no quote from a script."
Missed-call — shot list:
- Phone on a kitchen counter, missed-call screen (your own phone, not a customer's). 0.5 second punch in.
- Thermostat or a dark living room you have permission to film — or the van at dusk in your lot if you don't have a house.
- Your hand returning a text on the shop phone (OpenPhone screen is fine, blur other customers).
- You or the CSR, one sentence to camera, not smiling like a realtor.
- The truck door or the office door with the real name.
- End card: number + price + hours. Canva is fine.
Seasonal — script (dental-flavored, steal it):
On screen: "School starts. Hygiene doesn't." "If the last cleaning was 'sometime last year,' we have [day] evening hours. New-patient exam is [price]. You'll know the out-of-pocket before we start. We don't promise insurance covers everything."
Seasonal — shot list:
- A backpack or a calendar page (your office, not a stock classroom of kids you don't have releases for).
- Empty hygiene chair, lights on.
- Clock or "evening hours" written on the real door schedule.
- Front desk, one line to camera.
- Hands on a keyboard booking a slot — blur the PMS.
- End card: exam price, evening day, phone.
Review — script:
On screen: the star count of that review, and the first five honest words. You: "This is a real Google review. We didn't write it. If we mess up, we fix it. If you want the same kind of visit, here's how to book." Do not read a review that mentions a clinical outcome you wouldn't want as a promise. Do not re-record a customer who didn't agree to be in an ad — public text on Google is citable; their face is not.
Review — shot list:
- The actual review on your phone, cropped, name as Google shows it.
- The work the review referred to if you have a photo you already had permission for — otherwise the shop exterior.
- You, to camera, one sentence. No "we're humbled."
- The person who was named (hygienist, tech) if they agree — a nod, not a speech.
- The booking next step on a screen.
- End card: "Real reviews. We don't write them." + phone.
Offer — script:
On screen: the price, huge. " [Price] diagnostic / new-patient exam. [Waiver or what's included]. Book this week. We will not honor this number if you saw a different number on a random blog — this is the number."
Offer — shot list:
- Price on a handwritten card, first frame. Not a logo.
- What they actually get (gauges on a unit, a new-patient clipboard — not a before/after mouth you don't have consent for).
- "What it is not" on a second card (not a full system, not a full treatment plan).
- You, one sentence.
- Phone number in the next shot, spoken too.
- End card: price + "this week" + URL or tap-to-call.
Rewrite these four scripts and shot lists for [shop] using ONLY these facts: [paste four lines + hours + phone + what we never claim].
Keep each ad 15–20 seconds. Keep six shots. Note which shots are vertical (Reels) vs which can be cropped.
For each ad, add:
- On-screen text, word for word, under 8 words per card
- Captions for Meta and for Google Business Profile
- The landing page headline that MUST match the ad
If a shot needs a location I didn't give you, replace it with a lot / front desk / truck shot. Do not send me to a customer's house.
Done looks like. Four scripts printed. Shot lists in the phone's notes. You know where you're standing.
Step 3 — Shoot like a non-filmmaker (one hour, one location)
Why. Most local ads fail at the shoot, not the prompt. Too much talking. Dirty lens. Indoor fluorescent flicker. Logo first. You are going to shoot six clips per ad, in the lot or the waiting room, in one hour, with whoever is on shift.
Exactly what to do.
- Clean the lens. Turn off the beauty filter. 4K if the phone will, 1080 is fine.
- Face a window or go outside. Don't stand under the waiting-room can lights if you can help it.
- First frame is the hook, not the logo. Logo is last, small.
- Record each spoken line three times. You will hate take one. Take two is usually the one.
- Hold still. If you move, move slowly. "Cinematic" zooms from a walking owner look drunk.
- Get 10 seconds of quiet B-roll you didn't script: van door, name on the shirt, the real schedule on the wall. You'll need it when a take is unusable.
- Get a release if a customer's face or house is in the frame. If you don't have one, don't use the clip. Exterior of your building is easier.
Do not generate a fake customer with an image tool and pass them off as a patient. That's the stock-testimonial lie in a new coat. Quality.
Done looks like. A camera roll folder named ads-[month] with six clips per ad plus B-roll. Nothing published yet.
Step 4 — Cut in CapCut or Canva, then match the page
Why. The editor is where the first half-second is decided. Cut the breath before the first word. Put the on-screen text in large type. Captions burned in because sound is off in most feeds. Then screenshot the ad next to the landing page. If a stranger can't match them in five seconds, you are not done.
Exactly what to click (CapCut):
- New project, 9:16 for Reels/GBP, duplicate later for 1:1 if you need it.
- Drop shots in list order. Cut each to 1.5–3 seconds except the talking-head sentence.
- Auto-captions, then fix the words by hand. The model in CapCut will miss your shop name.
- On-screen hook in the first 8 frames. White text, dark backing, no cursive.
- End card 2 seconds. Number is readable on a phone in daylight.
- Music: quiet or none. If you add it, it doesn't fight the words. Don't use a trending audio that undercuts a tooth-pain ad.
Canva path if you refuse CapCut: a 15-second slideshow of the six stills + voiceover recorded on the phone. Still better than a stock handshake.
Here is my script and the on-screen text I will use: [paste].
Write:
- A cut list with timestamps (0.0–0.5 hook, etc.) for a 15–20s ad
- Caption text, 3 lines, no hashtag stew (max 3 hashtags, local)
- Primary text for Meta (125 characters) and a longer 300-character version
- 5 Google RSA headlines (30 characters) and 3 descriptions (90) that do not add claims
- The exact landing-page H1 that must match
Flag any line that implies a result we didn't measure.
Before publish: open the page. Read the H1. Look at the ad. Same price. Same promise. Same hours. If ads are on and you cannot take the work this week, pause. Don't "just let it run."
Done looks like. Four exported videos. Four matching headlines on the page or GBP post. A human watched each once with the sound off.
Step 5 — Post, boost only what can take a call, review weekly
Why. Ads that never ship don't count. Ads that ship into a full book or a dead phone leak money. Effectiveness is booked jobs. CTR is a vanity score unless the phone is part of the loop.
Exactly what to do.
Week 1: missed-call organic on GBP + Instagram/Facebook. If you pay: a small boost to the zips you actually run, not the whole metro "for reach."
Week 2–4: same, rotating the asset. Don't change the offer in the middle of the week because you got bored.
Every Friday: how many calls, form fills, or bookings named that ad. If you can't track, ask "how did you hear" for ten days like you mean it.
Negative queries if you're on Google Search: dump search terms, kill DIY / salary / "free clinic" / "how to replace a capacitor yourself" if that's not your customer. A human adds the negatives. The model can highlight. It does not auto-add.
Done looks like. Four ads live in a month. One Friday note with a number you care about (booked jobs, not likes). At least one ad you killed because the page or the phone couldn't support it.
Worked example (hypothetical HVAC shop)
Hypothetical: Ridge Air. $4,000 a month already going to Google with a "trusted local HVAC" headline. Landing page is the handshake. They have installed the missed-call catcher from the other playbook, so advertising after-hours pickup is allowed this month. Diagnostic is $89, waived if they do the repair. They will not claim 30-minute arrival.
Week 1 missed-call. Hook: "We called. You didn't." Shot in the lot at dusk, shop phone, owner one sentence. CapCut captions. GBP post + a Meta boost in three zips. Page H1 changed the same afternoon to "After-hours: we text back. Diagnostic $89."
Week 2 seasonal. It's cooling season. Tune-up ad. They almost used a stock family sweating on a couch. They didn't. Van, filters on a shelf, price of the maintenance they actually sell.
Week 3 review. A Google review that named a tech and said "they showed up when they said." Owner reads the first line, says we didn't write it. Tech agreed to be in the nod shot. No invented "200 five-stars."
Week 4 offer. $89 on a card, first frame. "Not a new system." End card with the number. They paused the "trusted local" RSA headlines and replaced three with the diagnostic price. Search terms: they added DIY and "training" as negatives after a human scanned the list.
They did not get "300 million views." They got a month of assets that told the same story as the page, and a phone that was actually part of the promise. Hypothetical. Your Friday number is the one that counts.
Failure modes / what NOT to automate
Do not auto-publish from a tool that generates 30 ads a day. You will ship a warranty you don't write.
Do not use generated faces as customers.
Do not advertise after-hours pickup if voicemail is still the overnight plan.
Do not use a child's face, a patient's mouth, or a house interior without a release.
Do not let the model write "we beat any quote," "insurance covers it," "same-day replacement," or "pain-free guarantee."
Do not spend the month picking music.
Do not run the offer ad if the book is full. Pause. Seasonal can wait a week. Empty promises cannot.
Do not measure success in comments from your sister.
FAQ
Can I just use AI video of a talking actor? You can, and it usually looks like an actor. If you do it, they cannot claim to be your patient or your tech. A talking owner on a bad phone camera beats a synthetic neighbor. Quality.
What if I have no reviews yet? Skip the review ad. Do two offer ads with different hooks, or a "what happens on the visit" ad using the how-to from the ChatGPT playbook. Don't write the first five yourself.
Do I need an editor? If you can cut in CapCut, no. If the ads are for a med spa or a shop with a real budget and you hate the cuts, hire a human for the last mile — a local editor, not a cinematic studio. Taste and timing, one hour.
Should the ads be funny? If you would say it to a neighbor. A missed-call ad can be blunt. A tooth-pain ad should not be a prank. When in doubt, be clear. Clarity books. "Viral" that doesn't book is a hobby.
Screen-recording notes (8–12 min, lo-fi)
- 0:00–0:40 — "Four ads this month. Phone. No fake results." Hold the four-line offer pad to camera.
- 0:40–3:00 — Prompt from Step 1. Kill a fake statistic out loud.
- 3:00–6:00 — Show one shot list. Cut to you in a parking lot filming shot 1 (or stock of you filming — lo-fi, handheld).
- 6:00–8:30 — CapCut timeline: hook at 0.0, captions, end card. Sound off, then sound on.
- 8:30–10:00 — Ad next to landing page. Same price. GBP post.
- 10:00–end — Quality gate on paper. "free Mini Margin Check or $1,500 Margin Scan. No free audit."
