Script template
Cold call script for SEO services (and local SEO)
This is a branching cold call script for agencies and freelancers selling SEO, built around the thing a business owner can check for themselves: where they show up on Google. It works best for local SEO (service businesses that live or die by the map results), and includes an opener for B2B and national SEO too.
14-day free trial · No credit card required
It's written as a Call Flow: seven phases, one line per card, and a branch label on every card. Copy it as it is, or build it in BeastCaller and run it for your team.
What's inside: three openers and a gatekeeper line · why the prospect is losing to a competitor · six discovery questions · a pitch that doesn't promise rankings · two answers each to the 8 objections SEO sellers hear most · the close · a voicemail to read live and a follow-up email.
Jump to: Opener · Discovery · Objections · Close · Voicemail
Before you dial: five minutes of prep per lead
SEO is easy to pitch vaguely and hard to pitch specifically. Specific wins.
- Search what their customers search. "[Service] [City]" and "[service] near me", from their area if you can (an incognito window or a local rank-check tool). Note where they appear in the map results and who's above them.
- Compare their Google Business Profile with the top result. Number of reviews, primary category, photos, opening hours, website link.
- Check their website. Is there a page for each main service? Pages for the towns they serve?
- Write one observation with a competitor's name in it. "[Competitor] shows in the top three map results for 'emergency plumber [City]'; you don't show at all."
- Decide your next step. This script books a 15-minute screen share: the searches, where they are, where the competitor is, and the first three fixes.
How to read this script
- Every card has an ID: O opener, G gatekeeper, R reason, D discovery, P pitch, X objection, C close, V voicemail.
- → tells you where to go next.
- [Brackets] are filled in live from your prep notes.
- Say it in your own words. The wording is a guardrail, not a teleprompter.
Phase 1: Opener
O1 · Map-results opener (local businesses, default)
"Hi [First name], this is [Your name] with [Agency]. I'll be honest, it's a cold call, but a specific one. I searched '[service] in [City]' this morning. [Competitor] shows up in the map results and [Company] doesn't. Do you have 30 seconds for why that's happening?"
- "Sure" / "Why?" → R1
- "We already have an SEO company" → X1
- "Not interested" → X8
- "Busy" → "No problem, when's a better time?" Log the callback and end the call.
- A receptionist answers → G1
O2 · Ranking-gap opener (they show up, just not near the top)
"Hi [First name], it's [Your name] from [Agency]. You're showing at about number [X] in the map results for '[service] [City]', behind [Competitor] and [Competitor]. The gap looks fixable. Can I take 30 seconds to tell you what I saw?"
→ Same branches as O1
O3 · B2B or national SEO opener
"Hi [First name], [Your name] with [Agency]. When your buyers search '[keyword]', [Competitor] is on page one and [Company] is on page [two]. I looked at why. Have you got 30 seconds?"
→ Same branches as O1
G1 · Gatekeeper
"Hi, this is [Your name] with [Agency]. Who looks after your Google listing and website: is that [Owner name]?"
- Puts you through → O1
- "What's it about?" → "It's about where [Company] shows on Google Maps compared with [Competitor]. I found something I'd like to show [Owner]." → Put through, or log the best time to call back.
Phase 2: Reason for the call
R1 · Why the competitor is winning
"Google says local results come down mainly to three things: relevance, distance, and prominence, meaning how well-known the business is. Distance you can't change. The other two you can. [Competitor] has [N] reviews to your [M], and their listing is set up as '[category]' while yours says '[category]'. Both are fixable."
- Asks how → D1
- "How much?" → X4
- "We run Google Ads" → X6
Phase 3: Discovery
Ask three or four of these. Write down the exact words they use; they go in your follow-up.
D1 · Where customers come from
"How do most new customers find you today?"
→ D2
D2 · The services that matter
"Which services make you the most money, the ones you'd want more calls for?"
→ D3
D3 · What Google brings in now
"Do you know how many calls come from Google each month?"
- "No idea" → "Most owners don't. Your Google Business Profile's performance report shows how many people tapped 'call' or clicked through to your website, and we'd set up tracking on the site too." → D4
- Gives a number → D4
D4 · Current help
"Is anyone working on your SEO or Google Ads at the moment?"
- "Yes, an agency" → X1
- "We run ads ourselves" → X6
- "No" → D5
D5 · Service area
"Do you serve just [City], or the towns around it too?"
→ D6
D6 · Capacity
"If you got five more calls a week for [top service], could you handle them?"
- "Yes" → P1
- "We're swamped" → X3
Phase 4: Pitch
P1 · What you do
"We do local SEO for [niche]. We fix the Google Business Profile, build the service and area pages Google needs to show you for those searches, and help you get more reviews the right way. Every month you see calls and form fills, not just rankings."
→ P2
P2 · The honest line
"I can't promise you the top spot. Nobody can, and Google says so itself. What I can show you is exactly why [Competitor] outranks you and what I'd fix first."
→ C1
Phase 5: Objections
Two answers for each objection. Pick the one that fits the tone of the call.
X1 · "We already have an SEO company."
Answer A: "Good. Are you happy with the calls it brings in? Not the report, the calls."
Answer B: "Then this is a free second opinion. I'll show you where you rank against [Competitor] for your three main services. If your agency's on it, you'll see that too."
→ Unsure about results → C1 · Happy → C3
X2 · "SEO doesn't work. We tried it."
Answer A: "What did you try, and what happened?" (Listen.) "Usually it's the wrong searches, or nobody fixed the listing itself. Let me show you what's actually holding you back."
Answer B: "Fair. A lot of SEO gets sold as reports nobody reads. We measure calls and form fills, and you can see them yourself." (Only promise what you deliver.)
→ D3 or C1
X3 · "We're busy enough."
Answer A: "Good position to be in. Is it the right work? Would more [high-value service] jobs and fewer [low-value] ones help?"
Answer B: "Is that all year, or do you have a quiet season? SEO takes months to build, so now is when you'd start for [quiet season]."
→ D2 or C3
X4 · "How much is it?"
Answer A: "For a business your size, local SEO usually runs [your real range] a month, depending on services and areas. Before I guess: which services matter most?" → D2
Answer B: "It depends on how many services and towns you want to rank for. What's an average job worth to you? That tells us quickly whether it makes sense." → D6
X5 · "Send me some information."
Answer A: "Sure. I'll send a one-page snapshot: where you rank against [Competitor] for three searches. What email should it go to? And can we look at it together for 10 minutes on [day]?"
Answer B: "Happy to. What would make it worth reading: rankings, reviews, or what it would cost?"
→ Agrees to a time → C2 · Email only → log a follow-up, C3
X6 · "We run Google Ads."
Answer A: "Makes sense, ads work instantly. SEO is the part you don't pay for per click. Do you know what you pay per lead from ads?"
Answer B: "Then you already know which searches bring in customers. We'd go after the same searches in the map results, so you show up twice."
→ D3 or C1
X7 · "Can you guarantee first page? Number one?"
Answer A: "No, and anyone who does is guessing. Google says no one can guarantee a number-one ranking. What I can show you is what's holding you back, and a plan with calls as the scorecard."
Answer B: "I can't promise positions. I can tell you exactly what we'll do each month, and you'll see the calls and form fills yourself."
→ C1
X8 · "Not interested."
Answer A: "No problem. Just so I know: is that because you're happy with where you rank, or because now isn't the time?"
Answer B: "Understood. Would the snapshot be useful anyway? I'll email it, and there's no follow-up call unless you reply."
→ Softens → R1 · Firm no → C3
Phase 6: Close and next step
C1 · Book the screen share
"Let's do 15 minutes on a screen share. I'll show you the searches, where you are, where [Competitor] is, and the three things I'd fix first. [Day] at [time], or [day] at [time]?"
- Picks a time → C2
- "Just send it" → X5
C2 · Confirm
"Perfect. I'll send the invite to [email]. Is anyone else involved in marketing decisions who should join? And is [number] the best number if the link fails?"
→ Save outcome: Booked
C3 · Graceful exit
"No problem, [First name]. Mind if I check your rankings again in [month] and call you if anything changes? … Thanks for your time."
→ Save outcome: Follow up or Not interested
C4 · Callback opener
"Hi [First name], it's [Your name] from [Agency]. We spoke on [day] about where [Company] shows up on Google Maps, and you asked me to call back. Is now still good?"
→ R1 (short version), then C1
Phase 7: Voicemail
V1 · Voicemail (about 20 seconds, spoken live)
"Hi [First name], it's [Your name] with [Agency]. I searched '[service] [City]' this morning, and [Competitor] shows up in the map results ahead of [Company]. I know why, and it's fixable. I'll email you a quick snapshot; if you want to talk it through, call me at [number]. Again, [Your name], [number]."
E1 · Follow-up email
Subject: [Company] vs [Competitor] on Google Maps
Hi [First name], I just left you a voicemail. For "[service] [City]", [Competitor] shows in the map results and [Company] [doesn't / shows at number X]. The main reasons: [reason 1] and [reason 2]. Happy to show you in 15 minutes: [two time options]. [Your name], [Agency], [number]
Compliance note (B2B calling)
This script is written for live, person-to-person calls to businesses, with a real person saying every line, including the voicemail. Rules still apply, and they differ by country:
- US: most business-to-business calls are exempt from the FTC's Telemarketing Sales Rule, but its rules against misrepresentation still apply. The TCPA still requires consent for autodialed or prerecorded calls to mobile numbers, and many small-business owners answer on a mobile.
- UK: screen business numbers against the TPS and CTPS before making live marketing calls.
- Germany: calls to businesses need at least presumed consent (§ 7 UWG).
Don't promise rankings you can't deliver; Google itself says no one can guarantee a number-one position. If you record calls, tell the people you call at the start of the call. Pre-recorded audio in calls is regulated in many markets (e.g. US TCPA/TSR, UK PECR, Germany UWG). Only use it where you have the required consent. This is general information, not legal advice.
Run this script as a Call Flow in BeastCaller
In BeastCaller, this script becomes a Call Flow your whole team runs the same way:
- Phases: Opener, Reason, Discovery, Pitch, Objections, Close, Voicemail. Reps move between them with the ← and → keys.
- Cards: each card above becomes a card: the ID and name as its title, the wording as its text, and the "If they say…" line as its trigger, for example "They say: we already have an SEO company". Use Live cards (⚡) for everything reps say in their own voice.
- Branches: make O1, O2 and O3 a Logic Split (local, ranking gap, B2B), so the rep picks the opener that matches the lead.
- Number keys: every card that isn't a Live card gets a number key by its position in its phase (1–9, then F1–F12). A rep can record an approved clip on a card and play it with that key. (See the compliance note above.)
- Outcomes and hand-offs: name the campaign's call outcomes after this script's endings (Booked, Follow up, Not interested), and add a Quick Action that sends a booked lead to your calendar tool or CRM with one click.
- Several SEO offers? Give each one its own campaign and Call Flow.
More scripts: the web design script, the digital marketing agency script, the appointment setter scripts and the full template library.
Frequently asked questions
How do you cold call for SEO clients?
Search what their customers search before you dial, then open with one specific finding: where they rank and who's above them. O1 is built on that.
What's a good opener for local SEO?
Name the search, the city and the competitor who shows up instead of them. It's specific and they can check it themselves.
What do I say when they already have an SEO company?
Ask whether they're happy with the calls it brings in, not the reports. Then offer a free second opinion. See X1.
Should I promise first-page rankings?
No. Google says no one can guarantee a number-one ranking. Promise what you'll do and how you'll measure it.
Is it legal to cold call businesses to sell SEO?
In most markets, live calls to businesses are allowed with conditions: TPS/CTPS screening in the UK, consent for autodialed or recorded calls to mobiles in the US, and at least presumed consent in Germany. See the compliance note.
Can I use this script in BeastCaller?
Yes. Build it as a Call Flow with phases, cards with trigger labels and a Logic Split for the three openers.