What is Regular Expression in Google Analytics?
Regular expressions, or Regex, can feel like a secret language used by developers, but they are one of the most powerful tools you can learn for filtering your data in Google Analytics. If you've ever found yourself wishing you could filter a report by multiple pages at once or needed to isolate specific types of campaign traffic, Regex is the answer. This guide will walk you through exactly what Regular Expressions are, the core syntax you need to know, and how to apply them directly within your GA4 reports.
What Exactly is a Regular Expression (Regex)?
Think of Regex as a super-powered version of a "find" command. It's a sequence of characters that specifies a search pattern. Instead of finding a single, exact piece of text, a Regex pattern can match multiple different variations at once.
For example, you could write a single expression that finds all of these page URLs:
/running-shoes/mens/product-123
/running-shoes/womens/product-456
/running-shoes/kids/product-789
Without Regex, you'd have to create three separate filters. With it, you write one simple pattern. This saves an enormous amount of time and unlocks a level of flexibility that basic report filters just can't offer. It lets you slice and dice your analytics data with precision, group related content together, and create cleaner views by filtering out irrelevant information.
Your GA4 Regex Cheat Sheet: The Most Common Characters
The power of Regex comes from a handful of special characters called "metacharacters." While there are many, you only need to know a few to become effective in Google Analytics. Here are the essentials.
The Pipe ( | ): The "OR" Statement
This is arguably the most useful and common Regex character in Google Analytics. The pipe symbol | acts as an "OR" condition, allowing you to match one term OR another.
How it works: Separates multiple possible matches.
GA4 Example: You want to see traffic from both Facebook and LinkedIn in your Source / Medium report. You could use a filter with the Regex:
The Dot ( . ): The Wildcard
The dot . is a wildcard that matches any single character - a letter, a number, a space, or a symbol. It’s useful when you need to match strings that have minor variations.
How it works: Fills in for any single character.
GA4 Example: You have URLs like
/page-aand/page_a. The Regexpage.awould match both, as the dot can represent either the hyphen or the underscore.
The Backslash ( \ ): The Escape Character
What if you need to search for a character that has a special meaning in Regex, like a dot in a URL? The backslash \ lets you do just that. It "escapes" the special character, telling the Regex engine to treat it as a literal character.
How it works: Placed before a metacharacter to remove its special meaning.
GA4 Example: You want to find traffic to a specific page,
product_page.html. If you useproduct_page.html, the dot would act as a wildcard and could mistakenly matchproduct_page_html. To match the literal dot, you would use:
The Caret ( ^ ) and Dollar Sign ( $ ): The Anchors
These two characters, called anchors, let you specify where in the string your pattern should match. The caret ^ matches the beginning of a string, and the dollar sign $ matches the end.
How they work:
^pins the match to the start,$pins it to the end. They can be used together to match an entire string exactly.GA4 Example: Let's say you have pages like
/blog(your main blog page) and/blog/some-article.Using the filter
/blogwould match both URLs.Using
^/blog$would only match the exact/blogpage, because it requires the string to start and end with/blog.
Square Brackets ( [ ] ): The Character Set
Square brackets let you create a list of characters to match. Any single character inside the brackets will be a valid match. You can also specify a range of characters with a hyphen.
How it works: Matches any one character from the list inside the brackets.
GA4 Example: Imagine you have numbered thank you pages like
/thankyou-1,/thankyou-2, etc., up to 5. Instead of writing/thankyou-1|/thankyou-2|..., you can use a character set:
Or, even more efficiently using a range:
Parentheses ( ( ) ): The Grouping Operator
Parentheses are used to group parts of an expression together. This is extremely useful when combining different Regex operators.
How it works: Creates logical groups that operators like
|,*, or+can apply to.GA4 Example: Suppose you want to see all page views from your blog and news sections. The page paths start with
/blog/and/news/. You can use parentheses to group the "OR" statement efficiently:
This pattern says: "Match strings that start with (^) either /blog/ OR /news/."
The Asterisk ( * ), Plus ( + ), and Question Mark ( ? ): The Quantifiers
These symbols specify how many times a character should appear.
*(Asterisk): Matches the preceding character zero or more times.+(Plus): Matches the preceding character one or more times.?(Question Mark): Matches the preceding character zero or one time (making it optional).
GA4 Example: You have URLs with and without trailing slashes (e.g., /contact and /contact/). Using ^/contact/?$ would match both. The ? makes the final trailing slash / optional.
How to Use Regex in GA4 Reports
Now that you have the building blocks, let's put them to work. Using Regex in GA4 is simple. Nearly any report that has a search or filter box can use it.
Here’s how to apply a Regex filter to the "Pages and screens" report:
Navigate to Reports → Engagement → Pages and screens.
Above the data table, click the Add filter button.
A filter builder will appear on the right side of your screen.
Select the dimension you want to filter. For this report, we'll choose Page path and screen class.
Under "Match Type," change the default (usually "contains") to matches regex.
In the "Value" field, enter your Regex pattern.
Click Apply.
Your report table will instantly update to show only the data that matches your regular expression.
Practical Use Cases in Google Analytics
Example 1: Analyzing Traffic to All Product Category Pages
Imagine your site sells apparel and your product category URLs follow a pattern like /mens/shirts/, /womens/t-shirts/, /kids/footwear/. If you want to see traffic for all product category pages, you can write a pattern to match any URL that sits two levels deep.
Dimension: Page path and screen class
Regex:
^/(womens|mens|kids)/.*/$What it does: This matches any page path that starts with
/womens/,/mens/, or/kids/, has any characters after (.*), and ends with a/.
Example 2: Grouping Typos in Campaign Tags
UTM tagging is powerful but prone to human error. Let’s say marketers have tagged a campaign source as Facebook, facebook, and FB. You can group these together in a filter.
Dimension: Session source
Regex:
^(F|f)acebook|FB$What it does: This matches "Facebook" (with a capital 'F') or "facebook" (with a lowercase 'f') OR ("|") the exact string "FB". Note: GA4 Regex is not case-sensitive, so
facebook|fbwould also work, but being explicit can be good practice.
Example 3: Isolating Blog Posts From a Specific Year
If your blog URLs include the year of publication (e.g., /blog/2023/my-great-post/), you can easily isolate all posts from a particular year.
Dimension: Page path and screen class
Regex:
^/blog/2023/What it does: This matches any page path that starts with
/blog/2023/, giving you a quick report on all blog content from that year.
A Few Tips for Success
As you get started, keep these pointers in mind to avoid common frustrations:
Start simple. Don't try to write a massively complex expression on your first try. Start with a simple "or" condition (
|) and check your results. Build piece by piece.Test your expressions outside of GA4. A tool like regex101.com is invaluable. You can paste in a list of sample URLs or campaign names and live-test your patterns to make sure they're matching what you expect before you apply them to your reports.
Remember to escape special characters. The most common mistake is forgetting to use a backslash (
\) to escape dots in URLs. An expression likemysite.comwill matchmysiteQcom. An expression likemysite\.comwill only matchmysite.com.
Final Thoughts
Regular Expressions open up a new level of control and precision in Google Analytics. While the syntax looks technical at first, learning just a few core operators like the pipe, caret, and dollar sign can empower you to create highly specific views, aggregate messy data, and get clearer answers from your reports without dozens of manual filter adjustments.
Mastering tools and remembering tricky syntax is exactly the kind of friction we created Graphed to eliminate. Instead of crafting the perfect Regex pattern to group all of your blog articles, you can simply connect your Google Analytics account and ask a question in plain English, like "Show me a report of all sessions and pageviews for pages that start with /blog/." Graphed generates the chart or dashboard for you in seconds, saving you from the hassle of report configuration so you can get right to the insights.