Britbunch Insights

Search Console Regex Guide for UK Small Businesses (2026)

2 November 2026 · Britbunch Limited

A round brass magnifying glass lying on a white surface

Search Console behaviour last checked 21 October 2026. The figures in this guide are example data for Anytown Plumbing, an invented Kent firm, not from any real property.

The regex filter in Google Search Console lets you filter the Performance report with a pattern instead of a single word. One filter can show every question people asked, every search naming your town, or everything except your brand. It sits under + Add filter, then Query or Page, then Custom (regex), and it is available on small sites as well as large ones.

Three rules decide whether a pattern works:

  • It uses RE2, Google's regex syntax, which has no lookaheads or lookbehinds.
  • It matches part of the text. A pattern counts if it appears anywhere in the search, unless you pin it with ^ (starts with) or $ (ends with).
  • Capitals are ignored. "SEO" and "seo" are the same unless you add (?-i).

What the regex filter does

An ordinary filter looks for one piece of text. A regular expression (regex) is a short pattern, such as "starts with a question word" or "mentions any of these towns", and the report then shows only the searches or pages that fit. Here is a mock-up of the report with the question filter from this guide applied. The figures come from an example export we built for Anytown Plumbing, an invented plumbing and heating firm in Medway, Kent; every number in this series is example data, not from a real property.

Mock-up of the Performance report with the question filter applied: 23 clicks, 4,354 impressions, 27.5% of visible impressions, weighted position 9.3, and the top question rows
Mock-up of the Search Console Performance report with the question filter (Q1) applied, built from the example export. Example data: Anytown Plumbing, 28 days. Filtered views leave out anonymised queries, so they will not add up to the unfiltered total.

Where to find it

Open the Performance report for Search results, then:

  1. Click + Add filter and choose Query, or Page to filter web addresses.
  2. In the first drop-down, choose Custom (regex).
  3. Leave the second drop-down on Matches regex, or switch it to Doesn't match regex to hide what fits.
  4. Paste your pattern into the box labelled "Enter regular expression (regex)" and click Apply.

The chip at the top then reads "Query: Custom (regex)". Keep the search type on Web with Text-based selected (the chip shows "Search type: Web"): the newer Multimodal option, for Lens and Circle to Search, has no queries for a pattern to work on.

The filter is stored in the report's web address (as query=~ and your pattern), so you can bookmark a filtered view.

Four steps to the regex filter: + Add filter, Query or Page, Custom (regex), then Matches regex or Doesn't match regex and Apply
Where the filter lives. Interface labels checked in Search Console on 21 October 2026. Some Google pages still call the first button "New".

The three rules: RE2, partial match, capitals ignored

All three come from Google's help page Advanced filtering and comparison: "The RE2 syntax is used"; a pattern "can match anywhere in the target string unless you use ^ (start of string) or $ (end of string)"; and "Default regex matching is not case-sensitive". RE2 leaves out some features other regex tools have, so patterns copied from older guides can fail. Advice to add (?i) dates from 2021, when Google's help briefly said matching was case-sensitive.

Your first filter in 60 seconds: find the questions people ask

Each question is a ready-made heading or FAQ answer. Add a Query filter, choose Custom (regex), leave it on Matches regex and paste this (Q1 in our library):

