Search Console analysis
Branded vs non-branded keywords: how to split them in Search Console
Why every SEO report should separate branded and non-branded search, the regex to do it in Google Search Console, and the edge cases that make the split wrong.
On this page
Part of How to analyze Google Search Console data
Branded keywords contain your company or product name; non-branded keywords do not. The split matters because the two behave differently: branded search measures demand you created elsewhere (ads, word of mouth, sales), while non-branded search measures what SEO actually wins. In Google Search Console you separate them with a query filter set to Custom (regex), using a pattern of your brand names and their common misspellings.
Why the split changes your conclusions
- Brand clicks hide SEO problems. A TV campaign can lift branded clicks while non-branded clicks fall, and the total looks fine.
- Brand CTR distorts benchmarks. Branded queries click at rates no CTR curve predicts, so they make every average look better than it is.
- Brand is not what you sell in a report. Clients and managers want to know what SEO earned. Non-branded growth is that number.
The regex filter in Search Console
- 1
Open the filter
Performance → Search results → Add filter → Query.
- 2
Choose Custom (regex)
Pick Matches regex to see branded queries, or Doesn't match regex to see non-branded ones.
- 3
Paste the pattern
Use one of the patterns below, adapted to your names.
- 4
Check the result
Open the Queries tab and scan the first hundred rows for anything misclassified. Adjust the pattern before you trust the totals.
(?i)acme\s?books|acmebook|acme\s?bokks|akme\s?books(?i)\b(acme|acme\s?books|ledgerly|invoice\s?pilot)\b(?i)(ακμε|ακμή|akme|acme)(?i) makes a pattern case-insensitive. Keep patterns short and test them on the Queries tab.Finding the misspellings you forgot
Filter Queries with Matches regex and only the first three or four letters of your name, for example (?i)acm|akm. Sort by impressions. The variants people actually type will be near the top, and the ones you did not expect are usually the most useful to add.
Edge cases that make the split wrong
| Case | Problem | What to do |
|---|---|---|
| Your brand is a common word | “Notion” or “Apple” also match generic searches | Match the brand with a category word, such as notion\s?templates? |
| Brand plus category | “acme invoicing software” is branded but shows category demand | Count it as branded, and track it separately if it grows |
| Competitor brands | “acme alternative” or “vs” queries are non-branded for you but high intent | Keep them non-branded and report them as a commercial group |
| Product names | Product names may not contain the company name | Add each product name to the pattern |
| Founder names | People search the founder's name with the company | Decide once and keep it consistent across reports |
Using the split in reporting
Report non-branded clicks and impressions as the headline SEO metric, with branded shown alongside for context. A month where branded rises and non-branded falls is a month where SEO needs attention, whatever the total says. The SEO report template puts both on the first page.
In AnotherSEOGuru App, brand and non-brand are quick filters on every query table, and the opportunity engine leaves brand queries out of striking-distance estimates automatically. The free opportunity finder asks for your brand names for the same reason.
What are branded keywords?
What are non-branded keywords?
What share of traffic should be non-branded?
Is the regex filter case-sensitive?
Find these opportunities in your own data
Upload your Search Console export to the free opportunity finder. It runs in your browser, nothing is uploaded and there is no sign-up.
Was this page helpful?