Skip to content
Skip to main content
European Data Processing
← Back to Documentation

Import your Google Analytics history

Keep the trends you already have. Connect a GA4 or Universal Analytics property, choose a date range, and your history arrives as pageviews you can filter and export like any other.

Connect the property

  1. Open your site in VeritaMetrics, then Settings → Integrations.
  2. Choose Google Analytics and sign in. We ask for read-only access to your Analytics data and nothing else.
  3. Pick the property and the date range you want, and start the import.

The import runs in the background and tells you when it finishes. Re-running it over the same range does not duplicate anything: each imported row carries an identifier derived from its own content, so a second pass overwrites rather than doubles.

What comes across

Per day, per page, we import the dimensions your reports are built from:

  • Page path and title
  • Source, medium and campaign, plus term and ad content
  • Country, region and city
  • Device category, browser and operating system
  • Language

Alongside sessions, users, pageviews, bounce rate and average session duration, as GA reports them.

What the numbers will and will not match

Three differences are worth knowing before you compare a chart to your old one. None is a defect, and all three follow from GA giving us daily totals rather than individual visits.

Imported history has no time of day

GA exports a day at a time, so every imported pageview is recorded at midday UTC on its date. Daily and weekly trends are accurate. An hour-of-day breakdown over an imported range is not, and you should read it as empty rather than as a finding.

Visitor counts mean something narrower

We count a visitor by grouping the pageviews that belong together. Live tracking does that per person. An import has no per-person data to work from, so it groups by traffic source, medium and browser instead. Over an imported range, "visitors" counts combinations of those three, not people. Pageviews and sessions carry across as GA counted them; the visitor number is the one to treat as a lower bound.

Bounce rate is a different measurement in each product

GA4 counts a bounce as a session that was not engaged: under ten seconds, with no second pageview and no conversion. We count one that saw a single page and under ten seconds of engaged time, where engaged time only accrues while the page is actually in front of someone. The two are close in spirit and not the same number. Compare imported bounce rate with imported, and ours with ours.

What is not imported

Anything GA does not put in a daily export, which is most of what we measure ourselves: engaged time, scroll depth, custom events, Core Web Vitals, and the individual visit paths behind a session. Those begin the day you install the tracker. An imported range shows the shape of your traffic; a tracked range shows what people did.

Two things we clean on the way in

GA reports (not set), (direct) and (none) as source values. They are display strings rather than data, and importing them literally would put a traffic source called "(not set)" on your dashboard, so they arrive as direct traffic instead.

GA also reports your own hostname as the source whenever a property's referral-exclusion list was never configured, which is common. We drop those rather than list your own domain as a place your visitors came from.

Running both at once

You can keep GA running while you evaluate. The two scripts do not interfere: ours sets no cookie and reads none, and neither knows the other is there. Comparing a week of both, with the differences above in mind, is the cheapest way to decide whether to switch.

Explore the documentation

Jump to another guide.