Search Console Regex Project: A Full Ecommerce SEO Analysis

About 30 minutes

We've reached the last part of the course. And it makes sense that the last lesson isn't a batch of new regex to memorize, because we already have the tools we need. Today we open Search Console as if we're working on a real site, with a real question, and walk through it step by step. Every time we need a regex, we'll write it because something made us need it. And for every pattern, before we rely on it, we'll decide: which queries or pages must show up? And which must not? This time we're not learning regex; we're learning to work with it.

The case we're working on

We have an online store called Tech Point that sells phones, laptops and accessories, with a blog of guides, comparisons and price articles. The owner tells you: over the last 3 months, organic clicks went from 24,000 to 34,500 (impressions from 520,000 to 780,000), and they want to know whether the SEO work is really improving, or the growth is coming from something else.

The first question on our mind: where is this growth coming from? So the first thing we split is brand from non-brand.

Start with brand

The company name is Tech Point, and users type it more than one way: tech point, techpoint, tech-point, tek point. Before running anything, we decided what must show up (tech point, techpoint, tech point deals, techpoint uk, tek point, and even "laptop price at tech point", because the query doesn't have to start with the brand) and what must not (tech news has tech but not the full brand, and point of sale system has point but not Tech Point).

(tech[- ]?point|tek point)
  • tech point
  • techpoint
  • tech-point
  • tek point
  • laptop price at tech point
  • tech news
  • point of sale system

We ran the brand segment with Matches regex: brand clicks went from 8,000 to 16,000, roughly doubling. Does non-brand need a new regex? No: the same pattern, with Doesn't match regex. Non-brand clicks went from 16,000 to 18,500.

Note
Stop here. Total clicks went 24,000 → 34,500, but once we split them: brand 8,000 → 16,000, non-brand 16,000 → 18,500. So most of the click growth came from brand. That's an observation, not an opinion, and it doesn't mean SEO is bad. We only found out that the total was hiding a different story.

Something caught our attention

Non-brand impressions went from 490,000 to 725,000, a huge increase, while clicks only went from 16,000 to 18,500. Now, instead of the general question "did SEO improve?", we have a specific one: what new things did the site start showing up for?

Open the queries: the long tail

When we sorted non-brand queries by impressions, we noticed relatively long ones, like "best laptop for working from home with long battery life" and "what is the best laptop for seo work and crawling large sites". The question: does a big part of the growth in non-brand visibility come from long-tail queries?

^\S+(\s+\S+){6,}$
  • what is the best laptop for seo work
  • best lightweight laptop for work and travel with long battery
  • iphone 17 price
  • best laptop for programming

The result after applying the pattern to non-brand queries and comparing the two periods: impressions from 45,000 to 140,000, clicks from 1,800 to 2,300. Visibility on long queries grew enormously, but clicks didn't grow at the same speed. When we looked at positions, much of it was middling (8, 10, 11, 13, 15). The site started showing up for a lot of new searches, but still needs to move up on them.

Watch out
Do we call this segment "AI Queries"? No. The regex says "queries of 10 words or more", nothing else. Call it AI Queries and we've turned a hypothesis into a fact. It's more accurate to call it "Queries 10+ Words" and use it as a way to explore, especially with the pattern long query + high impressions + zero or very few clicks.

Now change the dimension: which pages?

We went from Queries to Pages and found that most of the growth comes from the blog. The site has /blog/, /product/ and /category/. Comparing them: blog impressions from 120,000 to 310,000, product from 210,000 to 250,000, category from 140,000 to 160,000. Most of the growth in search visibility happened on the blog, which fits what we saw in the long tail. The story is starting to come together: non-brand impressions rose → the long tail rose sharply → the blog is the section that grew the most.

Try it yourself

Write a regex for every blog page on Tech Point.

  • https://techpoint.com/blog/best-laptop/
  • https://techpoint.com/product/iphone-17/
  • https://techpoint.com/category/phones/

A question closer to the business: how close to buying?

The site is ecommerce, so we want to know: how does it show up when the user gets close to buying? We built a price segment, (price|pricing|cost|how much|cheap), and went to Pages. Most price impressions go to the blog (55,000), not product (18,000) or category (7,000).

Watch out
Do we say "we have cannibalization"? No. That's one of the jumps we need to avoid. All we know so far is that the blog gets strong visibility on price queries, and that could be normal. If we take one query, like "macbook pro m5 price uk" (6,500 impressions, 120 clicks, position 7.8), and the page showing up is an old article while a product page exists, then we have a case worth investigating. But before deciding, we need to ask: is the product page indexed? Is the product in stock? Is the price shown on it? Does the query want the price of one specific device, or a price comparison?

That's why we split price from purchase

Try it yourself

You have a purchase segment: buy, deal, discount, sale, financing, coupon. Write the pattern.

  • buy iphone 17
  • where to buy a macbook
  • macbook financing
  • macbook price
  • best macbook

When we built the purchase segment and went to Pages, product pages had 70% of impressions, category 20%, and the blog only 10%: the exact opposite of the price segment. That's why we didn't put all the commercial words in one regex. Combined, they'd give us an average that hides the difference between looking up the price and buying.

Now an important difference shows up: price queries → the blog is strong there. Purchase queries → product pages are stronger there. It isn't a full funnel, but we're starting to see a search journey: informational and long queries → blog; price queries → the blog shows up strongly and some cases need review; purchase queries → product pages are stronger. That's useful for SEO and for the business.

Back to the first question

We started from "clicks went from 24,000 to 34,500: did SEO improve?" After the analysis, the picture is: brand clicks grew strongly, non-brand clicks grew relatively little, non-brand impressions grew strongly, much of the non-brand growth came from long queries, the blog was the biggest source of growth in search visibility, some very long queries have big impressions and weak clicks, price queries show the blog strongly, and purchase queries show product pages more. We're no longer saying "traffic went up"; we understand how it went up.

The rule
Now we can write the conclusion professionally: "The site saw clear growth in organic clicks in the current period, but most of the click growth came from brand queries. Meanwhile, non-brand visibility expanded significantly, especially on longer queries, and the blog was the biggest source of that growth, while non-brand clicks grew more slowly than visibility." That's the observation. After it, we add a possible explanation, clearly labeled as a hypothesis, and then a specific point about price queries that makes clear we still need to review individual cases before any judgment. That way, we haven't exaggerated or jumped ahead.

The next step

Not 30 recommendations. First: pull the top new non-brand queries by impressions + business relevance + a position that can improve, and look at the page showing up for each. Second: review the very long queries with high impressions + low or zero clicks. Third: review the most important price queries where the blog shows up instead of product pages. Not all of them; start with the ones that matter most to the business. Fourth: keep tracking brand and non-brand with the same patterns, because if you change the segment's definition every month, the comparison itself gets weak.

The last hands-on project

Now we leave Tech Point, and I want you to apply the same thinking to a site called Mobile Zone. People type the name as: mobile zone, mobilezone, mobile-zone, mobil zone. It has /product/, /category/ and /blog/. Performance: previous period 20,000 clicks and 400,000 impressions; current period 29,000 clicks and 690,000 impressions. The owner said "we grew a lot, so SEO is excellent". You won't agree or disagree yet; you'll start investigating.

Stage one: brand

Regex challenge

A brand regex for Mobile Zone

Write a brand regex that covers the four spellings and excludes every other query.

Must match
  • · mobile zone
  • · mobilezone
  • · mobile-zone
  • · mobil zone
Must not match
  • · iphone 17 price
  • · buy a laptop

Stage two: read the growth

Assume the result: brand clicks 8,000 → 16,000, non-brand clicks 12,000 → 13,000, non-brand impressions 370,000 → 610,000.

Answer in your own words

Write: (1) one thing you know for certain from the data, (2) one thing that could be an explanation but still needs checking, (3) the next question you'll go and answer.

Write your answer first. The value is in trying before you look.

Stage three: the long tail

Regex challenge

7 words or more: Mobile Zone

Build the pattern yourself without memorizing the answer. Then assume the result: impressions 35,000 → 120,000, clicks 1,400 → 1,900. And don't say "good" or "bad".

Must match
  • · what is the best phone for shooting video in low light
  • · best lightweight gaming phone with long lasting battery
Must not match
  • · phone price
  • · best phone for photography

Stage four: pages

^https://mobilezone\.com/(blog|product|category)/
  • https://mobilezone.com/blog/best-phone/
  • https://mobilezone.com/product/iphone-17/
  • https://mobilezone.com/category/phones/
  • https://mobilezone.com/about/

Assume: blog impressions +120%, product impressions +25%, category impressions +15%. What question does this data open up? (Think: is the growth concentrated in one page type, and what does that mean for the buying journey?)

Stages five and six: price/purchase, and debugging

Build separate price and purchase segments, as we did with Tech Point, and explain why you didn't combine the two in one pattern. And for debugging: if you wrote the comparison regex (compare|versus|difference between| or |vs) and "is shipping free or not" showed up in the results, name the false positive, and before you change the regex, explain: which part of the pattern let it in?

Stage seven: the verdict

After the whole analysis, you write just 3 paragraphs, and this is the most important part of the entire lesson.

The three paragraphs
  1. 1What happened? — Observation only
  2. 2Which possible explanations are worth investigating? — Hypotheses
  3. 3What are the first 3 steps you'll take? — Actions
Answer in your own words

Write the three paragraphs for Mobile Zone: Observation, Hypotheses, Actions, based on everything we analyzed (brand/non-brand, long tail, pages, price/purchase). If you can write all three without mixing them up, you've understood the most important part of the course.

Write your answer first. The value is in trying before you look.

In the end

You don't need to leave this course with 50 regex memorized. If you forget the 7-word pattern a month from now, you can build it again because you understand it: the first word + 6 more words. If you forget the brand pattern, you can build it from the real variations. If you land on a site with different URLs, you'll look at the structure and describe it; you don't need a ready-made template.

What should stay with you
  1. 1What do I want to know?
  2. 2Which data do I need to isolate?
  3. 3What do they have in common?
  4. 4Is regex the right tool?
  5. 5Write the simplest pattern
  6. 6What must show up? And what must not?
  7. 7Test the result
  8. 8Read clicks, impressions, CTR and position in context
  9. 9Ask a sharper question
  10. 10Separate the fact from the explanation
  11. 11And only then decide what to do
The rule
If you've made it this far, you haven't just learned regex. You've learned to use it the way that matters to us in SEO. And that's the point of the whole course.
This is the last lesson in the course.All lessons

Well done, you reached the end of the lesson.