Template result: data schema of the final destination table

You will get the data in the table 'owoxbi_ga4_sessions' with the schema below:

This section contains user info

Field name Data Type Description
user RECORD This section contains user info
id STRING User Identificator. The value of the parameter with the key 'user_id' is taken from the last event in the session timeline where this value is not empty, within the array of event parameters
phone STRING The user phone number. The value of the parameter with the key 'tel' is taken from the last event in the session timeline where this value is not empty, within the array of event parameters
email STRING The user email. The value of the parameter with the key 'email' is taken from the last event in the session timeline where this value is not empty, within the array of event parameters
owoxId STRING Additional user identifier that lets you track audience overlapping across domains without sending the Client ID parameter. The value of the parameter with the key 'owox.user_id' is taken from the last event in the session timeline where this value is not empty, within the array of event parameters
user_pseudo_id STRING If sessions are formed on some other identificator, here would be the value of original user_pseudo_id
clientId STRING This anonymously identifies a particular user, device, or browser instance. The value of the 'user_pseudo_id' field is being used.
date DATE The parsed date value from the wildcard table suffix is being used for partitioning the session table generated from merging events template.
sessionId STRING An identifier for this session. The concatenation of 'user_pseudo_id' and the timestamp of the first event in the session is performed, or if 'user_pseudo_id' is empty, then 'user_id' is used instead.
visitNumber INTEGER Number of client's visit
isBounceSession INTEGER This field indicates whether the session was a bounce (1) or not (0). A session is considered a bounce, if fewer than two pages were viewed, and there were no interactive actions (anything except 'scroll', 'video_progress', 'session_start', 'first_visit').
timeOnSite INTEGER Session duration in seconds
newVisits INTEGER This field will remain empty, it is not intended to be filled in the current scheme
landingPage STRING The value of the parameter with the key 'page_location' is taken from the first event in the session timeline, within the array of event parameters. A URL address of the first event in the session without any query parameters such as UTM tags. This field helps unite the same landing pages from the sessions with different sources.
platform STRING This value can take two parameters: "WEB" for sessions from the website, generated by the "Merge Events into Sessions" template or "Merge Events into Sessions (GA4 BigQuery Export)" template. And "APP" for sessions from the application, generated by "Merge Events into Sessions (App Data)" template.
device RECORD This section contains information about the user devices
deviceCategory STRING The type of the user's device:
-tv;
- game console;
- robot;
- set-top box;
- robot mobile;
- unknown;
- hacker;
- virtual reality;
- anonymizer;
Full list and definitions
browser STRING The browser used
browserVersion STRING The version of the browser used
operatingSystem STRING The operating system of the device
operatingSystemVersion STRING The version of the operating system
mobileDeviceInfo STRING The branding, model, and marketing name used to identify the mobile device
ip STRING This field will remain empty, it is not intended to be filled in the current scheme. Planned to be added.
userAgent STRING This field will remain empty, it is not intended to be filled in the current scheme. Planned to be added.
isBot BOOLEAN 'true' if the session is started by a bot.
'false' if the session is started by a real user
language STRING Language
Language in the ISO-639 format
geoNetwork RECORD This section contains information about the geography of the user
country STRING The country from which sessions originated, based on last geo.country parameter, that is not empty.
countryIsoCode STRING This field will remain empty, it is not intended to be filled in the current scheme
region STRING The region from which sessions originated, based on last geo.region parameter, that is not empty.
regionIsoCode STRING This field will remain empty, it is not intended to be filled in the current scheme
city STRING The city from which sessions originated, based on last geo.city parameter, that is not empty.
latitude FLOAT This field will remain empty, it is not intended to be filled in the current scheme
longitude FLOAT This field will remain empty, it is not intended to be filled in the current scheme
continent STRING The continent from which sessions originated, based on last geo.continent parameter, that is not empty.
sub_continent STRING The country from which sessions originated, based on last geo.country parameter, that is not empty.
metro STRING The Designated Market Area (DMA) from which sessions originate.
trafficSource RECORD This section contains information about the Traffic Source from which the session originated
channelGrouping STRING This section contains user info
source STRING The source of the traffic source. Could be the name of the search engine, the referring hostname, or a value of the utm_source URL parameter.
medium STRING The medium of the traffic source from the utm_medium URL parameter. Could be "organic", "cpc", "referral" etc.
campaign STRING The campaign value. Usually set by the utm_campaign URL parameter.
keyword STRING The keyword of the traffic source, usually set when the trafficSource.medium is "organic" or "cpc". Can be set by the utm_term URL parameter. For Google Ads campaigns may be a descriptive string for the targeting criterion.
adContent STRING The ad content of the traffic source. Can be set by the utm_content URL parameter.
adGroup STRING This field will remain empty, it is not intended to be filled in the current scheme
keywordMatchType STRING This field will remain empty, it is not intended to be filled in the current scheme
adwordsClickInfo RECORD This section contains information about the Google Ads click info if there is any associated with this session. Analytics uses the last non-direct click model.
placementDomain STRING This field will remain empty, it is not intended to be filled in the current scheme
adNetworkType STRING This field will remain empty, it is not intended to be filled in the current scheme
adMatchedQuery STRING This field will remain empty, it is not intended to be filled in the current scheme
gclid STRING Specifies the Google Ads Id
dclid STRING Specifies the Google Display Ads Id
mscklid STRING Specifies the Microsoft Click Id
fbclid STRING Specifies the Facebook Click Id
isLastClickDirect BOOLEAN True, if this was the last direct click.
isTrueDirect BOOLEAN

