The free official Google add-on (GA4 Reports Builder) with the scheduling step nobody documents, the native Connected Sheets GA4 connector, BigQuery export for unsampled event-level data, plus the sampling and '(other)' aggregation traps that make GA4 numbers in your sheet diverge from the UI.
Google Analytics 4 is where you measure traffic, conversion, and engagement — and the natural next step is to slice that data alongside your other business metrics in a spreadsheet. The friction is that GA4's UI was rebuilt for product-led analytics, and many of the slice-and-dice patterns marketers want are now harder to get to. This guide walks through every realistic path to get GA4 data into Google Sheets in 2026: the official GA4 Reports add-on, Apps Script against the GA Data API, the BigQuery export route for raw event analysis, Looker Studio passthrough, and a no-code connector like Brooked.
Quick comparison: 5 ways to get GA4 data into Google Sheets
| Method | Cost | Setup | Auto-refresh | Two-way sync | Code | Best for |
|---|---|---|---|---|---|---|
| Official 'GA4 Reports' add-on | Free (Google) | 5 min | Manual or via schedule | No (GA is read-only) | None | Standard GA4 reports with simple filters |
| Apps Script + GA Data API | Free | 1–2 hours | Time-driven trigger | DIY | Required (GA Data API) | Custom queries combining many dimensions / metrics |
| BigQuery export + IMPORTRANGE | BigQuery costs | 30 min | Daily (GA's BQ export cadence) | No | SQL required | Custom event analysis on raw GA4 hits |
| Looker Studio + Export to Sheets | Free | 20 min | Manual | No | None | Teams already using Looker Studio dashboards |
| Brooked add-on | Free tier · Pro $29/user | Under 3 min | 15 min / hourly / daily | No | None | Live GA4 data in Sheets without script maintenance |
Method 1 — The official 'GA4 Reports' add-on
Google maintains an official 'GA4 Reports' add-on for Sheets — the spiritual successor to the old GA add-on. Install from the Workspace Marketplace, sign in with the Google account that has GA4 access, and pick a property. The add-on provides a sidebar with the standard GA4 reports (Acquisition, Engagement, Monetization, Retention) plus a report-builder for custom dimension/metric combinations.
It supports scheduled refresh (daily-only by default) and writes results to a specified tab. For most marketers, this is the right starting point.
Pros: Free, official, no setup beyond install, all access controls flow from your Google account.
Cons: Daily-only schedule (no sub-daily refresh). Limited custom dimension flexibility. No AI assistance for question → report mapping.
Method 2 — Apps Script + GA Data API
GA4's Data API (v1beta) gives full programmatic access. From Apps Script, use UrlFetchApp.fetch to call analyticsdata.googleapis.com/v1beta/properties/{id}:runReport with a JSON body specifying dimensions, metrics, date range, filters. Parse the response, write to a sheet, schedule with a time-driven trigger.
Pros: Free, full API surface, customizable.
Cons: Apps Script's 6-minute timeout limits complex reports. You maintain the script. GA4's API quotas are generous but not unlimited — heavy use needs quota requests.
Method 3 — GA4 → BigQuery export → Sheets
GA4's killer feature for serious analytics is the free BigQuery export. Enable it under GA4 Admin → Product Links → BigQuery Links → Link. GA4 streams raw event-level data to a BigQuery dataset daily (or streaming for GA4 360).
From there, use Sheets' built-in BigQuery connector (Data → Data connectors → BigQuery), or write SQL in BigQuery and pull results to Sheets via Brooked's BigQuery connector. This unlocks every event-level analysis GA's aggregated reports can't do: cohort retention, funnel analysis with custom step definitions, attribution stitching across sessions.
Pros: Unlocks raw event-level analysis. No sampling. No '(other)' aggregation.
Cons: 24-hour data delay (or real-time on GA4 360). BigQuery costs (storage + query). Requires SQL.
Method 4 — Looker Studio + Export to Sheets
Looker Studio (formerly Data Studio) has native GA4 support and an 'Export to Sheets' option on each chart. Build a Looker Studio report on GA4 data, then export individual charts to Sheets.
Worthwhile if Looker Studio is already part of your stack. Overkill otherwise — you're maintaining a Looker Studio report as a passthrough.
Method 5 — A Google Sheets add-on (Brooked)
Brooked's GA4 connector authenticates via OAuth (same Google account that has GA4 access), browses your GA4 properties in the sidebar, and lets you pick any combination of dimensions and metrics. Imports refresh on your schedule (15 min / hourly / daily), and the AI agent can pick the right GA4 query for natural-language questions.
Step 1 — Install Brooked
Install Brooked from the Google Workspace Marketplace. The free tier includes 100 imports per month with AI Analyst — no credit card required.
Step 2 — Connect Google Analytics 4
Open the Brooked sidebar (Extensions → Brooked → Open) and click Add data source → Google Analytics 4. OAuth with the Google account that has access to your GA4 property. Brooked discovers every GA4 property your account can read. Pick the property (or properties) you want to query.
Step 3 — Build a report and import it
Click New import. Pick dimensions (Source/Medium, Country, Device Category, Custom Dimension) and metrics (Sessions, Active Users, Conversions, Revenue) using GA4's standard field picker. Set a date range (last 7 days, last 30 days, custom). Add filters (only paid sessions, only conversions over $100). Preview the first 10 rows. Pick a destination range and click Import.
Step 4 — Schedule auto-refresh
Click the gear icon on the import. Toggle Auto-refresh, pick a cadence (15 min, hourly, daily, weekly), pick a timezone. Brooked refreshes server-side so the schedule fires even when no one has the sheet open.
The native GA4 connector inside Google Sheets (no add-on)
This is the path nobody documents and almost nobody finds: open any Google Sheet, click Data → Data connectors → Connect to Google Analytics 4. Pick a GA4 property, choose dimensions and metrics, set a date range, and the result lands in a connected sheet that you can refresh on demand or on a schedule. No add-on install, no API quota, no script. Most of the top SERP results for this query (including the official one from Loves Data) miss this entirely.
Pros: Free. Zero install. Lives inside the Sheets UI where your team already works. Scheduled refresh is built in.
Cons: Available only on Google Workspace accounts with Connected Sheets enabled (Business Standard and above) — not on personal Gmail accounts. The dimension/metric picker is more limited than the GA4 Reports Builder add-on. No way to combine multiple properties in one connected sheet.
Using the AI agent with GA4
Open the Chat tab. Ask: "What were our top 10 acquisition channels by sessions last month?" or "How does our paid search conversion rate compare across regions?" The agent picks the right GA4 dimensions and metrics, runs the query via the Data API, lands the result in the sheet, and can do follow-up analysis in pandas (cohort retention, statistical significance tests on channel performance).
What about Microsoft Excel?
Brooked is Sheets-native. For Excel, your options are the official 'GA4 Reports' add-in for Excel (limited compared to the Sheets one), Power BI's GA4 connector (mature, but you're now in Power BI), or scheduled Apps Script delivery to OneDrive. Most marketing teams that want live GA4 data in a spreadsheet end up standardising on Sheets via Brooked and exporting to .xlsx when an Excel snapshot is needed.
The verdict — which method when
I need standard GA4 reports refreshed on a schedule
→ Official 'GA4 Reports' add-on. Free, made by Google, integrates with GA4 natively. Works for the standard reports without custom dimension combos.
I want custom event analysis on raw GA4 data
→ BigQuery export + Brooked (or IMPORTRANGE). GA4's BigQuery export gives you raw event-level data. Query in SQL, pull results into Sheets. The only path for truly granular analysis.
I want GA4 in Sheets with custom dimension combos and scheduled refresh
→ Brooked (or another add-on). Faster setup than Apps Script, more dimension combinations than the official add-on, no script to maintain.
I want the AI agent to answer GA4 questions in plain English
→ Brooked. The agent picks the right GA4 metric and dimension combo, runs the query via GA Data API, and lands the result in the sheet — no API code required.
Troubleshooting common issues
Frequently asked questions
What's the fastest way to get GA4 data into Google Sheets?
Install the official 'GA4 Reports' add-on from the Workspace Marketplace, sign in with the Google account that has GA4 access, and pick a report. That's the 30-second version. For more flexibility or scheduled refresh, install a connector add-on like Brooked.
Does the GA4 Reports add-on by Google still exist?
Yes, but it's narrower than the old Universal Analytics add-on. The current GA4 add-on covers most standard reports and basic custom queries; for complex custom dimension combinations or scheduled refresh across many reports, you'll outgrow it.
Can I sync GA4 data to Sheets live?
Yes, on a schedule. GA4's API doesn't push updates, so 'live' actually means 'polled on a cadence'. Brooked polls every 15 minutes / hourly / daily depending on configuration; the official add-on does daily schedules. For sub-daily updates, the connector route is your option.
How does GA4 → Sheets compare to GA4 → BigQuery → Sheets?
GA4 → BigQuery is the raw event-level export. Use this when you need custom event analysis, deep funnel analysis, or to escape GA4's sampling and (other) aggregation. The trade-off is the data is on a 24-hour delay and BigQuery charges for storage and queries. For most ad-hoc reporting, the direct GA Data API path (via the add-on or Brooked) is faster.
Can the AI agent answer GA4 questions like 'what's our top channel by conversion rate'?
Yes. The agent knows GA4's metric and dimension model, picks the right combination, calls the Data API, and lands the result in the sheet with computed metrics like CVR added as columns.
Does Brooked work with multiple GA4 properties?
Yes. Add each property as a separate data source in the sidebar. The AI agent can query across properties — useful for portfolio-style reporting across multiple sites or apps.
Will my GA4 user access controls carry through?
Yes. Brooked authenticates with OAuth as your Google account. If your Google user has access to the GA4 property, so does Brooked; if they don't, Brooked doesn't. Standard GA4 permission model applies.
What about Universal Analytics (legacy GA)?
Universal Analytics stopped processing new data in July 2024. Historical UA data is read-only for a limited time. Brooked supports UA reads for historical data while it's still available; for new data, you need GA4.
How do I import Google Analytics 4 data into Google Sheets?
Install Brooked, connect GA4 with OAuth, then pick the metrics and dimensions you need — sessions, conversions, traffic source, revenue — and the data lands in your sheet, refreshable on a schedule. You can also ask the AI Analyst in plain English, e.g. 'GA4 sessions by channel for the last 8 weeks,' and it builds the report for you.
Connect GA4 to Sheets in 3 minutes.
Brooked's free tier covers 100 imports per month with AI Analyst included — no credit card.
Install Brooked free →

