Streaming schema for based on Google Analytics sessions

Tables

Streamed data is separated into tables by days, according to a time zone of a Google Analyitcs view selected during streaming setup.

Tables naming is 'session_streaming_YYYYMMDD'.

Session data are generated within 24 hours (for example data for 13.04.2016 will be available not earlier than 14.04.2016).

Rows

Each session is written to a separate row.

Columns

The columns within the table are listed below.

Google BigQuery alias Google BigQuery data type Google Analytics dimension or metric
user RECORD  
user.Id STRING User ID
user.phone STRING available only in Streaming, use parameter &tel=%2B1234567890
user.email STRING available only in Streaming, use parameter &email=mail%40example.com
clientId STRING Client ID
date STRING Record date in "YYYY-MM-DD" format
sessionId STRING Session ID (value of custom dimension chosen on «Settings» tab of your Streaming pipeline)
visitNumber INTEGER Count of Sessions
newVisits INTEGER Visitor type(1 - new || NULL - returned)
device RECORD  
device.deviceCategory STRING deviceCategory
device.browser STRING browser
device.browserVersion STRING browserVersion
device.operatingSystem STRING operatingSystem
device.operatingSystemVersion STRING operatingSystemVersion
device.mobileDeviceInfo STRING Data from mobileDeviceBranding, mobileDeviceModel и mobileDeviceMarketingName.
geoNetwork RECORD  
geoNetwork.city STRING city
geoNetwork.region STRING region
geoNetwork.country STRING country
trafficSource RECORD  
trafficSource.source STRING Source
trafficSource.medium STRING Medium
trafficSource.campaign STRING Campaign
trafficSource.keyword STRING Keyword
trafficSource.adContent STRING

adContent