Possible values: null, true.

The field is assigned true if the source of the session was Direct, e.g.:

  • a user typed a website URL into a browser;
  • a user came to a website via a bookmark.
Note: If a user first arrives on a website through the paid traffic source, leaves opened a page, and returns to the same page when the first session has timed out, then a new session will start. And the
isTrueDirect field will be true for this new session.
adCost FLOAT This field will remain empty, it is not intended to be filled in the current scheme
attributedAdCost FLOAT Total session cost is attributed evenly between the sessions according to the known tags.

If some value has already been assigned to such sessions (for example, by assigning a value from the adCost field), the new value will be added to the existing one. See the example
attributedAdImpressions FLOAT Total session impressions is attributed evenly between the sessions according to the known tags.

If some impressions value has already been assigned to such sessions, the new value will be added to the existing one. See the example on the attributedAdCost format.
attributedAdClicks FLOAT Total session clicks is attributed evenly between the sessions according to the known tags.

If some clicks value has already been assigned to such sessions, the new value will be added to the existing one. See the example on the attributedAdCost format.
referrer STRING The referring page. If this page is from the same domain, this is blank.
totals RECORD Contains nested fields with aggregated session data. Analog to the totalsStreaming field
hits INTEGER The total number of events within the session.
events INTEGER The total number of events within the session, that are not page_view.
transactions INTEGER The total number of events within the session, that have purchase value.
pageviews INTEGER The total number of events within the session, that have page_view value.
screenviews INTEGER This field will remain empty, it is not intended to be filled in the current scheme
isInteraction BOOLEAN This value is TRUE for sessions with interaction events. The value is FALSE if there are no interaction events in the session.
visits INTEGER Being filled with a constant value of "1".
totalsStreaming RECORD Contains nested fields with aggregated session data
hits INTEGER Total number of events within the session
events INTEGER Total number of events within the session, with event_name, that is not equal page_view.
transactions INTEGER The total number of events within the session, that have purchase value.
pageviews INTEGER The total number of events within the session, that have page_view value.
screenviews INTEGER This field will remain empty, it is not intended to be filled in the current scheme
isInteraction BOOLEAN Being filled with constant value of "true"
customDimensions RECORD This section contains any user-level or session-level custom dimensions that are set for a session. This is a repeated field and has an entry for each dimension that is set.
This field is null for now.
index INTEGER This field will remain empty, it is not intended to be filled in the current scheme
key STRING This field will remain empty, it is not intended to be filled in the current scheme
value STRING This field will remain empty, it is not intended to be filled in the current scheme
hits RECORD This row and nested fields are populated for any and all types of events
hitId STRING An identifier for this event. Created from the pre-generated sessionId with event_name, timestamp, and numbering within these parameters (in case of duplicates). The result is passed through the MD5 and TO_HEX functions.
isEntrance INTEGER Contains the value of 1 in the first pageview event of the session. It is not filled in the rest of the events (Null).
isExit INTEGER Contains the value of 1 in the last pageview event of the session. It is not filled in the rest of the events (Null).
time INTEGER UNIX-seconds of event.
timestamp INTEGER UNIX-milliseconds of event.
queueTime INTEGER This field will remain empty, it is not intended to be filled in the current scheme
hour INTEGER The hour in which the event occurred (0 to 23), obtained from the date and time value, obtained from event_timestamp, considering the timezone.
minute INTEGER The minute in which the event occurred (0 to 59), obtained from the date and time value, obtained from event_timestamp, considering the timezone.
type STRING For events with an event_name equal to page_view, "pageview" is indicated. For automatically collected GA4 events, "autoevent" is used. For all other events, "event" is used.
isSecure BOOLEAN If the parameter with the key "page_location" from the event_params array contains the value "https", the field takes the value "true". Otherwise, it takes the value "false".
pagePath STRING The URL path of the page
pageType STRING Website page type
eCommerceActionType STRING Product Action
Can be one of: detail, click, add, remove, checkout, checkout_option, purchase, refund.

