Detailed guide to the BigQuery GA4 table schema, including all fields, types, and nested structures such as event_params, user_properties, ecommerce, and items. Learn how GA4 stores event and user data for analysis in BigQuery
| Field Name | Mode | Type | Description |
|---|---|---|---|
| event_date | NULLABLE | STRING | Date of the event in YYYYMMDD format |
| event_timestamp | NULLABLE | INTEGER | Timestamp of the event in microseconds |
| event_name | NULLABLE | STRING | Name of the event |
| event_previous_timestamp | NULLABLE | INTEGER | Timestamp of previous event for the same user |
| event_value_in_usd | NULLABLE | FLOAT | Monetary value of the event in USD |
| event_bundle_sequence_id | NULLABLE | INTEGER | Sequence ID of the event bundle |
| event_server_timestamp_offset | NULLABLE | INTEGER | Offset between client and server timestamps |
| user_id | NULLABLE | STRING | User ID (if available) |
| user_pseudo_id | NULLABLE | STRING | Anonymous user identifier |
| user_first_touch_timestamp | NULLABLE | INTEGER | Timestamp of the user’s first interaction |
| stream_id | NULLABLE | INTEGER | ID of the data stream |
| platform | NULLABLE | STRING | Platform where event occurred |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| key | NULLABLE | STRING | Parameter name |
| value.string_value | NULLABLE | STRING | String representation |
| value.int_value | NULLABLE | INTEGER | Integer representation |
| value.float_value | NULLABLE | FLOAT | Float representation |
| value.double_value | NULLABLE | FLOAT | Double representation |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| key | NULLABLE | STRING | Property name |
| value.string_value | NULLABLE | STRING | String representation |
| value.int_value | NULLABLE | INTEGER | Integer representation |
| value.float_value | NULLABLE | FLOAT | Float representation |
| value.double_value | NULLABLE | FLOAT | Double representation |
| value.set_timestamp_micros | NULLABLE | INTEGER | Timestamp when property was set |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| analytics_storage | NULLABLE | INTEGER | Analytics storage consent |
| ads_storage | NULLABLE | INTEGER | Ads storage consent |
| uses_transient_token | NULLABLE | STRING | Flag for transient token usage |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| revenue | NULLABLE | FLOAT | Lifetime revenue of the user |
| currency | NULLABLE | STRING | Currency code for revenue |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| category | NULLABLE | STRING | Device category (mobile, tablet, desktop) |
| mobile_brand_name | NULLABLE | STRING | Mobile brand |
| mobile_model_name | NULLABLE | STRING | Mobile model |
| mobile_marketing_name | NULLABLE | STRING | Marketing name of the device |
| mobile_os_hardware_model | NULLABLE | INTEGER | OS hardware model identifier |
| operating_system | NULLABLE | STRING | OS name |
| operating_system_version | NULLABLE | STRING | OS version |
| vendor_id | NULLABLE | INTEGER | Vendor identifier |
| advertising_id | NULLABLE | INTEGER | Advertising ID |
| language | NULLABLE | STRING | Device language |
| is_limited_ad_tracking | NULLABLE | STRING | Flag for limited ad tracking |
| time_zone_offset_seconds | NULLABLE | INTEGER | Time zone offset in seconds |
| web_info.browser | NULLABLE | STRING | Browser name |
| web_info.browser_version | NULLABLE | STRING | Browser version |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| continent | NULLABLE | STRING | Continent code |
| sub_continent | NULLABLE | STRING | Sub-continent |
| country | NULLABLE | STRING | Country code |
| region | NULLABLE | STRING | Region name |
| city | NULLABLE | STRING | City name |
| metro | NULLABLE | STRING | Metro code or name |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| id | NULLABLE | STRING | App identifier |
| version | NULLABLE | STRING | App version |
| install_store | NULLABLE | STRING | App store used for installation |
| firebase_app_id | NULLABLE | STRING | Firebase App ID |
| install_source | NULLABLE | STRING | Source of installation |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| medium | NULLABLE | STRING | Traffic medium |
| name | NULLABLE | STRING | Campaign name |
| source | NULLABLE | STRING | Traffic source |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| hostname | NULLABLE | STRING | Hostname of the site/app |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| total_item_quantity | NULLABLE | INTEGER | Total number of items |
| purchase_revenue_in_usd | NULLABLE | FLOAT | Purchase revenue in USD |
| purchase_revenue | NULLABLE | FLOAT | Purchase revenue in local currency |
| refund_value_in_usd | NULLABLE | FLOAT | Refund in USD |
| refund_value | NULLABLE | FLOAT | Refund in local currency |
| shipping_value_in_usd | NULLABLE | FLOAT | Shipping cost in USD |
| shipping_value | NULLABLE | FLOAT | Shipping cost in local currency |
| tax_value_in_usd | NULLABLE | FLOAT | Tax value in USD |
| tax_value | NULLABLE | FLOAT | Tax value in local currency |
| unique_items | NULLABLE | INTEGER | Count of unique items |
| transaction_id | NULLABLE | STRING | Transaction ID |
| Field Name | Mode | Type | Description |
|---|---|---|---|
| item_id | NULLABLE | STRING | Item identifier |
| item_name | NULLABLE | STRING | Item name |
| item_brand | NULLABLE | STRING | Item brand |
| item_variant | NULLABLE | STRING | Item variant |
| item_category | NULLABLE | STRING | Item category level 1 |
| item_category2 | NULLABLE | STRING | Item category level 2 |
| item_category3 | NULLABLE | STRING | Item category level 3 |
| item_category4 | NULLABLE | STRING | Item category level 4 |
| item_category5 | NULLABLE | STRING | Item category level 5 |
| price_in_usd | NULLABLE | FLOAT | Price in USD |
| price | NULLABLE | FLOAT | Price in local currency |
| quantity | NULLABLE | INTEGER | Quantity purchased |
| item_revenue_in_usd | NULLABLE | FLOAT | Revenue from item in USD |
| item_revenue | NULLABLE | FLOAT | Revenue from item in local currency |
| item_refund_in_usd | NULLABLE | FLOAT | Refund in USD |
| item_refund | NULLABLE | FLOAT | Refund in local currency |
| coupon | NULLABLE | STRING | Coupon applied |
| affiliation | NULLABLE | STRING | Affiliation/store name |
| location_id | NULLABLE | STRING | Item location ID |
| item_list_id | NULLABLE | STRING | List ID |
| item_list_name | NULLABLE | STRING | List name |
| item_list_index | NULLABLE | STRING | Position in list |
| promotion_id | NULLABLE | STRING | Promotion ID |
| promotion_name | NULLABLE | STRING | Promotion name |
| creative_name | NULLABLE | STRING | Creative asset name |
| creative_slot | NULLABLE | STRING | Creative slot name |