Cost-data import lets you analyze return-on-investment (ROI) and compare campaign performance for all your online-advertising and marketing investments.
How cost-data import works
Google Analytics uses cost-data import to join your imported data generated from campaigns outside of Google, like email and social media advertising, with revenue and key events data from Analytics. This allows you to calculate metrics, such as non-Google cost per click/conversion and return on non-Google ad spend, from these campaigns in Analytics for each campaign, source, and medium.
Cost-data import lets you compare performance data across all your ad initiatives. You can see this data in the Acquisition > Non Google cost report and on the Planning > All channels report in the Advertising workspace.
Because the true costs for ads change as campaigns run, you can upload data periodically for the same campaign IDs and Analytics will use the most recent values for reporting and exploration.
The role of custom campaign URLs
The key to performing ROI analysis on paid campaigns is adding custom campaign parameters to all destination URLs in the non-Google ad system you're using. This lets you join cost data from those external sources with session data in Analytics.
Create a CSV file
Create a CSV file of cost dimensions and metrics (see the template below).
Upload the data
The general upload procedure is outlined in About Data Import.
When you create the data source, select Cost data.
When you map Analytics fields to your imported fields, you'll be able to view and map the following:
- The required key fields: Campaign source, Campaign medium, and Date.
- Additional key fields such as Campaign ID and Campaign name are optional.
- Campaign dimensions and metrics that match the fields in your CSV. For example, the daily value of cost, clicks, and impressions.
Campaign ID, Campaign source, Campaign medium, and Campaign name must match the custom campaign parameters utm_id, utm_source, utm_medium, and utm_campaign that you used in your destination URL.
After you upload your data, it can take up to 24 hours for Analytics to make that data available in reports, audiences, and explorations. Users have to engage with your campaign after you upload the data in order for those metrics and campaign properties to be associated with user activity.
You can overwrite metric and dimension values by uploading new ones.
Since cost-data import uses the reporting/query time join and does not alter data that has already been processed, you can simply delete a cost-data source from the data-upload service to remove cost data from Analytics reports.
Data-source details
Legend
- Scope: the scope determines which events will be associated with the import-dimension values. There are four levels of scope: hit, session, user and product. Learn more about scope
- Schema: lists the dimensions and metrics that make up the structure of your imported data. Your upload file headers must match the schema you define for that data source.
The dimensions and metrics listed for the schema are for reference only and may not be complete; the actual dimensions and metrics available will appear in the user interface when you create the data source.
Scope | This data has no scope because it is daily aggregated data and summarizes many events across sessions and users for each day. |
---|---|
Schema |
The following dimensions are required:
The following dimensions are optional, but highly recommended, as key fields:
At least one of the following metrics is required:
|
Template
Here is an example CSV template for cost data. If you need to create your upload files by hand, use this example as a guide.
utm_id | utm_campaign | utm_source | utm_medium | date | impressions | clicks | cost |
---|---|---|---|---|---|---|---|
bing_123abc | Summer_fun | bing | cpc | 2020-12-01 | 12242371 | 367271 | 36727.10 |
facebook_456def | Fall_delight | cpc | 2020-12-01 | 3429267 | 34292 | 8573.00 | |
twitter_789ghi | Winter_wonderland | cpc | 2020-12-01 | 9732461 | 194649 | 29197.35 |
Importing cost data from other platforms
Limits of cost-data import
Cost-data import uses the reporting/query time join. This lets you associate your imported cost data with events already processed by Analytics.
You can have only one data source when you import cost data.