^(who|what|what's|whats|when|where|why|which|how)\b

It shows searches whose first word is who, what, what's, when, where, why, which or how. The \b means "end of a whole word", so "however" and "whatsapp" do not count. Try Q1 in our free tester first.

Mock-up of the Search Console Query filter dialog with Custom (regex) and Matches regex chosen and the question-word pattern pasted in, ready to apply
Mock-up of the Query filter dialog with the question filter (Q1) pasted in. Interface labels checked in Search Console on 21 October 2026. Your pattern goes in the same box.

What the filter shows on the example site

Example data: Anytown Plumbing (example.co.uk), an invented plumbing and heating firm in Medway, Kent, over 28 days. The export is made up so the filters have something realistic to work on; nothing in it comes from a real Search Console property. Q1 keeps 33 of its 180 visible queries. They carry 4,354 of the 15,825 impressions Search Console lists against a search (27.5%), earn 23 clicks and sit at a weighted average position of 9.3, the foot of page one.

The top rows are jobs people try themselves before they call anyone: "how to bleed a radiator" (380 impressions), "why is my boiler losing pressure" (310) and "how to fix a dripping tap" (300). For a firm like that, the job is to make sure each guide answers the question in the searcher's own words and says plainly when to stop and call a plumber. Position 9.3 means these pages are seen but rarely chosen, so the title and the first line matter.

For other question types and long, prompt-style searches, see how to find questions in Search Console.

Regex in plain English: the 10 symbols you need

You do not need to learn regex as a language. These ten symbols do most of the work.

The question filter split into parts: the caret means starts with, the brackets hold a group, the bar means or, and the word boundary stops however from counting
How to read the question filter, part by part. Example data.

| means "or" (and why spaces break it)

The bar separates choices, and brackets keep them together. Google's help says to "surround the whole expression with parentheses", but its template puts a space each side of the bar. Spaces are characters in regex, so the filter then looks for them too. We checked live on 21 October 2026 that Search Console keeps them: a two-search pattern written with spaces around the bar returned nothing, and the same pattern without them returned both searches. On the example data the same thing happens:

  • (boiler service rochester|emergency plumber chatham) returns 2 queries and 290 impressions.
  • (boiler service rochester | emergency plumber chatham) returns nothing (Example data).

One of Google's own older examples, (the world cup | world cup | 2022 world cup), has the same problem. Write the bar with no spaces.

^ and $: starts with, ends with

Because matching is partial, boiler service matches 18 of the example site's queries and 1,668 impressions, including "boiler service cost" and "how long does a boiler service take". ^boiler service$ matches only the exact search: 1 query and 240 impressions (Example data). Use ^ when the first word matters, as in Q1, and both for one exact search.

Table: boiler service without anchors matched 18 queries and 1,668 impressions; with a caret and dollar it matched 1 query and 240 impressions
Without ^ and $, Search Console matches the text anywhere. Example data: Anytown Plumbing, 28 days. Filtered views leave out anonymised queries, so they will not add up to the unfiltered total.

\b: whole words only

Partial matching also finds words inside words. On the example data, hire returns two searches: "hire a plumber for a day" and "sapphire bathroom taps". Sapp-hire. With \bhire\b only the first is left (Example data). \b marks the edge of a word, so wrap short words in it, as the library's hire filter (I3) does:

\b(agency|agencies|company|companies|consultant|consultancy|freelancer|specialist|expert|hire|services?)\b

One catch: in RE2, \b only understands the letters A to Z, digits and the underscore. So \bcafé\b misses "café near me" and \b£\d+ misses "haircut £20". Write \bcaf[eé] and £\d+ instead.

.*, ?, [ ], \d, \s and {n,m}

Google's table of common expressions leaves out ?, {n,m}, $, \b and escaping, so here are the ones you will use most:

  • .* means "anything, or nothing", useful between two words.
  • ? makes the thing before it optional: https? matches http and https. Google's table uses https*, which means "http" followed by any number of s.
  • [ ] means any one of the characters inside: caf[eé] matches cafe and café.
  • \d is any digit and \s any space.
  • {n,m} counts repeats, and {4,} means four or more. Our long-tail filter (L2) uses it to find searches of five or more words:
^\S+(\s+\S+){4,}$

A backslash makes a symbol ordinary again: \. is a real full stop, which matters in web addresses.

(?-i) for when capitals matter

Search Console ignores capitals unless you add (?-i), and the switch only applies to what follows it: blog(?-i)ABC matches "BLOGABC" but not "blogabc". It is mostly useful for page addresses with capitals.

Queries versus Pages

Page filters work on the full web address, including https:// and your domain. So ^/blog/ returns nothing, which we checked live on 21 October 2026, while on the example site /blog/ returns 8 pages, 9,060 impressions and 35 clicks, the blog index included (Example data). The library's blog filter (P1) adds .+ so the index page itself is left out:

/blog/.+

To pin a single page, write the whole address and escape the dots. The homepage filter (P3), written for the example domain:

^https?://(www\.)?example\.co\.uk/?$

Google records the final address after any redirects and assigns most data to a page's canonical URL, so patterns aimed at tracking parameters or duplicate addresses can return nothing. You can also combine a Query filter with a Page filter, for example questions that land on blog posts.

Matches versus Doesn't match: excluding words without lookaheads

Matches regex keeps what fits; Doesn't match regex, added in June 2021, hides it. That second mode is how you exclude words, because RE2 has no lookahead. The library's non-brand filter (B2), written for the example brand Anytown Plumbing, is a brand pattern set to Doesn't match regex:

\b(anytown[ -]?plumbing|any ?town ?plumbing|anytown ?plumbers|anytown ?heating)\b

To ask for two words in any order, write both orders joined by a bar, in the shape a.*b|b.*a. The library's cost check (K1), written for a boiler firm, works this way:

\bboiler\b.*\b(cost|costs|price|prices|pricing)\b|\b(cost|costs|price|prices|pricing)\b.*\bboiler\b

Search Console will not warn you about a pattern it cannot run. On 21 October 2026 we applied a lookahead in a live property. The dialog accepted it and the report showed 0 clicks, 0 impressions and No data, with no error. That looks exactly like "nobody searched for this", so test a pattern before trusting an empty result.

Mock-up of Search Console showing 0 clicks and 0 impressions after an unsupported lookahead pattern was applied, with no error message
Mock-up: the lookahead boiler(?!cover) applied as a Query filter. An unsupported pattern fails silently and looks like zero searches. Behaviour checked live on 21 October 2026. Example data.

Why your filtered numbers do not add up

Three things make filtered totals look wrong:

Search Console now says so on screen whenever a filter is on: "Chart totals and table results might be partial when filters are applied."

On a small site the gap can be a large part of the story. On the example data, the report shows 152 clicks and 19,400 impressions. The 180 visible queries carry 15,825 of those impressions (81.6%) and 134 of the clicks, so 18 clicks and 3,575 impressions belong to searches Google does not list. The Pages tab shows 165 clicks and 19,860 impressions, more than the report total, because Google counts pages separately (Example data: Anytown Plumbing, 28 days). So read filtered views for patterns and positions, not for totals.

Three tiles: whole report 152 clicks and 19,400 impressions; visible queries 134 clicks and 15,825 impressions; Pages tab 165 clicks and 19,860 impressions
Where the clicks sit on the example site: 18 of 152 come from searches Google keeps private. Example data: Anytown Plumbing, 28 days. Filtered views leave out anonymised queries, so they will not add up to the unfiltered total.

Regex or Google's newer features?

Since late 2025 Google has added three features that overlap with regex, each with limits:

  • Branded queries filter. Announced on 20 November 2025 and opened to all eligible sites on 11 March 2026, it separates brand from non-brand searches with AI-assisted classification. Google says it "is NOT based on a regular expression", that it "isn't available for sites with a low number of impressions", and that "Some queries might be incorrectly identified". On 21 October 2026 we confirmed it is missing from a small property's + Add filter menu.
  • Query groups (27 October 2025) cluster similar searches in Insights, but "are available only to properties that have a large volume of queries".
  • AI-powered configuration (4 December 2025, experimental) turns plain English into filters, regex included. Only some users see it, each "limited to 20 requests per day", and Google says it "may generate filters that don't match your request".

Regex works on small properties, you control the list, and the Search Console API accepts RE2 patterns too. In Data Studio, use REGEXP_CONTAINS and add (?i), because Data Studio is case-sensitive. The brand comparison is in branded versus non-branded searches.

Decision chart: if the branded filter or Query groups are missing from your property, or you need the pattern in Data Studio or the API, use regex
Regex or a built-in feature. AI configuration can write a regex, but it is limited to 20 requests a day, so check what it writes. Sources: Google Search Central blog, 27 October 2025, 20 November 2025 and 4 December 2025.

What changed from 2021 to 2026

When What changed
7 Apr 2021 Regex filters launch. Google's help says matching is case-sensitive.
26 May to 3 Jun 2021 Google's help changes to "not case-sensitive" (no announcement found).
2 Jun 2021 Doesn't match regex arrives.
25 Oct 2021 Regex filters in the Search Console API.
21 Feb 2023 Bulk data export to BigQuery.
27 Oct 2025 Query groups in Insights.
20 Nov 2025 Branded queries filter announced.
4 Dec 2025 AI-powered configuration, experimental.
11 Mar 2026 Branded filter opens to all eligible sites.
Apr 2026 Looker Studio is renamed Data Studio again.
Apr to May 2026 Regex help moves to a new page, which says "+ Add filter" and drops the line that invalid syntax "will return no matches".
3 Jun 2026 Generative AI performance report.
24 Sep 2026 "Web: multimodal" search type, which has no queries.
Timeline from April 2021, when regex filters launched, to September 2026, when the Web multimodal search type arrived
Regex in Search Console, 2021 to 2026. Dates from Google's Search Central blog and help pages.

Ten filters to start with

Each is in our library of 50 Search Console regex filters with examples and a next step. Swap the example brand (Anytown Plumbing), the Kent towns and the example domain for your own. The examples were tested in RE2 but hand-picked, so try each filter on your own searches first.

1. Q1: starts with a question word. Test Q1

^(who|what|what's|whats|when|where|why|which|how)\b

2. Q4: cost and time questions, such as "how much" and "how long". Test Q4

^how (much|long|many|often|soon)\b

3. B2: non-brand searches. Set it to Doesn't match regex. Test B2

\b(anytown[ -]?plumbing|any ?town ?plumbing|anytown ?plumbers|anytown ?heating)\b

4. I1: price and cost intent, including a £ sign anywhere. Test I1

\b(price|prices|pricing|cost|costs|how much|fee|fees|cheap|cheapest|affordable|budget|quote|quotes)\b|£

5. I3: hire a provider. Test I3

\b(agency|agencies|company|companies|consultant|consultancy|freelancer|specialist|expert|hire|services?)\b

6. G2: Kent towns (safer list). Deal, Sandwich, Hythe and Rainham only count when followed by Kent. More in local SEO regex for Search Console. Test G2

\b(kent|gravesend|northfleet|dartford|swanscombe|greenhithe|ebbsfleet|maidstone|medway|rochester|chatham|gillingham|strood|sittingbourne|faversham|sheerness|canterbury|whitstable|herne bay|margate|ramsgate|broadstairs|dover|folkestone|ashford|tenterden|tonbridge|tunbridge wells|sevenoaks|swanley|westerham|edenbridge|west malling|snodland|aylesford|cranbrook|paddock wood|bluewater)\b|\b(deal|sandwich|hythe|rainham),? kent\b

7. G3: service and town, either order. The RE2 way of saying "both words". Test G3

\b(plumber|plumbers|plumbing|boiler|heating|bathroom)\b.*\b(rochester|chatham|gillingham|strood|medway|kent)\b|\b(rochester|chatham|gillingham|strood|medway|kent)\b.*\b(plumber|plumbers|plumbing|boiler|heating|bathroom)\b

8. L2: long-tail, five or more words. Test L2

^\S+(\s+\S+){4,}$

9. K1: one topic, either word order. Then open the Pages tab: if two pages share the impressions, they may be competing. Test K1

\bboiler\b.*\b(cost|costs|price|prices|pricing)\b|\b(cost|costs|price|prices|pricing)\b.*\bboiler\b

10. P1: blog posts only (a Page filter). Test P1

/blog/.+

Test before you paste: our free tester

A tester that uses your browser's built-in regex engine is not testing RE2: it rejects (?i) and (?-i), which Search Console accepts, and runs lookaheads, which Search Console cannot. So a pattern can pass there and still come back empty in Search Console.

Our Search Console regex tester checks a pattern with an RE2 engine against example searches or your own list, and flags common mistakes in plain English. The query sorter sorts every query in your Search Console export into groups, such as questions, local, price and brand, with totals for each. On regex101, choose the Golang flavour and tick the i flag: Go uses RE2 syntax but is case-sensitive by default.

Free: the regex library, cheat sheet and tools

All 50 filters, each tested in RE2 on 21 October 2026, with examples and what to do next.

Limits worth knowing

FAQs

Is the Search Console regex filter case-sensitive?

No. Google's help says regex matching is not case-sensitive by default, so (?i) is not needed; add (?-i) when capitals matter. More in regex not working? 9 fixes.

Can I use lookaheads?

No. RE2 does not support them, and Search Console shows No data rather than an error. Use Doesn't match regex instead; our troubleshooting guide has the other fixes.

Is there a character limit?

Yes. The regex box accepts up to 4,096 characters (checked 21 October 2026). If a list runs over, split it and run each part as its own view.

Does regex work in the Discover and News reports?

For pages, yes. Google's Discover and Google News help pages document a Custom (regex) filter for page addresses. Those reports have no queries.

Can I filter AI Mode or AI Overviews traffic?

Not by query. Google reports AI Overviews and AI Mode within the Web search type, mixed in with other searches, and the Generative AI features report has pages but no queries. A Page regex does work there: on 21 October 2026 we confirmed that a Custom (regex) Page filter applies in that report.

If you would like a hand

Regex filters cost nothing, and a bookmarked view takes seconds to re-run. If you would rather talk through what your own Search Console is showing, see how our SEO service works.

Ready to grow?

Book a free 20-minute audit of your website, Google presence or ad account. No pressure, no jargon.

Get Your Free Audit