Done right, SEO can put you in front of the right buyers, both in traditional SERPs and AI systems, and help them convert once they click through. But most SEO strategies don’t live up to this potential because they chase rankings and traffic broadly, without being built around who the buyer actually is.
And when you haven’t made it clear to search engines who your buyer is, you never show up for the people you want to. Or when, by some ranking miracle, you do, and someone lands on your site, if what they find there is generic and doesn’t make it obvious your product is the answer to their specific problem, you lose them anyway.
This guide will help close both ends of that gap by showing all the steps you need to support a big, tactical SEO decision: winning for individual potential buyers by speaking to their problems directly. We’ll do this by bringing ICP focus into your SEO. So whether you’re sharpening your existing strategy or building one from scratch, you’re found by the right people in both traditional search and AI, and also get them to stay and convert once they land.
If you’re still unclear on your ICP, we’ve got detailed guides covering exactly that, Part 1 and Part 2 – worth checking out before diving into this one.
TL;DR:
- ICP-focused SEO strategy affects every layer of your execution around the specific people who actually buy from you, not a broad category.
- It helps to show you to the right buyer in traditional and AI search, and helps convert them once they land
- Step 1: Break your ICP into distinct buyer personas, each with real quotes, specific challenges, and a clear job-to-be-done, since one ICP usually contains several different buyers with different reasons to care
- Step 2: Audit your pages against each persona’s real concerns, learn from what’s working (and not) for winning competitors, then refine your messaging around that
- Step 3: Build your keyword research around your ICP and personas, starting with short-tail seed terms for your category, then targeting jobs-to-be-done keywords tied to what your personas are actually trying to accomplish
- Step 4: Optimize the page experience itself, including titles, CTAs, and body copy, so the specificity that got someone to click through carries all the way to conversion
Step 1: Turn your ICP into distinct buyer personas
The ICP you’ve built will tell you what companies will benefit from your product. For example, let’s say your product “ZeroSum” is a project management tool with a feature that prevents tasks from getting lost when handed off between teams.
Your ICP for that could be a B2B SaaS with 50-200 employees, running engineering, marketing, and support on three separate and unconnected tools (since that’s exactly where ZeroSum’s handoff-tracking feature earns its keep). That gives you a bracket of companies ZeroSum is a fit for. But it alone won’t help you articulate to a specific person within the company why your software is worth spending their money on.
Because a company matching your ICP could have an engineering manager, a marketing Ops lead, and a customer success lead. All three deal with work getting lost between teams, but they hit that problem differently day-to-day, and want something different from ZeroSum because of it. Eg,
- an Engineering Manager (cares about sprint visibility, integrations with GitHub/Jira),
- a Marketing Ops lead (cares about cross-team campaign tracking),
- a Customer Success lead (cares about churn signals and handoff visibility)
Meaning, the same solution has to be framed differently for each because their jobs-to-be-done (JTBD) aren’t the same.
That’s what personas are for. They define the specific people within your ICP, their unique friction points, their JTBD, and their reasons to care. Personas help shape what keywords/queries you target, and how you tailor your messaging to engage and convince them once they land on your site.

Here’s how to pull personas out for your own ICP:
- Pull the job titles of those buying your product from closed-won deals (or your best-informed guess if you’re pre-revenue).
- For each role, pull out three things:
- Quotes: the language this person has used – from discovery calls, support tickets, reviews of your product or relevant reddit/community threads to describe their problem or the solution they need.
- Challenges: the specific day-to-day friction this person deals with, or a limitation they’ve just worked around, that your product removes entirely.
- Jobs-to-be-done: what outcome they want out of the product for their unique problems.
- Group roles into one persona only if their quotes, challenges, and JTBD genuinely overlap.
- Pull all your notes together into a document like this simple persona sheet we’ve built to help keep all of the information in one place as you work through. Here’s what it looks like filled in for one persona:

Step 2: Use personas to fix your website and messaging
With your personas defined, the next thing to do is to see how well your current SEO and website messaging speaks to them. This step walks through auditing what you have, learning from competitors already winning these buyers, and refining your own messaging and offer accordingly.
a. Check whether your product is positioned for those personas
Stress-test your current messaging against the personas you just built. You’ll have to look closely at how your homepage, product pages, and any key pages further down the funnel speaks to each persona’s specific concern (not just their role or category of problem).
You don’t need to chase exact wording matches, though, as long as you’ve addressed the underlying concern correctly and you still use language that your persona resonates with.
For example, if Dana’s persona sheet says she wants to “catch blockers before they cost the team a day,” and your homepage says “spot risk before it derails a sprint,” that’s still a match, because it’s the same concern, and “sprint” is language an Engineering Manager like Dana would naturally use herself. What would actually be a gap is a homepage that talks about “keeping everyone aligned” without ever touching the idea of catching problems early.
How to audit your pages against your personas:
- Sort your pages into three piles:
- Pile 1 is on target: it already speaks to a specific persona, addresses a real, specific concern, not just the ICP broadly. For example, a landing page headline that reads “Catch blockers before they cost your team a day,” speaking directly to Dana’s concern.
- Pile 2 is too Generic: Talks to “the ICP” as a whole, never lands on any one persona’s specific problem. Example: a homepage that says “helps distributed teams stay aligned,” true for everyone in the ICP, specific to no one.
- Pile 3 is Overstretched: Trying to serve multiple personas at once, thinly, gestures at more than one persona’s concern without fully addressing any of them. Example: a feature page says, “ZeroSum keeps your team organized across every project in every tool in your stack”.
- Log all three piles into Section 2: Messaging Audit on the relevant persona’s sheet.
- Split any page marked Overstretched into separate, persona-specific pages. Rewrite any page marked Too Generic with more specificity.

