Limits of Data Import

Understand the details and limitations of Data Import.
In this article:

Tracking code requirements

Universal Analytics (analytics.js) supports all the available import types and is required for User Data and Custom Data import. In order to use Product Data and Refund Data import types, you must also be using Enhanced Ecommerce (ec.js).

You may still use Classic Analytics (ga.js) for:

  • Content Data
  • Campaign Data
  • Cost Data

(But see the note about overwriting dimensions and metrics with ga.js below.)

Available dimensions and metrics

Each import type has a preset list of dimensions and metrics that can be used as keys and import dimensions/metrics, as appropriate to that import type. You’ll select from a list of available dimensions and metrics when you create your Data Set.

Currently, you cannot import using:

  • custom variables
  • time-based dimensions (hour, minute, etc)
  • geo-dimensions (country, city, etc)

Overwriting dimensions and metrics with ga.js

If you’re still using the ga.js based snippet on your site, and you want to import to dimensions and metrics that don’t exist as standard dimensions or metrics in Analytics (e.g., Author), you will have to overwrite an existing dimension (e.g., Page Title). It is strongly recommended that you set up a new view if you’re going to take that approach. Overwriting in this way will permanently replace the data in that dimension with your custom data for the view that you select.

Real-Time reporting does not support custom dimensions

Any custom dimensions you've imported will not appear in Real-Time reports.

No personally identifiable information in User Data import

You may not upload or associate personally identifiable information with User Data Import.

Data Import and filters

Imported data is processed before filtering. This means filters may include, exclude or transform your imported data.

Empty strings

Any empty strings you import will appear as "not set" in reports.

An empty string would be any field in your import file that has no value between separating commas. E.g.,

foo,,baz

In the example above the field between foo and baz is empty.

Negative values

You can't upload negative values. When Data Import encounters negative numbers in an upload file, it displays an error similar to this one:

Invalid cell data <value> at row <number> column <number>. Expected data type: DOUBLE.

Campaign data for Last Non-Direct Click returning users

You can use processing time data import to upload data for users from new campaigns. However, processing time data import doesn't support updating campaign data for returning users when that information comes from campaigns based on the Last Non-Direct Click attribution model.

This limitation does not apply to query time Data Import.

Uploading high-cardinality data

Data Import is subject to Google Analytics cardinality limits.

Don't import duplicate data 

Data Import does not support importing duplicate key dimensions. You should ensure that the key dimensions you upload are unique. To update a key value that you've previously imported, delete the existing upload file that contains the key, and then upload the new value. 

Upload limits

Data Import is subject to the following general limits:

Once these limits have been reached, you won't be able to upload more data until you delete previously uploaded files.

Cost Data specific limits

  • 90 MB per date (ga:date) per Data Set. For example, if you upload 50 MB of data for 2017-10-10 in one upload and 40 MB of data for 2017-10-10 in a second upload, then you will have reached the 90MB limit for 2017-10-10 for that Data Set.

Refund Data specific limits

  • 100 MB daily file size limit.
  • Transactions older than 6 months cannot be refunded.
  • Partial refunds and full refunds must be uploaded separately.
Was this helpful?
How can we improve it?