Data Destinations: User-Level Data Schemas

Before you set up data destinations to load user-level data into your database or platform, learn about the different data schemas that are available.

 

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 four different data schemas you can choose from. Each schema defines a different set of dimensions and metrics that the Singular data destination will load into your database. Use the table below to help you choose the data schema that best fits your needs.

Data Schema Options

Note: The fields in these schemas are the same fields Singular offers when you download logs from the attribution tracker. For more information about each field, see Exporting Attribution Logs. To learn about the different timestamp fields, see Timestamp Meanings and Formats below.

Fields included in the "Attributions" Schema
Fields included in the "Events" Schema
etl_record_processing_hour_utc
device_id
device_id_type
platform
event_timestamp
event_timestamp_unix_utc
is_fingerprinted
is_reengagement
is_view_through
method
app_longname
app_version
city
country
custom_user_ids
os_version
state
store
device_make
device_model
gaid
gaid_md5
gaid_sha_1
idfa
idfa_md5
idfa_sha_1
waid
idfv
android_id
android_id_md5
android_sha1
touchpoint_timestamp
touchpoint_timestamp_unix_utc
touchpoint_ip
passthrough
partner
singular_partner_name
affiliate_id
affiliate_name
bid_type
campaign_id
campaign_name
click_id
creative_id
creative_name
publisher_concatenated
publisher_hashed_id
publisher_id
publisher_name
sub_campaign_id
sub_campaign_name
sub_publisher_id
sub_publisher_name
singular_campaign_name
tracker_name
fraud_reason
fraud_status
google_click_id
etl_record_processing_hour_utc
device_id
device_id_type
platform
adjusted_timestamp
adjusted_timestamp_unix_utc
app_longname
app_version
arguments
converted_currency
converted_revenue
currency
custom_user_id
name
os_version
ip
product_category
product_name
product_price
product_quantity
product_sku
revenue
server_timestamp
server_timestamp_unix_utc
session_id
attribution_event_timestamp
attribution_event_timestamp_unix_utc
is_fingerprinted
is_reengagement
is_view_through
city
country
install_source
state
touchpoint_timestamp
touchpoint_timestamp_unix_utc
tag_id
passthrough
partner
affiliate_id
affiliate_name
bid_type
campaign_id
campaign_name
click_id
creative_id
creative_name
publisher_concatenated
publisher_hashed_id
publisher_id
publisher_name
sub_campaign_id
sub_campaign_name
sub_publisher_id
sub_publisher_name
singular_campaign_name
tracker_name
received_revenue
received_revenue_event
is_revenue_receipt_included
is_revenue_valid

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).
  • Fields ending in _timestamp_unix_utc contain the time in UNIX timestamp format (integer) 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.

 

Was this article helpful?