b. Study your winning competitors’ language
The customers your competitors have captured will always overlap (not perfectly, but significantly) with your personas, because you’re both selling into a similar slice of the market. That means some of the buyers you’re trying to reach are choosing a competitor right now, whether that competitor is genuinely serving them well or not. So the question becomes: what are they doing that’s getting your ideal buyers to choose them instead of you?
You get that insight from two places.
- On-site, their homepage, product pages, and pricing tell you what’s working well enough to actually win the deal, the outcomes they promise, how directly they name the buyer’s problem, etc.
- Off-site, customer feedback, on review platforms like G2, Capterra, GetApp, and UGC forums like Reddit and Quora, gives you insight into competitor features and gaps, how real users describe those competitors, and how those same users describe their own problems, in their own words.
Note the gaps in both places and fill them into section 3 of the persona sheet.

c. Refine your messaging and offer
For each persona, you now have two sets of signals sitting in their sheet: your own messaging gaps (Section 2), and your competitor’s on-site messaging, as well as what their buyers are saying (Section 3).
Now it’s time for you to turn all of that into an actual brand message and a value proposition you can use when updating your existing copy and creating new pages with Section 4:

Here’s how to refine your messaging and offer for each persona:
- Close the gaps where you already deliver but haven’t said so. Where a competitor’s on-site messaging or their buyers’ praise points at something you also do, but haven’t said explicitly, write it into your messaging.
- Example: reviewers praise a competitor for being “easy to set up, clean interface,” and your product genuinely offers that too, but your messaging never says so.
- Claim what competitors’ buyers are complaining about. Where the same complaint keeps showing up in a competitor’s reviews, and your product doesn’t have that problem, say so directly in your copy.
- Example: reviewers complain they “have to dig too deep to find blocked work,” and your product surfaces blockers in one view, your copy can say, “see who’s blocked without digging through screens,” instead of something vague like “full visibility for your team.”
- Write your value prop and supporting points from these overlaps, in language closest to how this specific persona talks about the problem. This value prop becomes the foundation for everything you build for each persona: landing pages, blog content, CTAs, email copy, all of it.
If you’ve found multiple gaps and openings, you don’t need to cram all of them into one hero section. Spread them across the page instead – one in a problem section naming what buyers struggle with, another as a supporting point further down, another as a feature callout, so each one gets room to land instead of getting buried together in a single line.

A good example of this is ActiveCollab’s homepage. It makes one clear claim in the hero, then breaks its value into distinct sections below, each with its own specific supporting line and a product screenshot proving it.
Step 3: Use your ICP and personas to guide your SEO keyword research
With your messaging refined around real personas, your keyword strategy needs that same specificity – starting broad enough to establish your category, then narrowing down to the exact moments your personas are actually searching for help. Here’s how to do both:
a. Start with short-tail keywords for your category
You have already figured out what you want to say and tailored it to your personas. Now to get in front of them, you need to target short-tail keywords, or seed keywords (like “project management software” for ZeroSum). These are the broad, high-volume terms someone types in when they’re first scanning the category, before they’ve narrowed down to anything specific.
If you’ve already got these mapped for your business, skip ahead to the next step. If not, here’s how to find the ones for your category.
How to find your short-tail keywords:
- If your site already has some traffic, check Google Search Console under Performance, then Queries, and sort by impressions. This shows you the broad terms Google already associates your site with, even ones you’re not ranking well for yet.

- If you don’t have traffic data yet, or want a wider view, check what short-tail terms your competitors rank for. In Ahrefs, pull up a competitor’s Organic Keywords report, sort by search volume, and filter to positions 1-20 so you’re only looking at terms they’re ranking for.

