GA4, with the rest of the story.

Duct reads Google Analytics 4 beside Search Console, your ads and Stripe, and answers why a number moved. When the fix is in GA4, it proposes it and waits for you.

  • Sign in with Google
  • Reads two datasets
  • Six kinds of change
  • Fields audited Sep 24, 2026
An example answer. Yours is read from your own accounts.
A Duct session: asked why activation dropped after an Android release, Duct reads GA4, Clarity and Stripe, finds the permission dead end and proposes two GA4 key events
Ask why activation dropped. Duct splits GA4 either side of the release, finds the dead end, and proposes the two key events that will prove the fix.

Ask

Questions you can just ask

  • Why did signups drop last week?

    GA4 + Google Ads + Search Console
  • Which landing pages convert organic visitors, and which only bounce them?

    GA4 + Search Console
  • Are staff and QA sessions inflating my conversion rate?

    GA4
  • Do the users GA4 counts as converted show up as revenue?

    GA4 + Stripe

Access

What it reads. What it can change.

What it reads

  • GA4 landing pagespagechannelsessionsbounce rateengagement rateaverage session durationconversionsrevenue
  • GA4 conversion pathssource / mediumchannel groupconversionsrevenuesessions

Google Analytics Data API (ga4-data-v1beta) · fields audited Sep 24, 2026 · read the source

What it can change

  • Register GA4 key eventMay self-apply in assisted mode
  • Remove GA4 key eventAlways waits for you
  • Create GA4 audienceMay self-apply in assisted mode
  • Archive GA4 audienceAlways waits for you
  • Link Google Ads account to GA4
  • Unlink Google Ads account from GA4Always waits for you

Every one rolls back. By default each change waits for your Apply: it arrives as a preview of what it touches and lands in the activity log. How approval works

Knowledge

What Duct already knows about GA4

  1. 01

    GA4 counts your team as customers.

    Out of the box it filters no internal traffic, so staff and QA sessions land in production numbers. Before Duct trusts a conversion count, it looks for clusters of users that look like a QA team.

  2. 02

    Organic is checked against Search Console.

    Bot bursts can log 40 times more organic sessions than Search Console clicks. Duct compares the two before it calls a week a collapse or a win.

  3. 03

    Event names are exact.

    sign_up and signup are two different events, and a rename zeroes the old series without warning. Duct checks for it before comparing periods.

  4. 04

    New audiences start empty.

    A GA4 audience only collects members from the day it is created. Duct says so when it proposes one.

Read the GA4 notes Duct's agent works from

Setup

Connect GA4 in three steps

  1. 1

    In Duct, open Connections and choose Google Analytics.

  2. 2

    Sign in with Google and allow access.

  3. 3

    Pick the GA4 property this project reads.

Duct asks for read access and edit access when you sign in. Reading uses read access; edit access is only for the changes below, and each of them still waits for your Apply.

Keys and tokens are stored encrypted by Duct's hosted API, never in your browser, and you can remove a connection at any time. A self-host build keeps them on your own machine.

FAQ

GA4, answered

What can Duct change in GA4?

Six: register GA4 key event, remove GA4 key event, create GA4 audience, archive GA4 audience, link Google Ads account to GA4 and unlink Google Ads account from GA4. By default each one waits for your Apply, and every one can be rolled back.

Does Duct need edit access to GA4?

Only for changes. Answers and briefs use read access. Key events, audiences and the Google Ads link need edit access, which Duct asks for when you sign in; a connection made without it stays read-only.

Why does Duct compare GA4 with Search Console?

Because GA4 alone can be fooled. Bot traffic logged as organic search once ran 40 times higher than real Search Console clicks for weeks, then stopped, and any baseline across that window reads as a collapse. Two sources that should agree are the check.

Is it free?

Yes. Duct is free with your own model keys or the ChatGPT plan you already have, and the core is MIT licensed. A paid plan later bundles the models; nothing open today moves behind it. What will cost money.