Loading tutorials…
Loading tutorials…
GA4 tells you conversion rate dropped 18% last Tuesday. Clarity tells you why. The integration lets you click from a GA4 anomaly straight to the recordings that caused it — but only if the connection is set up correctly.
Who this is forAnyone running both GA4 and Clarity who keeps switching between tabs to investigate problems. If you have already debugged a conversion drop manually by cross-referencing GA4 + Clarity, you know how much this integration would save — 2-3 hours per investigation.
What you'll need
Step 1
Settings → Integrations → Google Analytics → Connect. Sign in with the Google account that has GA4 admin.
In Clarity, Settings → Integrations.
Find "Google Analytics 4" and click Connect.
Sign in with the Google account that has Admin access on your GA4 property. (Editor access is NOT enough — Admin required.)
After auth, select your GA4 property from the dropdown. Confirm.
Clarity tests the connection and shows "Connected" with the GA4 property name. Save.
Step 2
Clarity Settings → Integrations → GA4 → Measurement ID should match your GA4 property → Data Streams → Measurement ID.
In Clarity, Settings → Integrations → Google Analytics 4 → click "Configure."
Confirm the Measurement ID displayed (format: G-XXXXXXXXXX) matches your GA4.
In GA4 → Admin → Data Streams → click your web stream → top right shows Measurement ID.
If they don't match, you may have connected to the wrong property (common in multi-property accounts). Disconnect and reconnect, choosing the correct property.
Save.
Step 3
Clarity Settings → Integrations → GA4 → enable "Send Clarity session ID to GA4." This creates a `clarity_session_id` event parameter in GA4.
In the GA4 integration config, find "Send Clarity session ID to GA4" and enable it.
This tells the Clarity tag to push a `clarity_session_id` parameter into GA4 with every event.
In GA4, register this as a custom dimension: Admin → Custom Definitions → Custom Dimensions → New → "Clarity Session ID" → User-scoped, event parameter `clarity_session_id`.
Wait 24-48 hours for the dimension to populate.
Once populated, you can filter any GA4 report by Clarity Session ID — and click through to the actual recording in Clarity.
Step 4
In GA4 Explore → add Clarity Session ID as a dimension on any report. Each row links to the recording.
In GA4, open Explore (left sidebar).
Create a new Free-form exploration.
Add dimensions: Event name, Page path, Clarity Session ID.
Add metric: Event count.
Filter for events of interest (e.g., `purchase` events where revenue is unusually low, or `page_view` events on a problem page).
Each row shows a Clarity Session ID. Copy the ID, paste into Clarity → Recordings → search by Session ID → watch the recording.
This workflow turns "GA4 shows a drop" → "watch the user who experienced the drop" into a 90-second motion.
Step 5
Clarity Settings → Integrations → GA4 → enable "Sync GA4 audiences." Use audiences to filter Clarity recordings.
In the Clarity GA4 integration, enable "Sync GA4 Audiences" (if available — this feature rolled out 2025-2026).
In GA4, create audiences for the segments you care about: "High-LTV customers," "Cart abandoners," "Mobile traffic on /pricing."
Wait 24-48 hours for audiences to sync.
In Clarity Recordings → Filters → "GA4 Audience" → select the audience.
Now you can watch recordings of specifically your most valuable segments — high-LTV mobile users, cart abandoners on the new checkout, etc.
This is the killer integration feature. It only works if both audiences sync and Clarity Session IDs land correctly.
Step 6
Visit your site in incognito → complete a key action → cross-reference the GA4 session with the Clarity recording.
Open incognito → visit your site → click around → submit a form (or complete a purchase).
In GA4 → Realtime → find your session. Note the Clarity Session ID parameter (if you registered the custom dimension).
In Clarity → Recordings → search by Session ID. Confirm you find the matching recording within 5-10 minutes.
Verify the events you triggered in the recording (page views, clicks) match the events logged in GA4 for that session.
If they do not match: your event timing is off, or one tool is dropping events. Most common cause: ad-blocker terminated one tool mid-session. Test in a clean browser.
Common mistakes
Connecting with Editor instead of Admin access
What goes wrong: Editor access lets you create the link but not modify it. Six months later, when you need to update the audience sync, you cannot — and the original Admin (often a former contractor) is unreachable. You re-create the integration from scratch and lose 2-4 weeks of historical Session ID linkages.
How to avoid: Always connect with an Admin account — ideally a shared ops account, not a personal Google login.
Forgetting to register the Clarity Session ID custom dimension
What goes wrong: Clarity pushes `clarity_session_id` into GA4 events, but without registering as a custom dimension, it never appears in reports. You think the integration is broken when it is working — the data is just hidden.
How to avoid: GA4 → Admin → Custom Definitions → Custom Dimensions → New → register `clarity_session_id` as a User-scoped event parameter. Wait 24-48 hours to populate.
Not testing the cross-tool jump workflow once
What goes wrong: You set up the integration, never use it, and the value is $0. The integration's value is entirely in the cross-tool jump — you must run the workflow at least once to internalize it.
How to avoid: After setup, do ONE investigation: pick a GA4 anomaly (any drop or spike), find the Clarity Session IDs in GA4 Explore, watch 2-3 recordings. The 30-min exercise teaches the muscle memory.
Linking the wrong GA4 property in multi-property accounts
What goes wrong: Audiences sync from the wrong property, recordings get filtered by wrong dimensions, and you spend hours investigating phantom patterns. Lost: 3-5 hours of debugging + an entire afternoon of wrong CRO direction.
How to avoid: After connecting, always verify the Measurement ID matches between Clarity Settings → Integrations and GA4 Admin → Data Streams. The ID is the source of truth.
Letting the integration drift after a GA4 reconfigure
What goes wrong: Your dev team creates a new GA4 property (re-platforming, migration, account split) but forgets to update Clarity. Clarity keeps pushing Session IDs to the old property. New GA4 has no Clarity data; old GA4 has stale Clarity data. Investigation: 2+ hours to even diagnose.
How to avoid: Document the Clarity-GA4 link in your team's analytics runbook. Any change to GA4 properties triggers a re-link in Clarity. Re-validate quarterly.
Recap
Done — what's next
How to set up Clarity session recordings without drowning in noise
Read the next tutorial
Hand it off
The GA4-Clarity integration is one of the highest-leverage analytics setups, but only if someone uses it during weekly investigations. A CRO specialist runs cross-tool queries as a default and surfaces insights that pure-GA4 or pure-Clarity analysis would miss. EverestX matches you with vetted specialists starting at $14-16/hr.
See CRO specialist rates
Standard GA4 (the free tier) works for all core integration features — Session ID linking, audience sync (where supported), and basic event-level linking. GA4 360 adds higher data limits and unsampled reports but nothing the Clarity integration specifically requires.
The integration shares Session IDs and event parameters, not raw user data. Email addresses, names, and other PII are not transmitted via the integration — they remain inside whichever tool collected them (subject to each tool's masking config).
24-48 hours after creating the audience in GA4 AND after the audience reaches its minimum size (typically 30+ users). Audiences below the minimum size never sync.
Yes — common pattern for multi-site businesses. Each Clarity Project links independently. In GA4, register a `clarity_project_id` parameter alongside `clarity_session_id` to distinguish which site a session came from.
No. Historical Session IDs already pushed to GA4 stay in GA4. Recordings stay in Clarity. You just stop sending new IDs going forward. Re-connecting later resumes the link with no historical backfill.
Microsoft Clarity
Session recordings are powerful — until you have 50,000 of them and no time to watch any. The difference between useful and useless is filter discipline. Here is the system that surfaces the 10-20 sessions per week that actually inform decisions.
Microsoft Clarity
Out-of-the-box Clarity gives you "all sessions, all devices, all sources." That is useless. Segmentation is where Clarity goes from "looks cool" to "actually changes decisions." This is the segment library specialists build.
Google Analytics 4
GA4 isn't hard to install — it's hard to install *correctly* so the data is actually usable six months from now. This is the walkthrough that prevents the rebuild most owners do at month four.
Microsoft Clarity
You installed Clarity. You watched some recordings. You ran an A/B test or two. So why is conversion rate still flat? This is the honest framework: when DIY CRO hits its ceiling and a specialist starts paying for themselves.