Selling SEO successfully follows a recognizable arc: a lead comes in through a specific channel, a discovery call qualifies and uncovers real pain, a lightweight audit grounds a proposal in facts instead of a template, an objection nearly kills the deal, and a close that sets honest expectations prevents the churn that would otherwise show up a few months later. Below is a step-by-step walkthrough of that arc using a composite, illustrative scenario — not a real named client and not verified figures — built from the pattern we’ve watched play out, in different shapes, across many real sales cycles.
We’re calling the business in this walkthrough simply “the client” on purpose. The goal isn’t to prove a number; it’s to show the sequence of decisions, and the exact points where a sale like this typically wobbles before it closes.
Picture a two-person SEO freelance operation that specializes in home services businesses — plumbers, electricians, HVAC contractors. The lead in this walkthrough came from a referral: a past client, a roofing company, mentioned the freelancer’s name to a plumbing company owner who was frustrated with a previous SEO vendor that had billed monthly for a year with almost nothing to show for it.
That referral context mattered enormously before the first call even happened. The prospect wasn’t shopping cold — they were specifically looking for someone who wouldn’t repeat their last experience, which shaped how the entire discovery conversation needed to go. A seller who ignored that context and ran a generic pitch would have missed the actual sale sitting in front of them.
The call opened not with a pitch, but with questions: what had the previous agency actually delivered, what did reporting look like, what specifically felt like it wasn’t working, and what would “working” actually mean to this owner in concrete terms — more phone calls, more form fills, more jobs booked in a specific service area. The owner’s answer was revealing: the old agency had sent monthly reports full of ranking-position screenshots for keywords the owner didn’t recognize, with no connection to actual leads.
That single detail reframed the entire proposal before it was written. The deliverable this prospect needed wasn’t “improved keyword rankings” as a headline metric — it was leads tied to service areas and job types the business actually wanted more of, with rankings reported as a supporting signal, not the main event.
The freelancer also asked directly about budget range and past spend, framed as “so I don’t waste your time proposing something outside what makes sense for your business.” The prospect had been paying eight hundred dollars a month to the previous agency — useful information for scoping a realistic proposal rather than guessing.
Rather than proposing blind, the freelancer spent roughly two hours before the follow-up call running a focused audit: Google Business Profile completeness and review velocity, site speed and mobile usability, whether service-area pages existed for the specific towns the business wanted more work in, and a spot-check of what was actually ranking for a handful of the owner’s priority terms.
The findings were concrete and specific to this business: the Google Business Profile hadn’t been touched in months, three of the five towns the owner wanted to dominate had no dedicated page on the site at all, and the site’s mobile load time was slow enough to plausibly be costing form submissions. None of this required an expensive audit tool — a handful of free and low-cost tools covered it, and the specificity is what made the eventual proposal land.
The proposal was built around three findings, not a generic package. It named the Google Business Profile gap, the missing service-area pages, and the site speed issue directly, and scoped a monthly retainer against fixing those three things first, with a clear note on what would be measured (call tracking numbers and form submissions by service area, not just rankings) and a realistic timeline: early technical fixes visible within the first month, meaningful lead volume change expected to take three to six months.
Pricing was set at eleven hundred dollars a month — higher than the previous agency’s eight hundred. The freelancer didn’t discount to undercut the prior vendor; instead, the proposal explicitly named the difference in what was included and how progress would be reported, treating the higher price as the cost of a materially different, more accountable process.
The owner pushed back hard on price: “The last guy was eight hundred and did nothing — why would I pay more for the same result?” This is the moment a lot of sellers cave and drop the price to save the deal, and doing so here would have undermined the entire pitch about being a different, more accountable kind of vendor.
Instead, the freelancer reframed the objection directly: the previous agency’s price wasn’t the problem — the lack of a specific, measurable plan was. The freelancer walked back through the three named findings and asked the owner plainly whether the previous agency had ever shown them anything that concrete. The owner admitted they hadn’t. The freelancer held the price and offered instead a three-month initial commitment rather than a full year, lowering the risk of the decision without lowering the value of the work.
That combination — holding price, shortening commitment length — closed the deal. The lesson generalizes: when a prospect objects on price after a bad past experience, the fix is rarely a discount. It’s usually reducing commitment risk while defending the value that justifies the price.
The kickoff call set expectations explicitly, in writing: month one would focus on Google Business Profile cleanup and the three missing service-area pages; months two and three would add site speed fixes and initial content; call tracking and form-submission data would be reviewed monthly, with rankings reported as a secondary signal. The freelancer was explicit that meaningful lead volume changes were unlikely to show clearly before month three or four.
This explicit timeline mattered later. When month two’s report showed technical fixes complete but flat lead volume, the owner didn’t panic or threaten to cancel — because the timeline had already told them not to expect a lead spike yet. Sellers who skip this step often lose clients in month two or three not because the work isn’t working, but because nobody set the expectation for how long it takes to show.
By month four, two of the three new service-area pages were ranking on the first page for their target town-plus-service terms, and call tracking showed a measurable uptick in calls attributed to those pages specifically. The freelancer used that data — not a generic ranking report — in the quarterly review, tying the win directly back to the specific gaps identified in the original audit.
The relationship extended past the initial three-month commitment into an ongoing retainer, and the referral loop continued — this client later referred another local business owner, closing the same loop that had generated the original lead.
No. This is an illustrative, composite walkthrough built to show a realistic sales cycle sequence and decision points — it does not represent a single named client or independently audited performance figures.
Because the objection wasn't really about price — it was about risk after a bad past experience — so the freelancer addressed the actual concern by shortening the commitment length instead of undercutting the value of the work with a discount.
A proposal built on specific, verifiable findings from the prospect's own site is far more credible than a generic package pitch, and it's what separated this proposal from the vague, template-feeling one the prospect had received before.
In this walkthrough, early technical fixes were visible within a month, but meaningful lead volume change took three to four months — setting that expectation explicitly during onboarding is what prevented the client from churning before the results appeared.
It arrived through a referral from a past client, which meant the prospect already had implicit trust in the freelancer's competence and was primarily evaluating whether this engagement would differ from a specific bad past experience, not whether SEO itself was worth buying.
When a price objection follows a bad past experience with another vendor, the fix is almost always to reduce the risk of the decision — a shorter initial commitment, clearer reporting — rather than to lower the price and undercut the value being sold.
Terry has 30+ years in software and SEO. He’s the founder of Salterra Digital Services and SEO Spring Training, host of the Roundtable SEO Mastermind, and lead instructor at SEO University — teaching the exact tactics his team uses on client work.
This guide is one lesson from the Selling SEO / AIO as a Service course. Get every lesson, framework and checklist — plus the full 38-course catalog — inside SEO University.
Practitioner-focused training across the full digital marketing stack — from technical SEO to conversion optimization and the AI search era. By Salterra Digital Services, since 2011.