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.
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.
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.
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).
That's why we split price from purchase
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 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
A brand regex for Mobile Zone
Write a brand regex that covers the four spellings and excludes every other query.
- · mobile zone
- · mobilezone
- · mobile-zone
- · mobil zone
- · 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.
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
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".
- · what is the best phone for shooting video in low light
- · best lightweight gaming phone with long lasting battery
- · 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.
- 1What happened? — Observation only
- 2Which possible explanations are worth investigating? — Hypotheses
- 3
What are the first 3 steps you'll take? — Actions
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.
- 1What do I want to know?
- 2Which data do I need to isolate?
- 3What do they have in common?
- 4Is regex the right tool?
- 5Write the simplest pattern
- 6What must show up? And what must not?
- 7Test the result
- 8Read clicks, impressions, CTR and position in context
- 9Ask a sharper question
- 10Separate the fact from the explanation
- 11And only then decide what to do
Well done, you reached the end of the lesson.