How to exclude development sessions from Clarity recordings? I couldn't find any options in their settings. Also, is it possible to restrict session recordings to certain countries?
The easiest way is to not include the script on localhost with a simple check on the current hostname:
if (!window.location.host.includes('localhost')) {
// code
}
Full snippet like this:
<script type="text/javascript">
if (!window.location.host.includes('localhost')) {
(function (c, l, a, r, i, t, y) {
if(window.location.host.includes('localhost'))
c[a] = c[a] || function () { (c[a].q = c[a].q || []).push(arguments) };
t = l.createElement(r); t.async = 1; t.src = "https://www.clarity.ms/tag/" + i;
y = l.getElementsByTagName(r)[0]; y.parentNode.insertBefore(t, y);
})(window, document, "clarity", "script", "XXXXXXX");
}
</script>
(Replace XXXXX with your key/code from clarity)
To exclude localhost on Clarity, you can use a Segment.
First click Filter, then look for the path section Create a path match using a regular expression (regex). You can use a Regex with a negative lookup.
After this you can save this filter as a segment for future use
Here is the regex
^(?!.*localhost).*
Explanation:
^ Asserts the start of the line.
(?!.*localhost) is a negative lookahead that asserts that what immediately follows the current position in the string isn't localhost. If localhost is found, the regex will fail.
.* matches any character (except for a newline) 0 or more times.
This will match any string that does not contain the word "localhost".
localhost
with the Filter setting Path | URL | Visited URL | excludes | localhost
–
Pooley I have since switched to using Google Tag Manager for managing all the tags. GTM has an option to fire a tag based on hostname pattern match. I have set all tags to fire on production host only.
© 2022 - 2024 — McMap. All rights reserved.