GA4 data in Google Sheets, refreshed on a schedule

Sessions, channels and key events written into a tab you choose, read only, and current before you open the file.

30 days of Plus, free, no card. Then one report keeps refreshing weekly.

Google Analytics 4
06:12

Written to Sessions by channel

Google Analytics 4
06:13

Written to Landing pages

Google Analytics 4
06:15

Written to Key events

Fields

What you can pull from GA4

Fresh Sheets reads your property's own catalogue, not a list we decided on in advance. Every dimension and metric the property exposes is there to pick from, including the custom dimensions, custom metrics and key events your team defined, under the names you gave them.

Commonly used
DateChannel groupSourceLanding pageCountryDevice categorySessionsTotal usersKey eventsEngagement rateand everything else your property exposes
If you are looking for Conversions

Google no longer publishes a field called Conversions. It is Key events now, and that is what you will find in the list. Your property's own key events appear individually, by name.

Any report can be filtered: up to five conditions, all of which have to match, on any dimension in your report. No regular expressions.

What lands

This morning's sessions, already in the tab

06:12

Google Analytics 4, written to Sessions by channel

Organic Search4,812
Direct2,190
Paid Search1,357
Referral486
  • Each report owns a tab, and everything in it is replaced on every refresh. Nothing else in the spreadsheet is touched.
  • It runs whether the spreadsheet is open or not. Refreshes happen on our servers, so the numbers are current when you open the file, not when you remember to.
Setting it up

Three things to choose, once

  1. 01Connect the account and pick which one to read from.
  2. 02Pick the property, and Fresh Sheets loads its catalogue so you can choose from the fields that property actually has.
  3. 03Say which tab it writes to and how often it refreshes.
Access

What it can see, and what it cannot

Fresh Sheets reads GA4 through analytics.readonly, Google's own read-only permission. Google publishes a separate permission for changing an Analytics property, and the permission to do so is never requested, so it cannot be granted by accident.

Every connector Fresh Sheets ships is read-only, permanently. That is a design decision rather than a current limitation, and it is set out in our privacy policy.

Writing happens only in the spreadsheets you pick, one at a time, through Google's own file picker. Fresh Sheets never sees the rest of your Drive. Fresh Sheets never changes anything you did not ask it to.

Your data is never sold and never used to train anything, and you can disconnect the account at any time.

Fresh Sheets asks for all of its data permissions in one consent screen, so you will see Google Ads and Search Console listed there even if you only connect Google Analytics. Every scope is set out in full on our privacy page.

How we handle your data
Pricing

Start on Plus, and decide later

30 days of Plus, free, no card. Then one report keeps refreshing weekly.

How often depends on your plan: every day on Plus, every 6 hours on Pro and every hour on Max.

See what the paid plans include
FAQ

Questions

Can GA4 export to Google Sheets automatically?

GA4 can export an exploration to Sheets, but it creates a new spreadsheet each time and the numbers never update. Fresh Sheets writes into a tab of the spreadsheet you already use and refreshes it on a schedule.

Where did Conversions go in GA4?

Google renamed it. What used to be Conversions is now Key events, and that is the name you will find in the field list. Fresh Sheets shows your property's own key events by name.

Can I pull my own custom dimensions and metrics?

Yes. Fresh Sheets reads your property's own catalogue rather than a fixed list, so custom dimensions, custom metrics and key events appear by the names you gave them.

How often can it refresh?

Choose the schedule when you build the report, and it runs on our servers from then on. How often depends on your plan: every day on Plus, every 6 hours on Pro and every hour on Max.

Can one spreadsheet hold reports from more than one property?

Yes. Each report reads from one GA4 property, and several reports can write into different tabs of the same spreadsheet.

Does it change anything in my Analytics property?

No. Fresh Sheets never changes anything you did not ask it to. Each report owns a tab, and replaces what is in it on every refresh. Nothing else in the spreadsheet is touched.

Set up your first GA4 report

Connect the property, pick your fields and a tab, and leave it running.