/    Sign up×
Articles /Pin to ProfileBookmark

An Actually Strategic Way to Do SEO Competitor Analysis

(Editorial note: I originally wrote this post over on the Hit Subscribe blog. I’ll be cross-posting anything I think this audience might find interesting and also started a SubStack to which I’ll syndicate marketing-related content.)

I just spent part of my morning writing up internal documentation to operationalize so-called SEO competitor analysis.  If you don’t believe me and think this is just a rhetorical flourish, here’s a really boring screenshot.

As I was doing this, my last step was to record a high-level explanation of the document, which included this paragraph:

Clients have various ideas about what a competitor analysis is or should be, and they’re often requesting it by rote, as it’s something that SEO firms tend to do.  Assessing competitors, however, tends to be of somewhat limited value, since many of them aren’t even trying for search traffic, or, if they are, they might be doing it naively. 

After typing that, I immediately wrapped up the SOP and started writing this blog post.  My intent is to have it up here on the blog so that we can send it to anyone requesting a competitor analysis.  And I want to do that because we do this differently than the typical SEO firm.

You deserve an explanation of how and why.

How SEO Firms Do Competitor Analysis

If you Google “seo competitor analysis,” you’ll see the titans of this dubious industry all giving you advice.  At the time of writing, the ranking entries include Semrush, Moz, Backlinko, Ahrefs, and Neil Patel, because, well, of course they do.

For anyone not in the SEO weeds, this would be like searching for “tech companies” and seeing a search result with Facebook, Amazon, Apple, Netflix, and Google (or whatever they’re all calling themselves this month).  These SEO tools or consultants, in a display of meta perfection, have all out-SEO-ed everyone else to show up in the search results page (SERP) and teach you, dear reader, how to do SEO.

And they all say the same thing, more or less.

  1. Identify your competitors.
  2. Mostly copy them, probably starting from behind.
  3. Look for the occasional keyword they haven’t targeted or topical gap and go after that.
  4. Other than that, storm their well-defended castle and try to displace them.
  5. Do all of that using [insert whatever SEO company’s] handy tools and services.

They call this “strategy.”  Personally, I think we just discovered the platonic ideal of whatever the exact opposite of strategy is.

Here’s Hit Subscribe’s take, which is a lot different:

Your competitors’ SEO tactics only matter insofar as the odds of them annoying us while we try to achieve our goals together.

But let me come back to that.

The Problem With Traditional “Competitor Analysis”

Let me explain in some detail why we don’t like the SEO titans’ traditional approach, apart from simple ineffectiveness absent massive, inefficient spending on SEO as a channel.

There’s a common old saw in American society that in certain legal proceedings, such a divorce, both sides lose and only the lawyers win.  Stock SEO competitor research approaches have this dynamic as well.

Who do you think wins when you and your competitors all slug it out over the same extremely difficult keywords?  I’ll tell you the answer, and it’s not you or any of your competitors.  It’s Semrush, Moz, Backlinko, Ahrefs, and Neil Patel.

Think about what they’re encouraging you to do.  See what your competitors are doing, and then try to outdo them, even though they’re ahead of you.

I doubt Sun Tzu would be remembered today if his Art of War had included the advice “Wait for the enemy to identify the most defensible hills, then incur catastrophic losses as you displace them.”

Sun Tzu didn’t give that advice, but contemporary catapult and coffin vendors probably did.

Even setting aside the conflicted and non-strategic nature of this so-called wisdom, mimicking competitor approaches only works if your broader marketing strategy is the same as theirs.  For instance, if you’re deploying sales-led growth into the enterprise and they’re going with a bottoms-up approach, copying their keyword inventory will result in a bunch of tutorials that your prospects will never read.

(Incidentally, if rants about strategy and game theory are your thing, I’ve talked about this at length here).

Rethinking Competitor Analysis

So let’s now come back to my point about competitors as an annoyance.  Before looking at what your competitors are up to, we need to decide what you want to do in terms of generating leads.

  • Who do you want to get onto your site?
  • What pains or problems do they have that your offering solves?
  • What do we want these folks to do when they arrive?
  • What do you want them to know about you and your space?
  • How are we going to nurture them into trusting you with a purchase?

We’re really talking about constructing an acquisition funnel and, broadly, your go-to-market approach.  At its core, SEO is simply a content distribution tactic that exists alongside many other such tactics.

Granted, it’s a highly predictable, highly repeatable, and cost-effective tactic and channel.  But it’s just that—a tactic and channel—so we need to resist the impulse to let your competitors’ keywords and SEO consultants and tools become the tail that wags the dog of your marketing spend (to which they’ll happily help themselves).

Before your competitors’ websites matter, we need to decide what your ideal funnel looks like, at least in broad strokes.

Example Keyword Mapping to Funnel Construction

When doing keyword research, we tend to think in terms of campaigns.  An SEO-minded content campaign, in our world, is a thematic grouping of content that orients around decision heuristics for the content topics.  If that sounds wonky, here are some examples:

  • A content glossary of terms related to FinOps and cloud spending.
  • A series of tutorials about using different databases with Python.
  • A set of posts comparing various unit testing frameworks across all backend programming languages.