- Do this for two or three competitors in your space, and the terms that show up repeatedly across all of them are your category’s seed keywords.
Keep this list short – a handful of true head terms is enough. These aren’t what you’ll rank for right away, but still target them in your key pages, and use them as a starting point for more specific research in the next step.
b. Target jobs-to-be-done keywords
Next, find JTBD keywords – these are the terms your personas search for when they’re trying to solve their specific problem, they are not the same as “long-tail keywords”.
Long-tail is mostly a narrower phrasing of a broader topic, and is not necessarily tied to a specific outcome someone’s trying to reach. For example, “Best project management software for 50 person companies” is long-tail, narrower than “project management software,” but still just the usual commercial intent and points the reader to a product round-up or listicle.
Whereas, a JTBD keyword has a very clear end-goal the searcher is working toward. That’s what makes it worth targeting because using it, you create not just specific content, but specific content helpful enough to lead somewhere, a sale, a signup, a real next step. For example, “How to stop project blockers from going unnoticed on a distributed engineering team” is JTBD, it’s tied to Dana’s actual goal, and it’s specific enough that ZeroSum’s own product page could answer it directly.
How to find JTBD keywords and use them:
- Take the language from Section 3 of each persona’s sheet as your seed vocabulary, search it directly in a keyword tool like Ahrefs or Semrush to see what real search volume exists around it.
- If it has low or no search volume, look for near-variants searchers are actually using that carry the same intent.
- If you don’t find any close variants either, build content around the JTBD keyword anyway. It may not show measurable search volume, but it captures someone at a high-intent moment.
JTBD keywords are a bet worth making on the AI side, too. Because for each query a user enters into an AI tool, the system creates multiple sub-queries and runs a separate web search for each one – a process called query fan-out – then synthesizes its final answer from what it finds across all those sources. Research from Seer Interactive found that 95% of those sub-queries have no recorded search volume at all in traditional tools (like Ahrefs or Semrush). That tells us that AI systems only care about intent, so a JTBD keyword with no search volume can still be exactly what an AI system is looking for to answer a query, and you can become the source if you’re targeting it.
Step 4: Optimize the page experience for conversion
You’ve done the work to get matched to the right person on the right page. But that page still has to hold up the rest of the way, with every section and CTA speaking to the same specific problem that brought someone there.
How to optimize your page experience for conversion:
- Confirm the page title and opening content reflect the JTBD keyword that brought someone there. If the search was “how to stop blockers from going unnoticed on a distributed engineering team,” the page needs to open on that exact problem, and not “manage your team’s work” headline.
- Pair the standard CTA button, “Start Free Trial,” “Get a Demo,” with a specific supporting line that names the persona’s actual outcome.
- Example: “Start Free Trial” next to “See who’s blocked before it costs your team a day.”
- Check for consistency across the full page. It’s common for a headline to name a persona’s specific problem clearly, then the body copy underneath drifts back into describing the product in general terms instead of continuing to speak to that same problem, with specificity.
Final Thoughts on ICP-focused SEO for B2B SaaS
Building your SEO around the people who buy (or you want them to buy) from you, instead of a broad category, sounds simple enough. Actually doing it — the persona work, message tailoring, keyword selection, page experience – isn’t. Which is what this whole guide walked you through.
And only a few companies are building their SEO this way yet, but this is where the future of search, including AI, is headed: intent over volume.
You get there by developing a deep understanding of your customers and tailoring your entire presence around that – from the keywords you target and the content you write to the CTAs you add, all of it. That solves the two problems most companies run into: no visibility, or visibility that doesn’t convert.
But when every touchpoint, from the first search to the final click, is built around a real person instead of a broad category, it starts feeling like this solution was custom-made for them instead of generic marketing.
This is our standard SEO approach for our clients in 2026 and beyond. If you want to discuss what it’d look like for your SaaS,book a free call with us!
The Complete ICP-Focused SEO Checklist
To help keep everything organized we’ve built a very simple persona sheet, (the same one referenced throughout the guide and this checklist) so you’ve got one place to keep all your notes and think through them instead of holding everything in your head.
Step 1: Turned your ICP into distinct buyer personas
Pulled the roles buying your product from closed-won deals
Captured each role’s quotes, challenges, and JTBD
Grouped roles into personas only where quotes, challenges, and JTBD genuinely overlapped
Logged each persona into its own sheet
Step 2a: Checked whether your product was positioned for those personas
Stress-tested homepage, product pages, and funnel pages against each persona’s specific concern
Sorted every page into On Target, Too Generic, or Overstretched
Logged Too Generic and Overstretched pages into Section 2 of the relevant persona’s sheet
Flagged Overstretched pages as candidates for splitting into persona-specific versions
Step 2b: Studied your winning competitors’ language
Reviewed competitors’ on-site messaging, homepage, product pages, pricing
Checked off-site customer feedback on review sites and community platforms
Logged the gaps from both places into Section 3 of the persona sheet
Step 2c: Refined your messaging and offer
Closed gaps where you already deliver but hadn’t said so explicitly
Claimed the specific things competitors’ buyers keep complaining about
Built a value prop and supporting points per persona, in their own language
Spread multiple gaps and openings across the page instead of cramming them into one hero section
Step 3a: Started with short-tail keywords for your category
Checked Google Search Console for your own seed terms, or pulled competitors’ Organic Keywords report in Ahrefs
Identified the head terms repeating across multiple competitors as your category’s seed keywords
Step 3b: Targeted jobs-to-be-done keywords
Used the language from Section 3 of each persona’s sheet as seed vocabulary in a keyword tool
Found near-variants where the exact language had low or no search volume
Built content around JTBD keywords even without measurable volume, prioritizing intent over volume
Step 4: Optimized the page experience for conversion
Matched page titles and opening content to the JTBD keyword that brought someone there
Paired standard CTA buttons with a specific supporting line naming the persona’s outcome
Checked the full page for consistency, catching spots where body copy drifted back into generic language


