A dimension is the attribute of visitors to your website.
For example, let us suppose 27,379 people visited your website via Google organic search in the last month.
Now all these 27,379 people who visited your website have one common characteristic /attribute. They all visited your website via Google organic search (which is reported as google/organicin Google Analytics).
As a result, ‘google / organic’ is one of the attributes of your 27,379 website visitors.
Google Analytics reports the attribute of visitors to your website as a dimension:
Each dimension is made up of names and values.
For example, ‘Source/Medium‘ is the dimension name, and ‘google/organic‘ is the dimension value.
Suppose 247 people visited your website via Google paid search in the last month.
Now all these 247 people who visited your website have one common characteristic /attribute. They all visited your website via Google paid search (which is reported as google/cpcin Google Analytics).
As a result, ‘google / cpc’ is one of the attributes of your 247 website visitors and is reported as a dimension in GA:
Since each dimension comprises names and values, ‘Source/Medium‘ is the dimension name, and ‘google/organic‘ and ‘google/cpc‘ are dimension values.
A single dimension like ‘Source/Medium’ can have a lot of values:
Another example
A man aged 25-34 from London visited your website after clicking on an organic search listing on Google which he found by searching for the keyword ‘attribution modelling’.
Let us also assume that he visited your website via a Chrome browser installed on a desktop computer that runs Windows.
Now following are the attributes of the visitor to your website along with their values:
Gender – male Age – 25-34 City – London Source / Medium – Google / Organic Keyword – Attribution Modelling Browser – Chrome Device Category – desktop Operating System – Windows
Here, ‘Gender’, ‘Age’, ‘City’, ‘Source /Medium’, ‘Keyword’, ‘Browser’, ‘Device Category’ and ‘Operating System’ are all reported as dimensions in Google Analytics because they are the characteristics of your website users:
Note: To see the complete list of all the default dimensions available in Google Analytics along with their description and usage, check the Dimensions & Metrics Explorer.
Default dimensions are the dimensions that are already available in Google Analytics reports. They are ready to use dimensions.
The following are examples of default dimensions:
Gender
Age
City
Source / Medium
Keyword
Browser
Device Category
Operating System
What is a custom dimension in Google Analytics?
Custom dimensions are user-defined dimensions.
If you want to measure the characteristic of a user that any default dimension can not measure, you need to create and use your own dimension to measure such characteristics.
For example, you can create your own dimension to determine and store keywords that resulted in a phone call on your website.
You can import the data through custom dimensions that google analytics does not automatically collect (like CRM data, phone call data, logged-in users data, etc.) and correlate this non-google analytics data with Google Analytics data.
What is a primary dimension in Google Analytics?
A primary dimension is the default dimension applied to a report in Google Analytics.
When you navigate to a report, say the ‘Channels’ report, then the default dimension that you see being applied to the report is the primary dimension:
Here the primary dimension is the ‘Default Channel grouping’.
How to change the primary dimension in a Google Analytics report
Google Analytics lists all the available primary dimensions at the top of the data table in a report:
To change the primary dimension, just click on one of the primary dimensions.
For example, if you click on the ‘Source / Medium‘ primary dimension, then your data table is going to look like the one below:
If you don’t see your primary dimension being listed at the top of the data table, then click on the ‘Other’ drop-down menu:
Click on the ‘Commonly Used’ drop-down menu to see the list of commonly used dimensions:
Now click on the dimension you want to apply to your data table.
If you still can’t find your dimension, then there are three things that you can do:
#1 Click on the drop-down menus listed under the ‘More Dimensions’ section one by one and then find your dimension:
For example, you can click on the ‘Acquisition’ drop-down menu:
#2 Click on the checkbox ‘Display as alphabetical list‘.
This will list all the available dimensions for your data table in alphabetical order:
#3 Use the search box to find your dimension.
If you already know the name of your dimension, then you can simply search for it:
What is a secondary dimension in Google Analytics?
The second dimension that you apply to a report is called a secondary dimension.
To apply a secondary dimension to a report, click on the ‘Secondary dimension‘ button:
You should now see a drop-down menu from which you can select your secondary dimension:
Let’s apply a secondary dimension called ‘Country’ to our ‘Channels’ report:
Now the data table would look like the one below:
Note: You can use custom dimensions as primary dimensions in custom reports or as a secondary dimension in standard reports, but you can not use custom dimensions as primary dimensions in standard reports.
How to include more than two dimensions in your Google Analytics Reports?
By default, you can add only two dimensions to a GA report at a time: one primary dimension and one secondary dimension.
But if you want to include more than two dimensions in your GA reports, then follow the steps below:
Step-1: Navigate to the main reporting view of your Google Analytics account and then click on the ‘+ New Custom Report’ button:
Step-2: Click on the ‘Flat Table’ button:
Step-3: Click on the ‘+add dimension’ button:
Step-4: Select the dimension you want to add to your custom report:
Step-5: Repeat Step-3 and 4 to add more dimensions. You can add up to five dimensions to your custom report:
Step-6: Click on the ‘+add metric’ button:
Step-7: Select the metric you want to add to your custom report:
Step-8: Repeat Step-6 and 7 to add more metrics to your reports.
Step-9: Click the ‘Save’ button to save your custom report.
You should now be able to see the five dimensions added to your custom report, like the one below:
This can help you do a more meaningful analysis.
Note: You can also use custom dimensions as a custom segment in GA reports.
How dimensions and metrics are reported in Google Analytics
Google Analytics (GA) reports contain two types of data: dimensions and metrics.
GA displays data in its reports, usually in a table (called the data table). Each row of the table represents the value of a dimension, and each column represents the value of a metric:
Every Google Analytics report is made up of dimensions and metrics.
What is a metric in Google Analytics?
A metric is a number used to measure one of the characteristics of a dimension.
A dimension can have one or more characteristics.
For example, the following are the characteristics of the dimension called ‘Source / Medium’:
Sessions
% New Sessions
New Users
Bounce Rate
Pages / Sessions
Avg. Session Duration
Goal Conversion Rate
Goal Completions
Goal Value
Here Sessions, % New Sessions, New Users, Bounce Rate, Pages / Sessions, etc., are all reported as metrics in Google Analytics because they are the characteristics of the dimension called ‘Source / Medium’.
What is the difference between dimensions and metrics in Google Analytics?
Difference #1
Though both dimensions and metrics are the characteristics of your website visitors, they are different in the way they are: configured, collected, processed, reported, and queried in Google Analytics.
For example, you can’t use (or query) dimension as a metric or metric as a dimension in Google Analytics either via the reporting interface or via API.
Difference #2
In Google Analytics, a dimension provides context to a metric. Consequently, a standalone metric is meaningless to analyze and report.
For example, the metric ‘sessions’ is meaningless on its own and makes sense only when used together with a dimension like ‘source/medium’, ‘user type’, ‘country’ etc.
Difference #3
Unlike dimensions, metrics are reported under the following three categories in Google Analytics:
Acquisition – how visitors arrive at your website
Behavior – how visitors interact with your website
Conversions – how visitors completed conversions on your website.
Examples of Acquisition Metrics:
Sessions
% New Sessions
New Users
Examples of Behavior Metrics
Bounce Rate
Pages/Sessions
Avg. Session Duration
Examples of Conversion Metrics
Goal Conversion Rate
Goal Completions
Goal Value
Difference #4
Unlike dimensions, not all metrics can appear in every Google Analytics report. For example ‘page value’ metric appears in only certain Google Analytics reports.
This is because Google Analytics uses different analytics attribution models to produce a certain set of reports or to produce a certain set of metrics.
These analytics attribution models are:
Per GIF request attribution model – This model calculates aggregate values for a metric.
Page value attribution model (or forward-looking attribution model) – This model calculates the ‘page value’ metric for a page or set of pages.
Site search attribution model – This model calculates the goal value and Goal conversion rate for each search term.
Difference #5
A dimension can have the following scopes: ‘Hit’, ‘Session’, ‘User’ or ‘Product’.
A metric can have only two scopes, either ‘Hit’ or ‘Product’ (more about scopes later).
Difference #6
The value of a dimension is of type ‘text’. Whereas the value of a metric is of type ‘integer’.
Every custom dimension in GA has got the following five properties (also known as configuration values):
Name
Index
Scope
Last Changed
State
Name is the name of the custom dimension, as it will appear in your Google Analytics reports. Use a descriptive and unique name so that you can easily identify and understand the functionality of your custom dimension.
Index (also known as a slot) is a number (must be a positive integer) used to internally identify and differentiate one custom dimension from another in Google Analytics. The index is like a parking space reserved for your custom dimension. Once an index is used, it cannot be used for another custom dimension. The value of the index should be between 1 and 200.
Scope determines the hits that will be associated with the value of a custom dimension.
Last Changed was the date when a custom dimension was first created or last modified.
State is the current status of a custom dimension. It can be either ‘active’ or ‘inactive’.
Note: Inactive custom dimensions may continue appearing in your GA reports, but you will not see any new values reported.
What scope applies to custom dimensions?
Each custom dimension can have any of the following four scopes:
Hit
Session
User
Product
Custom Dimension – ‘Hit’ Scope
A hit is a user’s interaction with your website/app that results in data being sent to the Google Analytics server.
Following are examples of some common hits:
Pageviews
Screenviews
Events
Transactions
A user can send one or more hits.
The value of a custom dimension is sent along with a hit. So if a custom dimension has been set up, then a user hit is sent along with the custom dimension value. Otherwise, the hit is sent without the value of the custom dimension.
When a user hit is sent along with the value of the custom dimension and the custom dimension has hit-level scope, then the value of the custom dimension is only applied to the hit with which the value was sent.
In other words, the value of the custom dimension is calculated and sent for each hit.
Custom Dimension – ‘Session’ Scope
A session is a group of hits recorded for a user in a given time period.
A user can trigger one or more sessions on the same day or over multiple days, weeks or months. By default, a session expires after 30 minutes of users’ inactivity on your website or at midnight or if the user returns to your website via a different campaign.
When a custom dimension has session-level scope, its value is applied to all the hits in a current session.
In other words, the value of the custom dimension is calculated and sent only once per session.
A user is a random unique client ID set by a Google Analytics cookie when a browser (like Chrome, Internet Explorer, Safari, etc.) loads your website content for the first time.
Every time a new client ID is detected in a session, Google Analytics counts it as a new user.
Every time an existing client ID is detected in a new session, Google Analytics counts it as a returning user.
Since a client ID exists only on the device (desktop, laptop, mobile, tablet) and the browser where it has been set, Google Analytics cannot identify users across devices and browsers.
When a custom dimension has got user-level scope, its value is applied to all the hits in the current session as well as future sessions of a user until there is a change in the value of the custom dimension or custom dimension has been made inactive.
In other words, the value of a custom dimension is calculated and sent only once per user.
A product represents the product you sell on your website.
When a custom dimension has a product-level scope, its value is applied to the product for which it has been set. In other words, the value of the custom dimension is calculated and sent only once per product.
In short, scope determines when the value of a custom dimension should be calculated and sent.
If a custom dimension has hit scope, then the custom dimension value should be calculated and sent for each hit or for the hit with which the value is sent.
If a custom dimension has session scope, then the custom dimension value should be calculated and sent only once per session.
If a custom dimension has user scope, then the custom dimension value should be calculated and sent only once per user.
If a custom dimension has product scope, then the custom dimension value should be calculated and sent only once per product.
In the above code <?=$userID?> refers to a PHP variable which contains user ID values like 1253483232
For gtag.js
gtag('config', 'UA-XXXX-12', {
'custom_map': {'dimension<Index>': 'dimension_name'}
});
// Send the value of the custom dimension to Google Analytics.
gtag('event', 'any_event_name', {'dimension_name': dimension_value});
The actual code may look like below
gtag('config', 'UA-XXXX-12', {
'custom_map': {'dimension15': 'internal_campaign_name'}
});
// Send the value of the custom dimension to Google Analytics.
gtag('event', 'campaign_link_click', {'internal_campaign_name': 'Home Page Promo Offer'});
If you want to send the value of a custom dimension with all the hits on a page, then use the set command:
Note: Make sure to replace ‘UA-XXXX-12’ with your Google Analytics tracking ID
Here is how you can send the value of a session-level custom dimension with an event hit:
For Analytics.js
ga(‘set’, ‘dimension1’, dimensionValue); // Dimension value should be sent only once per session setTimeout(“ga(‘send’,’event’,’Profitable Engagement’,’time on page more than 3 minutes’)”,180000);
Note: Session-level custom dimensions can be set anytime during a session.
For gtag.js:
gtag(‘set’, {
‘custom_map’: {
‘dimension1’: ‘dimension name’
}
});
setTimeout(“gtag(‘event’, ‘Profitable Engagement‘, {‘event_label’:’more than 3 minutes‘})”,180000 );
#3 What is a user-level dimension in Google Analytics?
This is the dimension with user-level scope. A user-level dimension can be predefined or custom.
Following are examples of predefined user-level dimensions:
Age
Gender
Affinity category
In-Market segment
Country
Region
City
Use a user-level custom dimension when:
#1 You want to associate the custom dimension value with all the hits of current and future sessions of a user.
#2 The dimension value doesn’t often change for a particular user until there is a change in the value of the custom dimension or custom dimension has been made inactive.
In the case of a user-level custom dimension, the custom dimension value is calculated and sent only once per user.
For example, here is how you can send the value of a user-level custom dimension with a pageview hit:
For Analytics.js
// Dimension value should be sent only once per user ga(‘set’, ‘dimension1’, dimensionValue); ga(‘send’, ‘pageview’);
Here is how you can send the value of a user-level custom dimension with an event hit:
For Analytics.js
// Dimension value should be sent only once per user ga(‘set’, ‘dimension1’, dimensionValue); setTimeout(“ga(‘send’,’event’,’Profitable Engagement’,’time on page more than 3 minutes’)”,180000);
For gtag.js:
gtag(‘set’, {
‘custom_map’: {
‘dimension1’: ‘dimension name’
}
});
setTimeout(“gtag(‘event’, ‘Profitable Engagement‘, {‘event_label’:’more than 3 minutes‘})”,180000 );
#4 What is a product-level dimension in Google Analytics?
It is the dimension that has got product-level scope. A Product-level dimension can be predefined or custom.
Following are examples of predefined product-level dimensions:
Product
Product SKU
Product Category (Enhanced Ecommerce)
Product Brand
Transaction ID
Product list name
Product list position
Use a product-level custom dimension when:
#1 You want to associate the custom dimension value with a particular product.
#2 The dimension value change for each product.
For example, product name change with each product.
In the case of a product-level custom dimension, the custom dimension value is calculated and sent only once per product.
You can only send the value of a product-level custom dimension with enhanced ecommerce product data.
For example, here is how you can send the value of a product-level custom dimension with enhanced ecommerce product data:
For Analytics.js
For gtag.js:
What is a predefined metric in Google Analytics?
Predefined (system-defined) metrics are the metrics that are already available to you in the Google Analytics reports. They are ready to use metrics.
Custom metrics are user-defined metrics. We use custom metrics when we need to measure the characteristics of a dimension (whether predefined or custom dimensions), which cannot be measured by any predefined metrics.
For example, if you have defined the keywords which resulted in a phone call as a custom dimension in GA, then one of the characteristics of this dimension could be ‘number of phone calls generated by each keyword’.
You can measure the number of phone calls by creating and using a custom metric (say ‘Phone Calls’). The whole setup could look something like the one below:
Through custom metrics, you can import the data which google analytics does not automatically collect (like CRM data, phone call data, logged-in users data, etc.) and correlate this data with Google Analytics data.
Every custom metric in GA has got the following eight properties or configuration values:
Name
Index
Scope
Formatting type
Last changed
State
Minimum value
Maximum value
Name is the name of the custom metric as it will appear in your Google Analytics reports. Use a descriptive and unique name to easily identify and understand the functionality of your custom metric.
Index (also known as a slot) is a number (a positive integer) used to internally identify and differentiate one custom metric from another in Google Analytics. It is like a parking space reserved for your custom metric. You can not use the same index for two or more metrics. The value of the index should be between 1 and 200.
Scope determines the hits that will be associated with the value of a custom metric.
Formatting Type determines how the value of a custom metric should be displayed in reports. Formatting type can be: Integer, Currency (decimal) or Time:
An integer is a whole number.
Currency is a decimal number.
Time is the number of seconds (but it appears as HH:MM:SS in your GA reports)
Last Changed was the date when a custom metric was first created or last modified.
State is the current status of a custom metric. It can be either ‘active’ or ‘inactive’.
Note: Inactive custom metrics may continue to appear in your GA reports, but you will not see any new value in the reports.
Minimum value is the minimum value of a custom metric that should be processed and reported in your GA reports.
Maximum value is the maximum value of a custom metric that should be processed and reported in your GA reports.
What scope applies to custom metrics in Google Analytics?
Each custom metric can have any of the following two scopes:
Hit
Product
Custom Metric – ‘Hit’ Scope
When a custom metric has hit-level scope, the value of a custom metric is only applied to the hit with which the value was sent.
In other words, the value of a custom metric is calculated and sent for each hit.
Custom Metric – ‘Product’ Scope
When a custom metric has product-level scope, its value is applied to the product for which it has been set.
#2 What is a product-level metric in Google Analytics?
This is a metric that has got product-level scope. A product-level metric can be predefined or custom.
Following are examples of predefined product-level metrics:
Product revenue
Unique purchases
Quantity
Average price
Product refund amount
Use a product-level custom metric when:
#1 You want to associate the custom metric value with a particular product
#2 The metric value change for each product. For example, ‘product colour’ often changes with each product.
In a product-level custom metric, the value of a custom metric is calculated and sent only once per product.
You can only send the value of a product-level custom metric with enhanced ecommerce product data. For example, here is how you can send the value of a product-level custom metric with product data:
For Analytics.js
For gtag.js:
Dimension – metric combinations
Not all dimensions and metrics can be queried/used together.
Only those dimensions and metrics can be used/queried together, which have the same scope. Therefore we can have valid and invalid dimension-metric combinations.
Example of valid dimension-metric combination: ‘user type’ and ‘users’
Example of invalid dimension-metric combination: ‘source’ and ‘users’
‘user type’ and ‘users’ is a valid dimension-metric combination because both the dimension and metric have the same user-level scope.
‘source’ and ‘users’ is an invalid dimension-metric combination because both the dimension and metric have different scopes.
The dimension ‘source’ has session-level scope, whereas the metric ‘users’ has user-level scope.
Dimensions and metrics taken together can also reveal most of the website performance and user attributes.
If you have configured your Google Analytics custom dimensions and metrics properly, you can track the whole customer journey, from prospect to customer and beyond.
You also have logs for all the page views and events happening on the GA website, but there are still many things that custom dimensions and metrics cannot tell you.
Let’s take an example. Suppose you have an ecommerce website where you have implemented enhanced ecommerce tracking in Google Analytics. You check your purchase funnel and find that many users had abandoned the cart, and many of them have even started checkout but somehow couldn’t complete the transaction. You have done lots of research using custom dimensions and metrics for different pages. For example, you checked issues with the device category, checked performance for traffic coming from different sources, you also checked the page performance but found nothing.
Here are a few of the parameters that dimensions and metrics cannot track
What users are actually looking for
Google Analytics dimensions and metrics cannot tell you what users are actually looking for.
Let’s suppose a user is looking for products with specifications, e.g. “high megapixel camera phones”, on Google search and then lands on your website, you have the majority of products with similar configurations, but the user is not interested in those products. Hence, they started their journey on the website but couldn’t complete it.
Google Analytics dimensions and metrics cannot track this situation where users abandon their purchase journey because they did not get what they expected.
User intention
A user often comes to a website, navigates through the product details page but does not proceed with add to cart, and abandons the journey. Even if your product detail page contains all the information related to the product, dimensions and metrics cannot track the user’s intentions.
There is a possibility that the product is not as good as the user’s interest or liking. There is a possibility that the user is just doing some initial research about the product and considering buying it in the future. The user may have just come to check the product pricing on your website and then left, and so on. Dimensions and metrics cannot track user intentions.
Incomplete information on a web page
A website serves the purpose of providing the best information about the products and services that we offer. Google Analytics dimensions cannot track if users are arriving on the website but not completing the desired actions because of incomplete information about a product or service.
Individual reasons for dropping off
This happens many times that a user liked the product, added it to the cart, even began the checkout process, but did not complete the transaction due to some individual reasons like
The delivery date is longer than the user’s expectations
The user is not confident about product dimensions (such as product size)
The product is out of stock for the selected location
Cash on delivery is unavailable, or the payment method is having some issues.
If shipping charges and taxes applied are higher than the user’s expectations.
Google Analytics dimensions and metrics can not track such individual reasons for drop-off.
Complete list of dimensions and metrics as per the Core Reporting API (Google Analytics)
I have listed all the dimensions and metrics available in the Google Analytics Core Reporting API.
User related
Dimensions
User Type
Count of Sessions
Days Since Last Session
User-Defined Value
User Bucket
Metrics
Users
New Users
% New Sessions
1 Day Active Users
7 Day Active Users
14 Day Active Users
28 Day Active Users
30 Day Active Users
Number of Sessions per User
Session related
Dimensions
Session Duration
Metrics
Sessions
Bounces
Bounce Rate
Session Duration
Session Duration
Unique Dimension Combinations
Hits
Traffic sources
Dimensions
Referral Path
Full Referrer
Campaign
Source
Medium
Source / Medium
Keyword
Ad Content
Social Network
Social Source Referral
Campaign Code
Metrics
Organic Searches
Google Ads related
Dimensions
Google Ads: Ad Group
Google Ads: Ad Slot
Ad Distribution Network
Query Match Type
Keyword Match Type
Search Query
Placement Domain
Placement URL
Ad Format
Targeting Type
Placement Type
Display URL
Destination URL
Google Ads Customer ID
Google Ads Campaign ID
Google Ads Ad Group ID
Google Ads Creative ID
Google Ads Criteria ID
Query Word Count
TrueView Video Ad
Metrics
Impressions
Clicks
Cost
CPM
CPC
CTR
Cost per Transaction
Cost per Goal Conversion
Cost per Conversion
RPC
ROAS
Goal conversions related
Dimensions
Goal Completion Location
Goal Previous Step – 1
Goal Previous Step – 2
Goal Previous Step – 3
Metrics
Goal XX Starts
Goal Starts
Goal XX Completions
Goal Completions
Goal XX Value
Goal Value
Per Session Goal Value
Goal XX Conversion Rate
Goal Conversion Rate
Goal XX Abandoned Funnels
Abandoned Funnels
Goal XX Abandonment Rate
Total Abandonment Rate
Platform or device-related
Dimensions
Browser
Browser Version
Operating System
Operating System Version
Mobile Device Branding
Mobile Device Model
Mobile Input Selector
Mobile Device Info
Mobile Device Marketing Name
Device Category
Browser Size
Data Source
Geo network-related
Dimensions
Continent
Sub-Continent
Country
Region
Metro
City
Latitude
Longitude
Network Domain
Service Provider
City ID
Continent ID
Country ISO Code
Metro Id
Region ID
Region ISO Code
Sub-Continent Code
System-related
Dimensions
Flash Version
Java Support
Language
Screen Colors
Source Property Display Name
Source Property Tracking ID
Screen Resolution
Page tracking related
Dimensions
Hostname
Page
Page path level 1
Page path level 2
Page path level 3
Page path level 4
Page Title
Landing Page
Second Page
Exit Page
Previous Page Path
Page Depth
Metrics
Page Value
Entrances
Entrances / Pageviews
Pageviews
Pages / Session
Unique Pageviews
Time on Page
Time on Page
Exits
% Exit
Internal search related
Dimensions
Site Search Status
Search Term
Refined Keyword
Site Search Category
Start Page
Destination Page
Search Destination Page
Metrics
Results Pageviews
Total Unique Searches
Results Pageviews / Search
Sessions with Search
% Sessions with Search
Search Depth
Search Depth
Search Refinements
% Search Refinements
Time after Search
Time after Search
Search Exits
% Search Exits
Site Search Goal XX Conversion Rate
Site Search Goal Conversion Rate
Per Search Goal Value
Site speed-related
Metrics
Page Load Time (ms)
Page Load Sample
Page Load Time (sec)
Domain Lookup Time (ms)
Domain Lookup Time (sec)
Page Download Time (ms)
Page Download Time (sec)
Redirection Time (ms)
Redirection Time (sec)
Server Connection Time (ms)
Server Connection Time (sec)
Server Response Time (ms)
Server Response Time (sec)
Speed Metrics Sample
Document Interactive Time (ms)
Document Interactive Time (sec)
Document Content Loaded Time (ms)
Document Content Loaded Time (sec)
DOM Latency Metrics Sample
App tracking related
Dimensions
App Installer ID
App Version
App Name
App ID
Screen Name
Screen Depth
Landing Screen
Exit Screen
Metrics
Screen Views
Unique Screen Views
Screens / Session
Time on Screen
Time on Screen
Event tracking related
Dimensions
Event Category
Event Action
Event Label
Metrics
Total Events
Unique Events
Event Value
Value
Sessions with Event
Events / Session with Event
Ecommerce related
Dimensions
Transaction ID
Affiliation
Sessions to Transaction
Days to Transaction
Product SKU
Product
Product Category
Currency Code
Checkout Options
Internal Promotion Creative
Internal Promotion ID
Internal Promotion Name
Internal Promotion Position
Order Coupon Code
Product Brand
Product Category (Enhanced Ecommerce)
Product Coupon Code
Product List Name
Product List Position
Product Variant
Shopping Stage
Metrics
Transactions
Ecommerce Conversion Rate
Revenue
Order Value
Per Session Value
Shipping
Tax
Total Value
Quantity
Unique Purchases
Price
Product Revenue
QTY
Local Revenue
Local Shipping
Local Tax
Local Product Revenue
Buy-to-Detail Rate
Cart-to-Detail Rate
Internal Promotion CTR
Internal Promotion Clicks
Internal Promotion Views
Local Product Refund Amount
Local Refund Amount
Product Adds To Cart
Product Checkouts
Product Detail Views
Product List CTR
Product List Clicks
Product List Views
Product Refund Amount
Product Refunds
Product Removes From Cart
Product Revenue per Purchase
Quantity Added To Cart
Quantity Checked Out
Quantity Refunded
Quantity Removed From Cart
Refund Amount
Revenue per User
Refunds
Transactions per User
Social interactions related
Dimensions
Social Network
Social Action
Social Network and Action (Hit)
Social Entity
Social Type
Metrics
Social Actions
Unique Social Actions
Actions Per Social Session
User timings related
Dimensions
Timing Category
Timing Label
Timing Variable
Metrics
User Timing (ms)
User Timing Sample
User Timing (sec)
Exceptions related
Dimensions
Exception Description
Metrics
Exceptions
Exceptions / Screen
Crashes
Crashes / Screen
Content experiments related
Dimensions
Experiment ID
Variant
Experiment ID with Variant
Experiment Name
Custom variables or columns related
Dimensions
Custom Dimension XX
Custom Variable (Key XX)
Custom Variable (Value XX)
Metrics
Custom Metric XX Value
Calculated Metric
Time-related
Dimensions
Date
Year
Month of the year
Week of the Year
Day of the month
Hour
Minute
Month Index
Week Index
Day Index
Minute Index
Day of Week
Day of Week Name
Hour of Day
Date Hour and Minute
Month of Year
Week of Year
ISO Week of the Year
ISO Year
ISO Week of ISO Year
Hour Index
DoubleClick campaign manager related
Dimensions
CM360 Ad (GA Model)
CM360 Ad ID (GA Model)
CM360 Ad Type (GA Model)
CM360 Ad Type ID
CM360 Advertiser (GA Model)
CM360 Advertiser ID (GA Model)
CM360 Campaign (GA Model)
CM360 Campaign ID (GA Model)
CM360 Creative ID (GA Model)
CM360 Creative (GA Model)
CM360 Rendering ID (GA Model)
CM360 Creative Type (GA Model)
CM360 Creative Type ID (GA Model)
CM360 Creative Version (GA Model)
CM360 Site (GA Model)
CM360 Site ID (GA Model)
CM360 Placement (GA Model)
CM360 Placement ID (GA Model)
CM360 Floodlight Configuration ID (GA Model)
CM360 Activity
CM360 Activity and Group
CM360 Activity Group
CM360 Activity Group ID
CM360 Activity ID
CM360 Advertiser ID
CM360 Floodlight Configuration ID
CM360 Ad
CM360 Ad ID (CM360 Model)
CM360 Ad Type (CM360 Model)
CM360 Ad Type ID (CM360 Model)
CM360 Advertiser (CM360 Model)
CM360 Advertiser ID (CM360 Model)
CM360 Attribution Type (CM360 Model)
CM360 Campaign (CM360 Model)
CM360 Campaign ID (CM360 Model)
CM360 Creative ID (CM360 Model)
CM360 Creative (CM360 Model)
CM360 Rendering ID (CM360 Model)
CM360 Creative Type (CM360 Model)
CM360 Creative Type ID (CM360 Model)
CM360 Creative Version (CM360 Model)
CM360 Site (CM360 Model)
CM360 Site ID (CM360 Model)
CM360 Placement (CM360 Model)
CM360 Placement ID (CM360 Model)
CM360 Floodlight Configuration ID (CM360 Model)
Metrics
CM Conversions
CM Revenue
CM CPC
CM CTR
CM Clicks
CM Cost
CM Impressions
CM ROAS
CM RPC
Audience related
Dimensions
Age
Gender
Other Category
Affinity Category (reach)
In-Market Segment
AdSense related
Metrics
AdSense Revenue
AdSense Ad Units Viewed
AdSense Impressions
AdSense Ads Clicked
AdSense Page Impressions
AdSense CTR
AdSense eCPM
AdSense Exits
AdSense Viewable Impression %
AdSense Coverage
Publisher related
Metrics
Publisher Impressions
Publisher Coverage
Publisher Monetized Pageviews
Publisher Impressions / Session
Publisher Viewable Impressions %
Publisher Clicks
Publisher CTR
Publisher Revenue
Publisher Revenue / 1000 Sessions
Publisher eCPM
Ad Exchange related
Metrics
AdX Impressions
AdX Coverage
AdX Monetized Pageviews
AdX Impressions / Session
AdX Viewable Impressions %
AdX Clicks
AdX CTR
AdX Revenue
AdX Revenue / 1000 Sessions
AdX eCPM
DoubleClick for Publishers Backfill related
Dimensions
GAM Line Item Id
GAM Line Item Name
Metrics
GAM Backfill Impressions
GAM Backfill Coverage
GAM Backfill Monetized Pageviews
GAM Backfill Impressions / Session
GAM Backfill Viewable Impressions %
GAM Backfill Clicks
GAM Backfill CTR
GAM Backfill Revenue
GAM Backfill Revenue / 1000 Sessions
GAM Backfill eCPM
DoubleClick for Publishers related
Metrics
GAM Impressions
GAM Coverage
GAM Monetized Pageviews
GAM Impressions / Session
GAM Viewable Impressions %
GAM Clicks
GAM CTR
GAM Revenue
GAM Revenue / 1000 Sessions
GAM eCPM
Lifetime value and cohorts related
Dimensions
Acquisition Campaign
Acquisition Medium
Acquisition Source
Acquisition Source / Medium
Acquisition Channel
Cohort
Day
Month
Week
Metrics
Users
Appviews per User
Appviews per User (LTV)
Goal Completions per User
Goal Completions Per User (LTV)
Pageviews per User
Pageviews Per User (LTV)
User Retention
Revenue per User
Revenue Per User (LTV)
Session Duration per User
Session Duration Per User (LTV)
Sessions per User
Sessions Per User (LTV)
Total Users
Users
Channel grouping related
Dimensions
Default Channel Grouping
DoubleClick Bid Manager related
Dimensions
DV360 Advertiser (GA Model)
DV360 Advertiser ID (GA Model)
DV360 Creative ID (GA Model)
DV360 Exchange (GA Model)
DV360 Exchange ID (GA Model)
DV360 Insertion Order (GA Model)
DV360 Insertion Order ID (GA Model)
DV360 Line Item NAME (GA Model)
DV360 Line Item ID (GA Model)
DV360 Site (GA Model)
DV360 Site ID (GA Model)
DV360 Advertiser (CM360 Model)
DV360 Advertiser ID (CM360 Model)
DV360 Creative ID (CM360 Model)
DV360 Exchange (CM360 Model)
DV360 Exchange ID (CM360 Model)
DV360 Insertion Order (CM360 Model)
DV360 Insertion Order ID (CM360 Model)
DV360 Line Item (CM360 Model)
DV360 Line Item ID (CM360 Model)
DV360 Site (CM360 Model)
DV360 Site ID (CM360 Model)
Metrics
DV360 eCPA
DV360 eCPC
DV360 eCPM
DV360 CTR
DV360 Clicks
DV360 Conversions
DV360 Cost
DV360 Impressions
DV360 ROAS
DoubleClick search related
Dimensions
SA360 Ad Group
SA360 Ad Group ID
SA360 Advertiser
SA360 Advertiser ID
SA360 Agency
SA360 Agency ID
SA360 Campaign
SA360 Campaign ID
SA360 Engine Account
SA360 Engine Account ID
SA360 Keyword
SA360 Keyword ID
Metrics
SA360 CPC
SA360 CTR
SA360 Clicks
SA360 Cost
SA360 Impressions
SA360 Profit
SA360 ROAS
SA360 RPC
How to set up custom dimensions and metrics in Google Analytics
Important points to remember before you set up custom dimensions or metrics:
#1 Custom dimensions and metrics can be set up only in Universal Analytics and not in classic Google Analytics.
#2 In classic Google Analytics, we use custom variables instead of custom dimensions.
#3 Custom dimensions and custom metrics are set at the property level, not view level.
#4 You can create up to 20 custom dimensions and 20 custom metrics per property in Universal Analytics.
#5 If you use Google Analytics Premium (GA 360), you can create up to 200 custom dimensions and 200 custom metrics per property.
#6 Once you have set up a custom dimension or custom metric in your GA property, you can’t delete it. However, you can edit it.
#7 You can disable a custom dimension or metric by unchecking the ‘Active’ checkbox:
#8 Google recommends not to re-use/edit (i.e. change name, scope, etc.) a custom dimension or custom metric as it can create data integrity issues that can’t be easily fixed. So set up custom dimensions/metrics after proper thought and planning.
#9 The values of custom dimensions (with hit, session, or user scope) and custom metrics (with hit scope) are sent to Google Analytics as parameters attached to other hits (like page views, events, etc.).
Consequently, values of custom dimensions and custom metrics can’t be sent after a hit has already been sent.
So, the following code won’t send the value of the custom dimension to Google Analytics:
In the case of gtag.js, custom dimensions and custom metrics are already configured in the Event call and can be sent only after the event fires.
#10 The values of custom dimensions and custom metrics with the product-level scope are sent to Google Analytics as parameters attached to product data.
Consequently, values of custom dimensions and custom metrics can’t be sent after the product data has already been sent.
How to delete a custom dimension or custom metric in Google Analytics
Once you have set up a custom dimension or custom metric in your GA property, you cannot delete it. However, you can edit it or disable it.
Google recommends not to re-use or edit (i.e. change the name or scope etc.) a custom dimension or metric as it can create data integrity issues that cannot easily be fixed. So only set up a custom dimension or metric after careful thought and planning.
How to set up a custom dimension via Google Tag Manager
Using Google Tag Manager, you can send values to the custom dimension using a variable that pulls data from your web page or data layer.
Note: You must first set up a custom dimension in Google Analytics.
Follow the steps below:
Step-1: Login to Google Tag Manager
Step-2: Navigate to the ‘Tags’ tab:
Step-3: Edit the Google Analytics tag:
Step-4: You will see a window like the one below. Click on the checkbox ‘Enable overriding settings in this tag’:
Step-5: Click on ‘More Settings’ and then click on ‘Custom Dimension’:
Step-6: In the ‘Index’ field, enter your custom dimension index number (e.g. 1), and in the ‘Dimension Value’ field, select the variable (from the drop-down menu) whose value you would like to pass in Google Analytics:
In this case, we are passing the value of the variable {{Page category}} to custom dimension 1.
Values in the {{Page category}} variable (like ‘home’, product category page’, product page’, etc.) will be assigned to custom dimension 1
Similarly, you can set up custom metrics using Google Tag Manager.
Follow steps 1 to 3 above, then do the following:
Step-4: Click on ‘More Settings’ and then click on ‘Custom Metrics’
Step-5: In the ‘Index’ field, enter your custom metric index number (e.g. 1), and in the ‘Metric Value’ field, select the variable whose value you would like to pass in Google Analytics:
In this case, we are passing the value of the variable {{User Age}} to custom metric 1.
Values in the {{User Age}} variable (like ‘32’,’58’, ‘69’, etc.) will be assigned to custom metric 1
Step-6: Click ‘Save’ and ‘Publish’.
Note: You can check and validate in Google Tag Manager debug console what values are being passed to custom dimensions and metrics:
As you can see, Metric1 is assigned the value of the Datalayer variable “User Age”.
And if you click on the ‘Variables’ tab in the debug console, you can see that the user age is 58:
Similarly, you can see that dimension1 is assigned the value of the DataLayer variable “Page Category”, and the value of the variable ‘Page Category’ is ‘Home’.
Six stages of custom dimensions and metrics set up in Google Analytics
There are six stages of creating and using custom dimensions and metrics in GA. They are:
#1 Planning – at this stage; you create a road map of exactly how you will collect the data and send it to Google Analytics via custom dimensions/metrics.
#2 Configuration – at this stage, custom dimensions and metrics are defined via Google Analytics property settings or GTM container tag settings.
#3 Collection – at this stage, you collect the required data (like values of custom dimensions or metrics) from your implementation and then send it to the Google Analytics server.
#4 Processing – at this stage GA server process the collected data according to their configuration values (like scope) and reporting view filters.
#5 Reporting – at this stage, the processed data become available in the GA reports.
#6 Querying – at this stage, a GA user can query the data via the reporting interface or the GA API.
Frequently Asked Questions about dimensions and metrics
What is a dimension in Google Analytics?
A dimension is the attribute of visitors to your website. Google Analytics displays data in its reports, usually in the form of a table. Each row of the table represents a dimension.
What are predefined and custom dimensions?
Dimensions which are already available in Google Analytics reports are called Predefined dimensions. These are ready-to-use dimensions. If you want to measure the characteristic of a user which can not be measured by any predefined dimension, then you need to create and use your own dimension to measure such characteristics. Such dimensions are called ‘Custom dimensions’.
What is a metric in Google Analytics?
Google Analytics displays data in its reports, usually in the form of a table. Each column of the table represents a metric. A metric is a number used to measure one of the characteristics of a dimension. A dimension can have one or more characteristics.
What are predefined and custom metrics?
Metrics which are already available in Google Analytics reports are called Predefined metrics. These are ready-to-use metrics. If you want to measure the characteristic of a dimension (whether predefined or custom dimension), which cannot be measured by any predefined metric, then you need to create and use your own metric to measure such characteristics.
What are the differences between a dimension and metric in Google Analytics?
Though both dimensions and metrics are the characteristics of your website visitors, they are different in the way they are: configured, collected, processed, reported and queried in Google Analytics. For example, you can’t use (or query) dimension as a metric or metric as a dimension in Google Analytics either via the reporting interface or via API.
How do I classify dimensions in terms of scope?
Google Analytics dimensions can be classified into the following four categories in terms of scope: 1) Hit-level dimensions 2) Session-level dimensions 3) User-level dimensions 4) Product-level dimensions.
My best selling books on Digital Analytics and Conversion Optimization
Maths and Stats for Web Analytics and Conversion Optimization
This expert guide will teach you how to leverage the knowledge of maths and statistics in order to accurately interpret data and take actions, which can quickly improve the bottom-line of your online business.
Master the Essentials of Email Marketing Analytics
This book focuses solely on the ‘analytics’ that power your email marketing optimization program and will help you dramatically reduce your cost per acquisition and increase marketing ROI by tracking the performance of the various KPIs and metrics used for email marketing.
Attribution Modelling in Google Analytics and BeyondSECOND EDITION OUT NOW!
Attribution modelling is the process of determining the most effective marketing channels for investment. This book has been written to help you implement attribution modelling. It will teach you how to leverage the knowledge of attribution modelling in order to allocate marketing budget and understand buying behaviour.
Attribution Modelling in Google Ads and Facebook
This book has been written to help you implement attribution modelling in Google Ads (Google AdWords) and Facebook. It will teach you, how to leverage the knowledge of attribution modelling in order to understand the customer purchasing journey and determine the most effective marketing channels for investment.
About the Author
Himanshu Sharma
Founder, OptimizeSmart.com
Over 15 years of experience in digital analytics and marketing
Author of four best-selling books on digital analytics and conversion optimization
Nominated for Digital Analytics Association Awards for Excellence
Runs one of the most popular blogs in the world on digital analytics
Consultant to countless small and big businesses over the decade
Free GA4 Mastery Course (30 Days Access) – Certification Upon Completion! (Over 4000 Students)
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
Cookie
Duration
Description
cookielawinfo-checkbox-analytics
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional
11 months
The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy
11 months
The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.