We’d then pair those with personas and goals, respectively:

  • Raise brand awareness among executives and decision-makers investigating the cloud spend space.
  • Pixel Python developers and remarket your ORM solution to them.
  • Get in front of people who we know are about to set up unit testing infrastructure and persuade them to use our test runner.

Without doing any keyword research or SEO-y things, I’ve laid out three loose funnels that are compatible with SEO distribution. I’ve also articulated a complete hypothesis about how the business will acquire leads.  The viability of these approaches for your brand will depend on a lot of things including, but not limited to, brand voice concerns, SMEs to create content, assets and budget for nurture, your customer onboarding experience, etc.

All of that is much more important than the particulars of keywords and backlinks and such.  We need to hash this stuff out first.

Competitor Analysis Revisited

For the sake of example here, let’s say that we landed on one of these.  You’re selling a commercial service atop an open-source Python ORM.

As such, creating a bunch of Python tutorials related to using databases makes sense.  You know anyone reading is both a Python and database user and thus a qualified lead for the open source ORM, if not the commercial offering.  That’s pretty good segmentation.

Now is the time to enlist keyword research because we want to see if the search terms corresponding to these tutorials will be winnable.  This is also the moment at which competitor research finally becomes relevant.  And that’s because, along with stats about the keywords, you want to have a sense of who might barge into the SERPs who isn’t there already.

Competitor Analysis Specifics: Identifying Meaningful Competitors

Let’s consider two kinds of competitors at this point: business competitors and SERP competitors.  In our example, business competitors would include other ORM vendors or perhaps databases.  But SERP competitors might be broader. They could include a dev blogger that just loves to write about Python ORMs or maybe a bunch of Python tutorials from the Python language site.

Tactically speaking, here is how we at Hit Subscribe conduct competitor research against an SEO campaign:

  1. Gather competitors from the client and identify SERP competitors from a keyword sampling.
  2. Identify whether or not the competition is worth paying attention to. (Many competitors, especially business competitors, may not even be attempting to use SEO as a channel, so who cares what they do?)
  3. Of those worth paying attention to, record relevant SEO vitals against that of the client.  (If the client can easily outrank them and the competitor isn’t gaining on them, they’re also ignorable.)
  4. Of those that are worth paying attention to and able to compete in SERPs, record the ones that seem to be targeting the client’s campaign terms intentionally.
  5. That remaining group is the competition that can annoy us.

Competitor Analysis Specifics: SWOT Analysis

Once we have one or more campaigns in hand and have identified the competitors that might have something to say about them, we can conduct a SWOT (strengths, weaknesses, threats, opportunities) analysis.  Diving into the methodology of that would make for a standalone post, so I won’t do that here.  If this interests you, shoot me an email (erik at hitsubscribe), and I can write it up.

But the results of this analysis are really about answering these questions:

  • Are we targeting a blue ocean here?
  • Can we maneuver around competitors within the campaign by targeting lower volume terms or terms associated with people earlier in the buyers’ journey?
  • Can we maneuver around competitors by building links, buying up domains, or other off-page concerns?
  • Can we maneuver around competitors with different on-page content tactics?
  • Are enough competitors dominating the SERP landscape for this campaign that we should scrap it and do something else?

And this circles back to my original claim about competitors existing mainly as an annoyance.  With the exception of that last concern, all they’ll really make us do is slightly adjust tactics or prioritize slightly different flavors of spending on the channel.

The last question is, of course, the nuclear option.  But in six years of working on dev tools campaigns, one of the most competitive landscapes for keywords, I really can’t recall needing to do this very often.

Forget Your Competitors; Keywords Are Easy

I think the reason we seldom need to scrap a campaign idea is that brands and SEOs tend to enlist a very simplistic flavor of keyword research.  I’d summarize it as yellow-pages searches: “You should rank for your offering!”

For instance, take our hypothetical Python ORM vendor.  SEO consultants would tell them that they need to rank for “Python ORM,” and other Python ORMs have SEO consultants telling them the same thing. That kicks off a competitor arms race.  All of them are looking at each others’ backlinks and word counts and domain authority and dispatching flaming dump trucks full of money in a quixotic effort to win.

Don’t bother with that.  You don’t need to rank for “Python ORM” to sell Python ORMs, and treating your competitors as ideation sources will just create the misapprehension that you do.

Our methodology will result in keywords that bring you well-segmented traffic, with people who are decently likely to buy.  We’ll build a strategy together to put leads in your funnel—and you’ll only think about your competitors when we’re steering you around them.

SEOTechnical Writing


Help @daedtech spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 6.25,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ,
analytics: Fullres

legal: ({
terms: of use,
privacy: policy
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
recent_tips: (
tipper: @Marika,
tipped: article
amount: 1000 SATS,

tipper: @hatem774,
tipped: article
amount: 1 SATS,

tipper: @nearjob,
tipped: article
amount: 1000 SATS,