Also, this field can take the same value as the promotionActionInfo field.
isInteraction BOOLEAN If the value of the event_name parameter is in the list of "scroll" or "video_progress", the field takes the value "false". Otherwise, it takes the value "true".
currency STRING The code of local currency for all transaction currency values
referer STRING The referring page, if the session has a goal completion or transaction. If this page is from the same domain, this is blank.
referralPath STRING The path of the referring URL (e.g., document.referrer). If someone places on their webpage a link to the property, this is the path of the page containing the referring link.
dataSource STRING The data source of a event. The value of the parameter with the key "dataSource" from the event_params array.
device RECORD This section contains information about the user devices
ip STRING This field will remain empty, it is not intended to be filled in the current scheme
userAgent STRING This field will remain empty, it is not intended to be filled in the current scheme
flashVersion STRING This field will remain empty, it is not intended to be filled in the current scheme
javaEnabled BOOLEAN This field will remain empty, it is not intended to be filled in the current scheme
language STRING The language, in ISO-639 code format (e.g., en-gb for British English), provided by the HTTP Request for the browser
screenColors STRING This field will remain empty, it is not intended to be filled in the current scheme
screenResolution STRING Resolution of users' screens, for example, 1024x738
geo RECORD Contains nested fields, but is fully empty.
id STRING This field will remain empty, it is not intended to be filled in the current scheme
customGroups RECORD Contains nested fields, but is fully empty.
index INTEGER This field will remain empty, it is not intended to be filled in the current scheme
value STRING This field will remain empty, it is not intended to be filled in the current scheme
contentGroups RECORD Contains nested fields, but is fully empty.
index INTEGER This field will remain empty, it is not intended to be filled in the current scheme
value STRING This field will remain empty, it is not intended to be filled in the current scheme
social RECORD Contains nested fields, but is fully empty.
socialInteractionAction STRING This field will remain empty, it is not intended to be filled in the current scheme
socialInteractionNetwork STRING This field will remain empty, it is not intended to be filled in the current scheme
socialInteractionTarget STRING This field will remain empty, it is not intended to be filled in the current scheme
page RECORD This section is populated for each event with type = pageview
pageType STRING Website page type
pagePath STRING The URL path of the page
hostname STRING The hostname of the URL
pageTitle STRING The page title
eCommerceAction RECORD This section contains all of the events that occurred during the session. This is a repeated field and has an entry for each event that was collected.
action_type STRING Product Action
Can be one of: detail, click, add, remove, checkout, checkout_option, purchase, refund.

