google-analytics

How long does GA4 actually keep your data?

Two months by default for the data that matters, and most properties were never changed from it. What expires, what survives, and how to keep the rest.

GA4's retention settings are the source of more unpleasant surprises than any other part of the product, largely because the default is short and the consequence is invisible until you need the data.

The default is two months

When a GA4 property is created, user and event data retention is set to 2 months. Not fourteen. Two.

You can change it to fourteen months, and on a paid Google Analytics 360 property up to fifty. But the default is two, it applies from creation, and changing it later does not restore what has already expired.

A great many properties are still on the default because nobody knew there was a setting.

What actually expires

This is the part that confuses people, and the distinction matters enormously.

Standard aggregate reports do not expire. Sessions, users, pageviews by month — the numbers on the default reports — are retained indefinitely. You can look at 2022 traffic on a two-month property.

Event-level and user-level data does expire. Anything requiring GA4 to look at individual events: Explorations, custom funnels, path analysis, segment overlap, anything with a custom dimension in it.

So the failure mode is specific and awkward: your headline chart looks complete, and the moment you try to answer a real question with an Exploration, the data stops sixty days ago.

Check yours now

Admin → Data settings → Data retention.

If it says 2 months, change it to 14. It takes ten seconds, it applies going forward, and there is no downside.

It will not recover anything. Data that has expired is gone.

What this means if you are migrating

Two implications, both worth acting on before you do anything else.

Export now, not when you are ready. Retention is a rolling window. Every day you delay, another day falls off the far end. If you are even considering leaving GA4, export first and decide afterwards.

Aggregate reports are what you can actually take. Since the standard reports do not expire, those are exportable for the property's whole life — daily totals, pages, sources, countries, devices. That is also, conveniently, exactly the shape most alternatives can import. How that import should behave.

Event-level history is largely not portable regardless of retention, because it depends on GA4's own event model.

What to export, concretely

CSV with Date as a dimension:

  • Sessions, users, pageviews by date
  • Page path by date
  • Source / medium by date
  • Country by date
  • Device category by date
  • Browser by date
  • Any conversion events by date

Take the full available range. It is a handful of exports and it is the difference between having a comparable year and starting from zero.

BigQuery, if you thought of it earlier

GA4 can export raw events to BigQuery, and that export is not subject to the retention limit — once a row is in BigQuery it is yours indefinitely.

This is the genuinely correct answer to GA4 retention, and it has one flaw: it only captures data from the day you enable it. It cannot backfill. So it is excellent advice for the future and no help at all for the past.

If you are staying on GA4 for any length of time, turn it on today.

The wider point

Retention limits are a property of hosted analytics generally, not of Google specifically. Your data lives on somebody else's infrastructure under their policy, and the policy can change with a product update.

The alternative is analytics where the database is in your own account, where retention is a decision you make rather than a default you inherit — and where pre-grouped aggregates can be kept forever precisely because they hold no personal data, while the row-level tier that does is bounded deliberately. What owning the data actually means, and where the phrase is used loosely.

Common questions

What is GA4's default data retention period?

Two months for user-level and event-level data. It can be raised to fourteen months on a standard property, and up to fifty on Analytics 360, but two is the default from creation and many properties were never changed. Raising it applies going forward only — anything already expired is gone permanently.

Do GA4 standard reports expire after two months?

No. Aggregate reports — sessions, users and pageviews by month — are retained indefinitely regardless of the retention setting. What expires is event-level and user-level data, which means Explorations, custom funnels, path analysis and anything using custom dimensions. Your headline numbers look complete while your ability to investigate them stops sixty days ago.

Can I recover GA4 data that has already expired?

No. Changing the retention setting applies only from that point forward, and Google does not restore expired event-level data. The only durable protection is the BigQuery export, which is exempt from the retention limit — but it captures data only from the day you enable it and cannot backfill. Turn it on today if you are staying on GA4 at all.