Data Destinations: User-Level (Event-Level) Data Schemas

For general info about Singular data destinations, how they work, and the different types of data that can be exported, see Singular Data Destinations (ETL) FAQ.

When you use Singular data destinations, Singular standardizes data from different sources into the same data schema so you can easily query on it in your database.

Singular offers different data schemas you can choose from. Each schema defines a different set of fields that the Singular data destination will load into your database.

Conversions and Events are available to all Data Destinations customers, while other schemas are premium features. Use the table below to help you choose the data schema that best fits your needs.

User-Level Data Schemas

For more information about each field, see Export Logs: Supported Fields. To learn about the different timestamp fields, see Timestamp Meanings and Formats below.

Note: User-Level Impressions are available as a custom schema to S3. For more information, reach out to your Customer Success Manager.

Default Schemas

The schemas below are available to all our customers.

Attributions (v2) Data Schema

Includes information about installs and re-engagement events, who they were attributed to, and other details about the attribution (e.g., was it deterministic or probabilistic).

Note: The location provided for the conversion event is based on the IP address associated with the event - not on any location detected internally in your app or any user-provided information. If you have another source of location data for the event, you can check it by reading the passthrough parameter sent by your app to Singular.

etl_record_processing_hour_utc
  affiliate_id
  affiliate_name
  android_id
  android_id_md5
  android_sha1
  app_longname
  app_version
  bid_type
  campaign_id
  campaign_name
  city
  click_id
  country
  creative_id
  creative_name
  custom_user_ids
  device_id
  device_id_type
  device_make
  device_model
  event_timestamp
  event_timestamp_unix_utc
  fraud_reason
  fraud_status
  gaid
  gaid_md5
  gaid_sha_1
  google_click_id
  idfa
  idfa_md5
  idfa_sha_1
  idfv
  is_reengagement
  is_view_through
  method
  os_version
  partner
  passthrough
  platform
  publisher_concatenated
  publisher_hashed_id
  publisher_id
  publisher_name
  singular_campaign_name
  singular_partner_name
  state
  store
  sub_campaign_id
  sub_campaign_name
  sub_publisher_id
  sub_publisher_name
  touchpoint_ip
  touchpoint_timestamp
  touchpoint_timestamp_unix_utc
  tracker_name
  utm_campaign
  utm_content
  utm_medium
  utm_source
  utm_term
  waid
Events (v5) Data Schema

Includes data about in-app events, including sessions, registrations, purchases, and any other events that have been defined in the app when integrating the Singular SDK/S2S.

etl_record_processing_hour_utc
  adjusted_timestamp
  adjusted_timestamp_unix_utc
  affiliate_id
  affiliate_name
  app_longname
  app_version
  arguments
  attribution_event_timestamp
  attribution_event_timestamp_unix_utc
  banner name (from v4)      
  bid_type
  campaign_id
  campaign_name
  city
  click_id
  converted_currency
  converted_revenue
  country
  creative_id
  creative_name
  currency
  custom_user_id
  device_id
  device_id_type
  estimated_skan_user (from V5) 
  install_source
  ip
  is_reengagement
  is_revenue_receipt_included
  is_revenue_valid
  is_view_through 
  name 
  os_version 
  partner 
  passthrough 
  platform 
  product_category
  product_name 
  product_price 
  product_quantity 
  product_sku 
  publisher_concatenated
  publisher_hashed_id 
  publisher_id 
  publisher_name 
  received_revenue 
  received_revenue_event
  revenue 
  server_timestamp 
  server_timestamp_unix_utc 
  session_id 
  singular_campaign_name
  state 
  sub_campaign_id 
  sub_campaign_name 
  sub_publisher_id 
  sub_publisher_name
  tag_id 
  touchpoint_timestamp 
  touchpoint_timestamp_unix_utc 
  tracker_name
  utm_campaign
  utm_content
  utm_medium
  utm_source
  utm_term

Other Schemas

To use one of the schemas below, open a ticket through the Singular platform
(Help > Contact Us).

Clicks (v2) Data Schema

Includes all clicks that were examined to determine the attribution of an install or re-engagement.

