# FunnelKeeper + Google Tag Manager

> Catch the broken tag that is quietly spoiling every number you trust.

Spend running while the GA4 tag is missing or paused is the most expensive silent failure in marketing measurement. FunnelKeeper audits the live container and raises a card when the two disagree.

- **Category:** Tracking quality
- **Access:** read, plus publish on explicit confirm
- **Sync:** Daily tag audit.
- **On demand:** no — scheduled only

## What FunnelKeeper reads from Google Tag Manager

- The live container version — is the expected GA4 tag present and unpaused
- Measurement IDs found, compared against the property you connected
- Paused-tag status, which becomes a Keeper alert when spend is running

## What it never does

- No silent edits. The container is only written when you explicitly confirm a snippet deploy
- No changes to tags FunnelKeeper did not create
- No publishing as a side effect of connecting or syncing

## How to connect Google Tag Manager

| Surface | How |
| --- | --- |
| Dashboard | Integrations → Google → Connect with Google, or Grant access instead (service-account email) |
| MCP | connect_service_account (zero-click if you have GTM admin) or connect_source_start with kinds: ["gtm"]; deploy_tracking_gtm to publish |
| CLI | fk connect google-sa --product <slug>  or  fk connect gtm --product <slug> |
| API | POST /connect/google/service-account/start  or  POST /connect/google/start |

## FAQ

### Why does the grant ask for container edit and publish scopes?

So FunnelKeeper can offer to install the first-party tracking snippet as a Custom HTML tag for you. It only fires on an explicit confirm. If you would rather not grant it, connect with the older read-only grant and paste the snippet yourself.

### What does the tag audit actually catch?

The case where spend is live and the GA4 tag is missing, paused, or pointing at a different measurement ID than the property you connected. That combination makes every downstream number wrong, so it becomes a card rather than a footnote.

## Related

- [Google Analytics 4](https://funnelkeeper.com/integrations/ga4/) — Sessions, channels and landing pages — the traffic half of the payback join.
- [First-party event tracking](https://funnelkeeper.com/integrations/event-tracking/) — No database to connect? Send funnel events straight from your site or backend.
- [Google Ads](https://funnelkeeper.com/integrations/google-ads/) — Spend at campaign, ad group, keyword and ad grain — so each row gets a real ROAS.

Full catalogue: https://funnelkeeper.com/integrations/ · Machine index: https://funnelkeeper.com/llms.txt
