GA4 grants write access in a single authorization — re-authorizing no longer downgrades you
A quiet defect with an obvious symptom once you see it: the Connect and Re-authorize buttons requested read-only, while a separate "Enable writes" link added the edit scope. Anyone who re-authorized for any reason — an expired token, a permissions fix — silently downgraded their own write access back to read-only.
What shipped
- Connect and Re-authorize request both scopes, so one authorization gives you the access you expect.
- Nothing new appears on the consent screen. The GA4 edit scope has been offered to every organization for months and is already past Google's verification — unlike the preview families, this needed no gate.
- The read scope is retained deliberately. Dropping it during an "upgrade" is how every read tool would start failing with permissions errors.
- Existing connections are still described accurately — rows granted before this release are read-only, and the integration card says so rather than guessing.
The OAuth failure page that said nothing
Found while fixing the above and worth its own mention: roughly 75 places across every provider redirect to the integrations page on a failed authorization — expired links, cancelled consent, exchange failures — and the page read none of it. Anyone whose sign-in failed landed on a page that gave no indication anything had gone wrong. It now says what happened and what to do.
Frequently asked questions
- Do I need to do anything to get GA4 write access?
- Re-authorize the connection once. Connections made before this release hold the read-only scope, and the integration card tells you which you have rather than assuming.
- Will this show an 'unverified app' warning?
- No. The GA4 edit scope has been offered to every organization since well before this release and is already verified by Google, so the consent screen is unchanged.
- Why keep the read scope if write is granted?
- The two are not a hierarchy in GA4's API. Dropping the read scope during an upgrade would cause every read tool to start failing with permissions errors.