etl_record_processing_hour_utc
  adjusted_timestamp
  adjusted_timestamp_unix_utc
  affiliate_id
  affiliate_name
  app_longname
  app_version
  arguments
  attribution_event_timestamp
  attribution_event_timestamp_unix_utc
  bid_type
  campaign_id
  campaign_name
  city
  click_id
  converted_currency
  converted_revenue
  country
  creative_id
  creative_name
  currency
  custom_user_id
  device_id
  device_id_type
  install_source
  ip
  is_reengagement
  is_revenue_receipt_included
  is_revenue_valid
  is_view_through
  name
  os_version
  partner
  passthrough
  platform
  product_category
  product_name
  product_price
  product_quantity
  product_sku
  publisher_concatenated
  publisher_hashed_id
  publisher_id
  publisher_name
  received_revenue
  received_revenue_event
  revenue
  server_timestamp
  server_timestamp_unix_utc
  session_id
  singular_campaign_name
  state
  sub_campaign_id
  sub_campaign_name
  sub_publisher_id
  sub_publisher_name
  tag_id
  touchpoint_timestamp
  touchpoint_timestamp_unix_utc
  tracker_name
  utm_campaign
  utm_content
  utm_medium
  utm_source
  utm_term
SKAdNetwork Postbacks Data Schema

Includes all the SKAdNetwork postbacks that Singular received from your ad network partners. These postbacks are only available for iOS apps that use SKAdNetwork tracking and for partners who have a SKAdNetwork integration with Singular that involves forwarding postbacks.

Singular also offers aggregated SKAdNetwork data: see SKAdNetwork Raw Data Schemas and SKAdNetwork Data Schemas.

etl_record_processing_hour_utc
  app_longname
  city
  conversion_model_measurement_period
  conversion_model_name
  conversion_model_types
  conversion_model_version
  conversion_value
  country
  decoded_conversion_value
  estimated_cohort_period
  estimated_conversion_date
  estimated_install_date
  fraud_reason
  fraud_status
  ip
  is_view_through
  max_install_date
  min_install_date
  partner
  partner_campaign_id
  partner_campaign_name
  partner_creative_id
  partner_creative_name
  partner_sub_campaign_id
  partner_sub_campaign_name
  partner_sub_publisher_name
  referrer
  region
  signature
  singular_partner_name
  skadnetwork_app_id
  skadnetwork_campaign_id
  skadnetwork_network_id
  skadnetwork_publisher_app_id
  skadnetwork_redownload
  skadnetwork_version
  timestamp
  timestamp_unix_utc
  transaction_id
  user_agent
skan_postback__source_identifier
skan_postback__source_domain
skan_postback__postback_sequence_index
skan_postback__coarse_conversion_value
App SKAN Postbacks

Includes all the SKAdNetwork postbacks that are received directly from Apple by ad networks. These can be then forwarded to Singular. See How to Send SKAdNetwork Postbacks to Singular (iOS 15+).

etl_record_processing_hour_utc
  app_longname
  skadnetwork_version
  transaction_id
  skadnetwork_network_id
  skadnetwork_campaign_id
  skadnetwork_app_id
  skadnetwork_publisher_app_id
  conversion_value
  signature
  skadnetwork_redownload
  is_view_through
  timestamp_unix_utc
  timestamp
  ip
  user_agent
  partner
  fraud_status
  fraud_reason
  decoded_conversion_value
  conversion_model_name
  conversion_model_version
  conversion_model_types
  conversion_model_measurement_period
  estimated_conversion_date
  estimated_install_date
  estimated_cohort_period
  min_install_date
  max_install_date
  singular_partner_name
skan_postback__source_identifier
skan_postback__source_domain
skan_postback__postback_sequence_index
skan_postback__coarse_conversion_value
Fraud Data Schema

The raw output of the Singular Fraud Prevention System (to learn more, see Understanding Singular Fraud Prevention and the Fraud Reporting and Fraud Logs FAQ).

This data includes a row for every click and impression associated with an install event - including a row for the "organic install" option, which is also examined as an attribution option for every install. Therefore, you may see multiple touchpoints rejected for fraud for one single install. To sort or group together all the clicks and impressions belonging to the same install, use the unique_install_identifier field.

etl_record_processing_hour_utc
  app_longname
  app_version
  creative
  device_id
  device_make
  device_model
  fraud_external_reason
  fraud_reason
  fraud_status
  idfv
  install_city
  install_country
  install_ip
  install_timestamp
  install_timestamp_unix_utc
  is_view_through
  os_version
  partner
  platform
  publisher_concatenated
  publisher_hashed_id
  publisher_id
  publisher_name
  time_to_install
  touchpoint_campaign
  touchpoint_city
  touchpoint_country
  touchpoint_ip
  touchpoint_timestamp
  touchpoint_timestamp_unix_utc
  unique_install_identifier
