All posts
REGEXBranded KeywordsGoogle Search Console

GSC Regex to Exclude Brand Keywords (Copy-Paste Pattern)

Published 20 July 2026·7 min read
Peter Claridge
Founder, KeywordHistory · Fractional CMO at Riverforge

Google's native branded queries filter (launched November 2025) handles this for most eligible properties — but plenty of sites still aren't eligible: URL prefix properties, new sites, low-volume sites. For those, the regex workaround is still the only way to isolate non-branded traffic.

Here's the pattern. Apply it in GSC Performance → Query filter → Custom (regex) → Doesn't match regex:

(?i)(brandname|brand name|brnd|misspelling1|productname)

Replace the terms with every variation of your brand and product names — including common misspellings, abbreviations, and any product or feature names that wouldn't be searched without prior brand awareness. The (?i) prefix makes the match case-insensitive (technically unnecessary in GSC since it's case-insensitive by default, but harmless and explicit).

How to Apply It

  1. Open GSC → Performance → Search Results
  2. Click "+ New" → Query
  3. Change the dropdown to "Custom (regex)"
  4. Important: Select "Doesn't match regex" — not the default "Matches regex"
  5. Paste your brand exclusion pattern
  6. Click Apply

The data you see after applying the filter is your non-branded organic traffic — the cleanest signal of actual SEO performance. Clicks here are users finding you because of content, not because they already knew your name.

What to Include in the Exclusion List

The exclusion regex is only as good as the variations you list. The pattern that consistently catches the most branded traffic:

  • Your primary brand name (exact)
  • Common abbreviations (e.g., "kh" for Keyword History)
  • Misspellings users actually type — check your branded queries report to find them
  • Product names that don't include the company name
  • Feature names that are uniquely yours
  • Founder or executive names if they're searched
  • URL fragments (e.g., "keywordhistory com," "yoursite.com")

Example: A Realistic Exclusion Regex

For a hypothetical SaaS company called "FlowPath" with a flagship product called "Routemap":

(?i)(flowpath|flow path|flow-path|flowpth|fllowpath|routemap|route map|flowpath\.com)

That single pattern excludes the brand name, two-word variations, a hyphenated version, two common misspellings, the product name with variations, and queries containing the domain. Most non-eligible sites get to 90%+ accurate brand exclusion with 8-15 terms.

How to Find Your Branded Variations (If You Don't Know Them Yet)

The fastest way to build a complete exclusion list: do the inverse first. Apply the regex as "Matches regex" with just your primary brand name:

(?i)brandname

Now sort the resulting queries by impressions. The top of the list shows you every variation, misspelling, and brand-adjacent query users actually search for. Note them all, build your exclusion regex, and switch back to "Doesn't match regex" mode.

At StreamAlive, this process turned up branded misspellings I'd never have thought to include ("steamalive" without the R was surprisingly common, as was "stream a live" with spaces). The exclusion regex got significantly more accurate after this audit.

The Persistence Problem

This is where the regex approach starts to fray. GSC doesn't save your filter. Every time you log out and back in — every time you switch between properties on a multi-client account — every time the team needs to pull a fresh report — the regex needs to be re-pasted.

For a single SEO managing one site, this is mild friction. For an agency managing 30 clients, each with their own branded exclusion regex, it's a structural time tax. And it's invisible: nobody tracks "minutes spent re-pasting regex into GSC," but the cumulative cost is significant.

It also doesn't survive the 16-month data retention window. If you want to do a 3-year trend on non-branded organic traffic, the regex doesn't help with data that no longer exists.

The Native Filter (When You Have It)

If your property is eligible for Google's native branded queries filter: use it. It's AI-classified, covers misspellings and brand-adjacent terms automatically, includes an Insights card showing the branded/non-branded split over time, and doesn't require pasting any regex.

Eligibility requirements: domain property (not URL prefix), sufficient query volume. Most established sites qualify. Most newer sites don't yet. The regex approach is the bridge until your property qualifies.

The Done-For-You Version

Keyword History lets you set the brand exclusion regex once as a permanent property rule. The "Non-Branded" segment then applies retroactively across your full BigQuery-archived history (not just the current 16-month GSC window) and forward as new queries match. Add a new brand variation later? Update the rule in one place; the segment recalculates for all historical data automatically.

The deeper benefit isn't avoiding the paste-the-regex friction — it's that the non-branded segment becomes a permanent dimension you can layer against other dimensions. Non-branded performance by page type. Non-branded performance by country. Non-branded performance by position band. Combinations like these aren't really feasible by stacking regex filters in GSC's native interface.

One Warning on Aggressive Exclusion

Don't over-exclude. A regex that includes generic words associated with your brand (e.g., the literal name of an industry your brand operates in) will accidentally filter out legitimate non-branded queries. If your brand is called "Search," you can't put "search" in the exclusion regex — you'd lose all the non-branded SEO traffic too.

Test your exclusion regex by applying it as "Matches regex" first. Look at what queries get caught. If non-branded queries are appearing in the matched list, the regex is too aggressive. Refine and re-test before flipping to "Doesn't match regex."

Brand exclusion is foundational to any honest SEO performance report. The regex above gets you 90% of the way there manually. The remaining friction — persistence, propagation across sites, historical depth — is what tooling solves once the volume of work justifies it.

Peter Claridge

Written by

Peter Claridge

Founder, KeywordHistory · Fractional CMO at Riverforge

Led organic growth at Unmetric, eG Innovations, and StreamAlive over 13+ years. Built KeywordHistory after rebuilding the same Google Data Studio dashboards one too many times.

Connect on LinkedIn

Keep your keyword history forever.

Every day you wait, Google deletes another day of your GSC data. KeywordHistory backs up to BigQuery automatically and surfaces the insights that matter.

Start free