Also, this field can take the same value as the promotionActionInfo field.
option STRING This field will remain empty, it is not intended to be filled in the current scheme
step INTEGER This field will remain empty, it is not intended to be filled in the current scheme
list STRING This field will remain empty, it is not intended to be filled in the current scheme
experiment RECORD This row and the nested fields are populated for each event that contains data for an experiment
experimentId STRING This field will remain empty, it is not intended to be filled in the current scheme
experimentVariant STRING This field will remain empty, it is not intended to be filled in the current scheme
product RECORD This row and nested fields will be populated for each event that contains Enhanced Ecommerce PRODUCT data
isImpression BOOLEAN If the event_name parameter is equal to "view_item_list", the field takes the value "true". Otherwise, it takes the value "false".
impressionList STRING The name of the product list in which the product appears. If the event_name parameter is equal to "view_item_list", the field takes the value of "items.item_list_name". Otherwise, it remains empty (Null).
productListName STRING If the event_name parameter is equal to "view_item_list", the field takes the value of "items.item_list_name". Otherwise, it remains empty (Null).
productBrand STRING The brand associated with the product
productSku STRING Product SKU.
productVariant STRING Product Variant.
productPrice FLOAT Price of the product in the currency in USD.
localProductPrice FLOAT Product price in the actual transaction currency
productQuantity INTEGER The quantity of the product purchased
productCategory STRING Product Category
productName STRING Product Name
position INTEGER This field will remain empty, it is not intended to be filled in the current scheme
coupon STRING Code for the product-level coupon (Enhanced Ecommerce)
customDimensions RECORD Contains nested fields, but is fully empty.
index INTEGER This field will remain empty, it is not intended to be filled in the current scheme
key STRING This field will remain empty, it is not intended to be filled in the current scheme
value STRING This field will remain empty, it is not intended to be filled in the current scheme
customMetrics RECORD Contains nested fields, but fully empty.
index INTEGER This field will remain empty, it is not intended to be filled in the current scheme
key STRING This field will remain empty, it is not intended to be filled in the current scheme
value STRING This field will remain empty, it is not intended to be filled in the current scheme
promotion RECORD This row and nested fields are populated for each event that contains Enhanced Ecommerce PROMOTION information
promoCreative STRING The text or creative variation associated with the promotion
promoId STRING Promotion ID
promoName STRING Promotion Name
promoPosition STRING Promotion position on the site
promotionActionInfo STRING Enhanced Ecommerce PROMOTION action information
transaction RECORD This section is populated for each event with type = transaction
transactionId STRING The transaction ID of the e-commerce transaction
transactionRevenue FLOAT Revenue from the transaction in the USD.
localTransactionRevenue FLOAT Revenue from the transaction in the local transaction currency
transactionTax FLOAT Transaction tax in the USD
localTransactionTax FLOAT Transaction tax in the local transaction currency
transactionShipping FLOAT Shipping price for the transaction in USD
localTransactionShipping FLOAT Shipping price for the transaction in the local currency
transactionCoupon STRING This field will remain empty, it is not intended to be filled in the current scheme
affiliation STRING This field will remain empty, it is not intended to be filled in the current scheme
contentInfo RECORD Contains nested fields, but is fully empty.
contentDescription STRING This field will remain empty, it is not intended to be filled in the current scheme
appInfo RECORD This section will be populated for each event with type = "appview" or "exception"
name STRING This field will remain empty, it is not intended to be filled in the current scheme
version STRING The application version
id STRING The application ID
installerId STRING This field will remain empty, it is not intended to be filled in the current scheme
eventInfo RECORD This section is populated for each event with type = "event"
eventName STRING The event name
eventCategory STRING The event category
eventAction STRING The event action
eventLabel STRING The event label
eventValue STRING The event value
timingInfo RECORD Contains nested fields, but is fully empty.
timingCategory STRING This field will remain empty, it is not intended to be filled in the current scheme
timingVariable STRING This field will remain empty, it is not intended to be filled in the current scheme
timingLabel STRING This field will remain empty, it is not intended to be filled in the current scheme
timingValue INTEGER This field will remain empty, it is not intended to be filled in the current scheme
pageLoad INTEGER This field will remain empty, it is not intended to be filled in the current scheme
DNS INTEGER This field will remain empty, it is not intended to be filled in the current scheme
pageDownload INTEGER This field will remain empty, it is not intended to be filled in the current scheme
redirectResponse INTEGER This field will remain empty, it is not intended to be filled in the current scheme
TCPConnect INTEGER This field will remain empty, it is not intended to be filled in the current scheme
serverResponse INTEGER This field will remain empty, it is not intended to be filled in the current scheme
DOMInteractive INTEGER This field will remain empty, it is not intended to be filled in the current scheme
contentLoad INTEGER This field will remain empty, it is not intended to be filled in the current scheme
customDimensions RECORD This section contains any event-level custom dimensions. This is a repeated field and has an entry for each dimension that is set.
index INTEGER This field will remain empty, it is not intended to be filled in the current scheme
key STRING The "key" parameter from the event_params. Only those array rows are considered where the "value.string_value" value is not empty.
value STRING The "value.string_value" parameter from the event_params. Only those array rows are considered where the "value.string_value" value is not empty.
customMetrics RECORD This section contains any event-level custom metrics. This is a repeated field and has an entry for each metric that is set.
index INTEGER This field will remain empty, it is not intended to be filled in the current scheme
key STRING The "key" parameter from the event_params. Only those array rows are considered where the value of at least one of the fields "value.int_value", "value.double_value", "value.float_value" is not empty.
value FLOAT The "value.int_value", "value.double_value", and "value.float_value" parameters from the event_params, converted to the FLOAT data type. Only those array rows are considered where the value of at least one of these fields is not empty.
exceptionInfo RECORD Contains nested fields with the info on exceptions
description STRING This field will remain empty, it is not intended to be filled in the current scheme
isFatal BOOLEAN This field will remain empty, it is not intended to be filled in the current scheme
privacyInfo RECORD This section contains user info
analyticsStorage STRING Whether data collection is enabled for the user for Google Analytics.

Possible values: "Yes", "No", "Not configured".
Google Help Center
adsStorage STRING Whether ad targeting is enabled for the user.

Possible values: "Yes", "No", "Not configured".
Google Help Center
usesTransientToken STRING Translation: Whether the user has opted out of data collection for Google Analytics and whether the developer has enabled data collection without cookie files based on temporary tokens in server-side data.

Possible values: "Yes", "No", "Not configured".
Google Help Center
visitStartTime INTEGER UNIX-seconds of first event in session.
Was this article helpful?
1 out of 1 found this helpful
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.