Cross-Device User Attributions Data Schema
etl_record_processing_hour_utc
  affiliate_id
  affiliate_name
  android_id
  android_id_md5
  android_sha1
  app_longname
  app_version
  bid_type
  campaign_id
  campaign_name
  click_id
  country
  creative_id
  creative_name
  custom_user_ids
  device_id
  device_id_type
  event_timestamp
  event_timestamp_unix_utc
  gaid
  gaid_md5
  gaid_sha_1
  google_click_id
  idfa
  idfa_md5
  idfa_sha_1
  idfv
  is_view_through
  os_version
  partner
  passthrough
  platform
  publisher_concatenated
  publisher_hashed_id
  publisher_id
  publisher_name
  singular_campaign_name
  singular_partner_name
  state
  store
  sub_campaign_id
  sub_campaign_name
  sub_publisher_id
  sub_publisher_name
  touchpoint_ip
  touchpoint_timestamp
  touchpoint_timestamp_unix_utc
  tracker_name
  waid
Cross-Device Events Data Schema
etl_record_processing_hour_utc
  adjusted_timestamp
  adjusted_timestamp_unix_utc
  affiliate_id
  affiliate_name
  app_longname
  app_version
  arguments
  attribution_event_timestamp
  attribution_event_timestamp_unix_utc
  bid_type
  campaign_id
  campaign_name
  city
  click_id
  converted_currency
  converted_revenue
  country
  creative_id
  creative_name
  currency
  custom_user_id
  device_id
  device_id_type
  install_source
  ip
  is_reengagement
  is_revenue_receipt_included
  is_revenue_valid
  is_view_through
  name
  os_version
  partner
  passthrough
  platform
  product_category
  product_name
  product_price
  product_quantity
  product_sku
  publisher_concatenated
  publisher_hashed_id
  publisher_id
  publisher_name
  received_revenue
  received_revenue_event
  revenue
  server_timestamp
  server_timestamp_unix_utc
  session_id
  singular_campaign_name
  state
  sub_campaign_id
  sub_campaign_name
  sub_publisher_id
  sub_publisher_name
  tag_id
  touchpoint_timestamp
  touchpoint_timestamp_unix_utc
  tracker_name

Appendix: Timestamp Meanings and Formats

Tip: Singular provides several timestamp fields for each row of data. Most timestamp fields have two versions, e.g., "event_timestamp" and "event_timestamp_unix_utc".

  • Fields ending in _timestamp are formatted as a timezone-aware timestamp column in database destinations, and as a timestamp with timezone information for file-based destinations (S3/SFTP/GCS). The timezone is the advertiser's timezone.
  • Fields ending in _timestamp_unix_utc contain the time in UNIX timestamp format (integer) in UTC.
  • Note that BigQuery destinations do not support timezones. All timestamps sent to BigQuery are in UTC.
Timestamp Field Description
etl_record_processing_hour_utc The time in which the data was fully processed by Singular. This may be later than the time of the event or the server timestamp. Every hour, Singular updates this value for data that was fully processed during the previous hour.
Attributions
event_timestamp
event_timestamp_unix_utc
The time in which the attribution event (e.g., the install) happened on the device.
touchpoint_timestamp
touchpoint_timestamp_unix_utc
The time of the touchpoint (ad click or ad impression) that led to the attribution event.
Events
adjusted_timestamp
adjusted_timestamp_unix_utc
The time in which the event actually happened on the device.
server_timestamp
server_timestamp_unix_utc
The time in which the event was received by Singular servers. Note: this may be significantly different from the adjusted_timestamp if there was a technical delay in sending the event data.
attribution_event_timestamp
attribution_event_timestamp_unix_utc
The time in which the attribution event (e.g., the app install) happened on the device.
touchpoint_timestamp
touchpoint_timestamp_unix_utc
The time of the touchpoint (ad click or ad impression) that led to the attribution event.

Changing the Data Schema

Once you create and save the data destination, you cannot switch to another data schema. This is because changing the table structure in a live database with existing data comes with a number of dangers and complications.

If you need a data schema change, simply create a new destination. You can either delete the old table before creating the new destination or configure the new destination to load data to a new table with a different name. This process will ensure that your data stays safe and existing queries and work-loads continue working.