trafficSource.channelGrouping STRING channelGrouping
trafficSource.adwordsClickInfo RECORD  
trafficSource.adwordsClickInfo.adNetworkType STRING Ad Distribution Network (adDistributionNetwork)
trafficSource.adwordsClickInfo.adMatchedQuery STRING Search Query (adMatchedQuery)
trafficSource.adCost FLOAT total adCost/total sessions
trafficSource.attributedAdCost FLOAT Attributed adCost
totals RECORD All totals data is taken from GA
totals.hits INTEGER Total number of hits by the session
totals.pageviews INTEGER Total number of pageviews by the session
totals.events INTEGER Total number of events by the session
totals.transactions INTEGER Total number of transactions by the session
totals.visits INTEGER The total number of visits by the session
totals.screenviews INTEGER Total number of screenviews by the session
totalsStreaming RECORD All streaming totals data is taken from Hit Streaming
totalsStreaming.hits INTEGER SUM(rows)
totalsStreaming.events INTEGER SUM(rows) where type='event'
totalsStreaming.transactions INTEGER SUM(rows) where action='purchase'
totalsStreaming.pageviews INTEGER SUM(rows) where type='pageview'
totalsStreaming.screenviews INTEGER SUM(rows) where type='screenview'
hits RECORD  
hits.hitId STRING Hit identifier represented as UUID (version 4)
hits.isEntrance INTEGER The first pageview or screenview hit in the session (1 || NULL)
hits.isExit INTEGER The last pageview or screenview hit in the sesiion (1 || NULL)
hits.time INTEGER Hits time
hits.type STRING types
hits.pagePath STRING The field is deprecated, please use hits.page.pagePath instead of it.
hits.pageType STRING TThe field is deprecated, please use hits.page.pageType instead of it.
hits.eCommerceActionType STRING The field is deprecated, please use hits.eCommerceActionType.action_type instead of it.
hits.isInteraction BOOLEAN Non-Interaction Hit
hits.currency STRING Currency Code
hits.referer STRING Full Referrer
hits.dataSource STRING Data Source
hits.device RECORD  
hits.device.ip STRING IP Override
hits.contentGroups RECORD  
hits.contentGroups.index INTEGER Page Group XX
hits.contentGroups.value STRING Page Group XX
hits.social RECORD  
hits.social.socialInteractionAction STRING Social Action
hits.social.socialInteractionNetwork STRING Social Source
hits.social.socialInteractionTarget STRING Social Entity
hits.page RECORD  
hits.page.pageType STRING Content grouping or a hit scope custom dimension (to collect the data set a parameter on Page type parameter on «Settings» tab of your Streaming pipeline)
hits.page.pagePath STRING Page
hits.page.hostname STRING Hostname
hits.page.pageTitle STRING Page Title
hits.eCommerceAction RECORD  
hits.eCommerceAction.action_type STRING Product Action
hits.eCommerceAction.option STRING Checkout Options
hits.eCommerceAction.step INTEGER Checkout Step
hits.eCommerceAction.list STRING Product Action List.
A list where an action on product occurred (product.isImpression=FALSE).
hits.experiment RECORD Content experiments
hits.experiment.experimentId STRING Experiment ID
hits.experiment.experimentVariant STRING Experiment variant
hits.product RECORD  
hits.product.isImpression BOOLEAN hits.product.isImpression
hits.product.impressionList STRING Product List Name.
A list where a product was shown (product.isImpression=TRUE).
hits.product.productListName STRING productListName
hits.product.productBrand STRING Product Brand
hits.product.productSku STRING Product SKU
hits.product.productVariant STRING Product Variant
hits.product.productPrice FLOAT Product Revenue
hits.product.localProductPrice FLOAT Local Product Price converted via Yahoo Currecy Converter
hits.product.productQuantity INTEGER Quantity
hits.product.productCategory STRING Product Category
hits.product.productName STRING Product
hits.product.coupon STRING Product Coupon Code
hits.promotion RECORD  
hits.promotion.promoCreative STRING Internal Promotion Creative
hits.promotion.promoId STRING Internal Promotion ID
hits.promotion.promoName STRING Internal Promotion Name
hits.promotion.promoPosition STRING Internal Promotion Position
hits.promotionActionInfo STRING Promotion Action
hits.transaction RECORD  
hits.transaction.transactionId STRING Transaction ID
hits.transaction.transactionRevenue FLOAT Revenue
hits.transaction.localTransactionRevenue FLOAT Local Revenue converted via Yahoo Currecy Converter
hits.transaction.transactionTax FLOAT Tax
hits.transaction.localTransactionTax FLOAT Local Tax converted via Yahoo Currecy Converter
hits.transaction.transactionShipping FLOAT Shipping
hits.transaction.localTransactionShipping FLOAT Local Shipping converted via Yahoo Currecy Converter
hits.transaction.transactionCoupon STRING Order Coupon Code
hits.transaction.affiliation STRING Affiliation
hits.contentInfo RECORD  
hits.contentInfo.contentDescription STRING Screen Name
hits.appInfo RECORD  
hits.appInfo.name STRING App Name
hits.appInfo.version STRING App Version
hits.appInfo.id STRING App ID
hits.appInfo.installerId STRING App Installer ID
hits.eventInfo RECORD  
hits.eventInfo.eventCategory STRING Event Category
hits.eventInfo.eventAction STRING Event Action
hits.eventInfo.eventLabel STRING Event Label
hits.eventInfo.eventValue INTEGER Event Value
hits.timingInfo RECORD  
hits.timingInfo.timingCategory STRING Timing Category
hits.timingInfo.timingVariable STRING Timing Variable
hits.timingInfo.timingLabel STRING Timing Label
hits.timingInfo.timingValue INTEGER User Timing
hits.timingInfo.pageLoad INTEGER Page Load Time
hits.timingInfo.DNS INTEGER Domain Lookup Time
hits.timingInfo.pageDownload INTEGER Page Download Time
hits.timingInfo.redirectResponse INTEGER Redirection Time
hits.timingInfo.TCPConnect INTEGER Server Connection Time
hits.timingInfo.serverResponse INTEGER Server Response Time
hits.timingInfo.DOMInteractive INTEGER Document Interactive Time
hits.timingInfo.contentLoad INTEGER Document Content Loaded Time

 Tables contain repeated records. When selecting data, tables will be flattened over nested fields. 

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.