---
title: "Google Analytics 4 integration: see every QR code scan in GA4"
description: "New: connect Google Analytics 4 once and every QR code scan, link click, form submission and piece of visitor data captured lands in GA4, sent from our servers with no delay and no personal data. Available on every plan, and from the API, MCP server, CLI and SDKs."
canonical: "https://linkbreakers.com/help/article/google-analytics-4-integration-see-every-qr-code-scan-in-ga4"
last-updated: 2026-10-30
---

# Google Analytics 4 integration: see every QR code scan in GA4

> New: connect Google Analytics 4 once and every QR code scan, link click, form submission and piece of visitor data captured lands in GA4, sent from our servers with no delay and no personal data. Available on every plan, and from the API, MCP server, CLI and SDKs.

## Short answer

New today: **Integrations > Google Analytics 4**. Paste your GA4 Measurement ID and a Measurement Protocol API secret, and every person who scans one of your QR codes or opens one of your links shows up in Google Analytics, along with the forms they submit and the data they share. The events are sent from Linkbreakers' servers, so visitors wait for nothing and ad blockers do not get in the way.

No personal data ever reaches GA4: it gets the names of the fields a visitor filled in, never their answers. The integration is available on every plan, Free included, and an AI agent can set it up through the MCP server, the API, the CLI or the SDKs.

## What we shipped

### Scans, clicks and leads as GA4 events

Each step of a visit becomes a GA4 event when it happens:

| Event | Sent when |
|---|---|
| `qr_scan` | A person scans a QR code |
| `link_click` | A person opens a link |
| `generate_lead` | A person submits a form |
| `location_shared` | A person shares their location on a Location request step |
| `visitor_data_added` | Another step saves data to the visitor's profile |

Every event carries the link name and short link, and GA4's own country, city and device fields, so the standard reports split scans by country or by phone without any setup. All the steps of one visit share a GA4 session.

`generate_lead` is a GA4 recommended event: mark it as a key event and form submissions from your printed QR codes count as conversions next to the ones from your website.

### Server side, no delay

Unlike the [Google tag pixel](/help/article/google-tag-ga4-and-google-ads-for-qr-codes-and-links), which loads Google's script in the visitor's browser, the integration uses Google's Measurement Protocol. The visitor is redirected instantly, as before, and Linkbreakers sends the events from its servers afterwards. Nothing runs in the browser, so ad blockers cannot drop them and no cookie is set.

### Only people, and no personal data

Only visits classified as **Human** are sent. Crawlers, link previews, [AI agents and automated browsers](/help/article/how-linkbreakers-detects-ai-agents-and-automated-browsers) stay out of your GA4 numbers.

Google's terms forbid personal data in Google Analytics. A form submission arrives as `generate_lead` with `fields: email,company`, never with the email or the company. Coordinates from a shared location are not sent either. The leads themselves stay in Linkbreakers.

### Built for agents too

- **MCP server**: `google_analytics_integration_get`, `google_analytics_integration_update`, `google_analytics_integration_test` and `google_analytics_integration_delete`
- **REST API**: `GET`, `PUT` and `DELETE /v1/integrations/google-analytics`, and `POST /v1/integrations/google-analytics/test`
- **CLI**: `linkbreakers google-analytics-integrations update`, arriving with the next CLI release
- **SDKs**: the same operations in TypeScript, Python, Go, Java and Rust
- **Assistant**: ask "Connect Google Analytics with G-ABC123DEF4 and my API secret" in the dashboard

An agent connected to the [MCP server](/help/article/mcp-server-setup) can take this prompt as is:

> Connect my Linkbreakers workspace to Google Analytics with Measurement ID G-ABC123DEF4 and API secret abcDEF123, then send a test event.

The [feature article](/help/article/google-analytics-4-integration-for-qr-codes-and-links) has the full setup, the custom dimensions to register and every event parameter.

## Who it helps

- **Marketing teams** that report everything in GA4 can put print, packaging and event scans next to their web traffic
- **Agencies** can send each client's scans to the client's own property, with a workspace per client
- **Event organizers** can count leads collected from badge or booth QR codes as GA4 key events

## Limits and caveats

- A person who scans is their own GA4 user; their later visit to your website is not joined to the scan. [UTM parameters](/help/article/what-is-a-utm-builder-in-linkbreakers) on your destinations attribute that visit to the campaign
- Custom parameters such as `link_name` need registering as custom dimensions in GA4 before they show in standard reports
- Google accepts events even with a wrong API secret; check DebugView after the test event
- One GA4 property per workspace

## Frequently asked questions

### Which plans include it?

Every plan, Free included.

### Does it make my links slower?

No. The events are sent from our servers after the redirect.

### Do I still need the Google tag pixel?

Only for Google Ads remarketing audiences. If you keep both pointed at the same GA4 property, each visit is counted twice, so point the pixel at Google Ads or at another property.

### Are form answers sent to Google?

No. Only the names of the fields filled in.
