Amplitude Destination
UpdatedAbout this integration
Amplitude is a platform designed to track events and segment data on websites and mobile applications. With Amplitude, you can analyze user actions to gain valuable insights into the behaviors that drive engagement, retention, and conversion.
We use Amplitude’s v2 API
While we show the schemas that we map data to below, you’ll need to check out Amplitude’s documentation to learn more about their API.
Getting started
Go to the Data Pipelines tab and click Connections.
Click Add New under Destinations.
Select the Amplitude destination.
(Optional) Select the sources that you want to connect to this destination. You can always connect sources to your destination later. We’ll only show you eligible sources.
Configure your destination.
Api Key: Amplitude project API key. You can find this key in the "General" tab of your Amplitude project.
Secret Key: Amplitude project secret key. You can find this key in the "General" tab of your Amplitude project.
Endpoint: The region to send your data.
Click Enable Destination.
Actions
When you’re done setting up your destination, you can go to the Actions tab to see how we map source events to your destination.
Log Event
Default Trigger: type = “track”
Send an event to Amplitude.
- adid string
Default:
Google Play Services advertising ID. (Android)coalesce($.context.device.advertisingId, $.context.device.idfa)
- android_id stringAndroid ID (not the advertising ID). (Android)
- app_version string
Default:
The current version of your application.$.context.app.version
- carrier string
Default:
The carrier that the user is using.$.context.network.carrier
- city string
Default:
The current city of the user.$.context.location.city
- country string
Default:
The current country of the user.$.context.location.country
- device_brand string
Default:
The device brand that the user is using.$.context.device.brand
- device_id string
Default:
A device identifier, like the Identifier for Vendor (IDFV) on iOS. Required unless the request includes acoalesce($.context.device.id, $.anonymousId)
user_id
. - device_manufacturer string
Default:
The device manufacturer that the user is using.$.context.device.manufacturer
- device_model string
Default:
The device model that the user is using.$.context.device.model
- dma stringThe current Designated Market Area of the user.
- event_id integerAn incrementing counter to distinguish events with the same user ID and timestamp from each other. Amplitude recommends you send an event ID, increasing over time, especially if you expect events to occur simultanenously.
- event_type string
Default:
A unique identifier for your event.$.event
- idfa string
Default:
Identifier for Advertiser. (iOS)coalesce($.context.device.advertisingId, $.context.device.idfa)
- idfv string
Default:
Identifier for Vendor. (iOS)$.context.device.id
- insert_id stringAmplitude will deduplicate subsequent events sent with this ID we have already seen before within the past 7 days. Amplitude recommends generating a UUID or using some combination of device ID, user ID, event type, event ID, and time.
- ip string
Default:
The IP address of the user. Use “$remote” to use the IP address on the upload request. Amplitude will use the IP address to reverse lookup a user’s location (city, country, region, and DMA). Amplitude has the ability to drop the location and IP address from events once it reaches our servers. You can submit a request to Amplitude’s platform specialist team here to configure this for you.$.context.ip
- language string
Default:
The language set by the user.$.context.locale
- library string
Default:
The name of the library that generated the event.$.context.library.name
- location_lat number
Default:
The current Latitude of the user.$.context.location.latitude
- location_lng number
Default:
The current Longitude of the user.$.context.location.longitude
- os_name string
Default:
The name of the mobile operating system or browser that the user is using.$.context.os.name
- os_version string
Default:
The version of the mobile operating system or browser the user is using.$.context.os.version
- platform string
Default:
Platform of the device.$.context.device.type
- price number
Default:
The price of the item purchased. Required for revenue data if the revenue field is not sent. You can use negative values to indicate refunds.$.properties.price
- productId string
Default:
An identifier for the item purchased. You must send a price and quantity or revenue with this field.$.properties.productId
-
- price number
Default:
The product’s price.price
- productId string
Default:
The product ID, like a SKU or another value unique to the specific product.productId
- quantity integer
Default:
The quantity of the product in the order.quantity
- revenue number
Default:
Revenue from the product.revenue
- revenueType string
Default:
The type of revenue.revenueType
- quantity integer
Default:
The quantity of the item purchased. Defaults to 1 if not specified.$.properties.quantity
- region string
Default:
The current region of the user.$.context.location.region
- revenue number
Default:
Revenue = price * quantity. If you send all 3 fields of price, quantity, and revenue, then (price * quantity) will be used as the revenue value. You can use negative values to indicate refunds. Note: You will need to explicitly set this if you are using the Amplitude in cloud-mode.$.properties.revenue
- revenueType string
Default:
The type of revenue for the item purchased. You must send a price and quantity or revenue with this field.$.properties.revenueType
- session_id string (datetime)
Default:
The start time of the session, necessary if you want to associate events with a particular system. To use automatic Amplitude session tracking in browsers, enable Analytics 2.0 on your connected source.$.integrations.Actions Amplitude.session_id
- time string (datetime)
Default:
The timestamp of the event. If time is not sent with the event, it will be set to the request upload time.$.timestamp
- user_id string
Default:
A unique identifier for a user. If your call references user ID you haven’t added to Amplitude yet, then the user tied to that ID will not be marked “new” until their first event. Required unless device ID is present.$.userId
- min_id_length integerAmplitude has a default minimum id length of 5 characters for
user_id
anddevice_id
fields. This field allows the minimum to be overridden to allow shorter id lengths. - referrer string
Default:
The referrer of the web request. Sent to Amplitude as both last touch “referrer” and first touch “initial_referrer”$.context.page.referrer
- use_batch_endpoint booleanIf true, events are sent to Amplitude’s
batch
endpoint rather than theirhttpapi
events endpoint. Enabling this setting may help reduce 429s – or throttling errors – from Amplitude. More information about Amplitude’s throttling is available in their docs. - userAgent string
Default:
The user agent of the device sending the event.$.context.userAgent
- userAgentParsing boolean
Default:
Enabling this setting will set the Device manufacturer, Device Model and OS Name properties based on the user agent string provided in the userAgent fieldtrue
-
- utm_campaign string
Default:
$.context.campaign.name
- utm_content string
Default:
$.context.campaign.content
- utm_medium string
Default:
$.context.campaign.medium
- utm_source string
Default:
$.context.campaign.source
- utm_term string
Default:
$.context.campaign.term
Identify User
Default Trigger: type = “identify”
Set the user ID for a particular device ID or update user properties without sending an event to Amplitude.
- app_version string
Default:
Version of the app the user is on.$.context.app.version
- carrier string
Default:
The user’s mobile carrier.$.context.network.carrier
- city string
Default:
The city in which the user is located.$.context.location.city
- country string
Default:
The country in which the user is located.$.context.location.country
- device_brand string
Default:
The brand of user’s the device.$.context.device.brand
- device_id string
Default:
A device identifier, like the Identifier for Vendor (IDFV) on iOS. Required unless the request includes acoalesce($.context.device.id, $.anonymousId)
user_id
. - device_manufacturer string
Default:
The manufacturer of the user’s device.$.context.device.manufacturer
- device_model string
Default:
The model of the user’s device.$.context.device.model
- dma stringThe Designated Market Area in which the user is located.
- insert_id stringAmplitude will deduplicate subsequent events sent with this ID we have already seen before within the past 7 days. Amplitude recommends generating a UUID or using some combination of device ID, user ID, event type, event ID, and time.
- language string
Default:
Language the user has set on their device or browser.$.context.locale
- library string
Default:
The name of the library that generated the event.$.context.library.name
- min_id_length integerAmplitude has a default minimum id length of 5 characters for
user_id`` and
device_id`` fields. This field allows the minimum to be overridden to allow shorter id lengths. - os_name string
Default:
The mobile operating system or browser of the user’s device.$.context.os.name
- os_version string
Default:
The version of the mobile operating system or browser of the user’s device.$.context.os.version
- paying booleanWhether the user is paying or not.
- platform string
Default:
The platform of the user’s device.$.context.device.type
- referrer string
Default:
The referrer of a web request. Sent to Amplitude as both last touch “referrer” and first touch “initial_referrer”$.context.page.referrer
- region string
Default:
The geographical region in which the user is located.$.context.location.region
- start_version stringThe version of the app the user was first on.
- userAgent string
Default:
The user agent of the device sending the event.$.context.userAgent
- userAgentParsing boolean
Default:
Enabling this setting will set the Device manufacturer, Device Model and OS Name properties based on the user agent string provided in the userAgent fieldtrue
- user_id string
Default:
A unique identifier for a user. If your call references user ID you haven’t added to Amplitude yet, then the user tied to that ID will not be marked “new” until their first event. Required unless device ID is present.$.userId
-
- utm_campaign string
Default:
$.context.campaign.name
- utm_content string
Default:
$.context.campaign.content
- utm_medium string
Default:
$.context.campaign.medium
- utm_source string
Default:
$.context.campaign.source
- utm_term string
Default:
$.context.campaign.term
Map User
Default Trigger: type = “alias”
Merge two users together that would otherwise have different User IDs tracked in Amplitude.
- global_user_id string
Default:
The Global User ID to associate with the User ID.$.userId
- min_id_length integerAmplitude has a default minimum id length of 5 characters for
user_id
anddevice_id
fields. This field allows the minimum to be overridden to allow shorter id lengths. - user_id string
Default:
The User ID to be associated.$.previousId
Group Identify User
Default Trigger: type = “group”
Set or update properties of particular groups. Note that these updates will only affect events going forward.
- device_id string
Default:
A device identifier, like the Identifier for Vendor (IDFV) on iOS. Required unless the request includes acoalesce($.context.device.id, $.anonymousId)
user_id
. - group_type stringThe type of the group
- group_value stringThe value of the group
- insert_id stringAmplitude will deduplicate subsequent events sent with this ID we have already seen before within the past 7 days. Amplitude recommends generating a UUID or using some combination of device ID, user ID, event type, event ID, and time.
- min_id_length integerAmplitude has a default minimum id length of 5 characters for
user_id
anddevice_id
fields. This field allows the minimum to be overridden to allow shorter id lengths. - time string
Default:
The timestamp of the event. If time is not sent with the event, it will be set to the request upload time.$.timestamp
- user_id string
Default:
A unique identifier for a user. If your call references user ID you haven’t added to Amplitude yet, then the user tied to that ID will not be marked “new” until their first event. Required unless device ID is present.$.userId
Log Purchase
Default Trigger: type = “track”
Send an event to Amplitude.
- adid string
Default:
Google Play Services advertising ID. (Android)coalesce($.context.device.advertisingId, $.context.device.idfa)
- android_id stringAndroid ID (not the advertising ID). (Android)
- app_version string
Default:
The current version of your application.$.context.app.version
- carrier string
Default:
The carrier that the user is using.$.context.network.carrier
- city string
Default:
The current city of the user.$.context.location.city
- country string
Default:
The current country of the user.$.context.location.country
- device_brand string
Default:
The device brand that the user is using.$.context.device.brand
- device_id string
Default:
A device identifier, like the Identifier for Vendor (IDFV) on iOS. Required unless the request includes acoalesce($.context.device.id, $.anonymousId)
user_id
. - device_manufacturer string
Default:
The device manufacturer that the user is using.$.context.device.manufacturer
- device_model string
Default:
The device model that the user is using.$.context.device.model
- dma stringThe current Designated Market Area of the user.
- event_id integerAn incrementing counter to distinguish events with the same user ID and timestamp from each other. Amplitude recommends you send an event ID, increasing over time, especially if you expect events to occur simultanenously.
- event_type string
Default:
A unique identifier for your event.$.event
- idfa string
Default:
Identifier for Advertiser. (iOS)coalesce($.context.device.advertisingId, $.context.device.idfa)
- idfv string
Default:
Identifier for Vendor. (iOS)$.context.device.id
- insert_id stringAmplitude will deduplicate subsequent events sent with this ID we have already seen before within the past 7 days. Amplitude recommends generating a UUID or using some combination of device ID, user ID, event type, event ID, and time.
- ip string
Default:
The IP address of the user. Use “$remote” to use the IP address on the upload request. Amplitude will use the IP address to reverse lookup a user’s location (city, country, region, and DMA). Amplitude has the ability to drop the location and IP address from events once it reaches our servers. You can submit a request to Amplitude’s platform specialist team here to configure this for you.$.context.ip
- language string
Default:
The language set by the user.$.context.locale
- library string
Default:
The name of the library that generated the event.$.context.library.name
- location_lat number
Default:
The current Latitude of the user.$.context.location.latitude
- location_lng number
Default:
The current Longitude of the user.$.context.location.longitude
- os_name string
Default:
The name of the mobile operating system or browser that the user is using.$.context.os.name
- os_version string
Default:
The version of the mobile operating system or browser the user is using.$.context.os.version
- platform string
Default:
Platform of the device.$.context.device.type
- price number
Default:
The price of the item purchased. Required for revenue data if the revenue field is not sent. You can use negative values to indicate refunds.$.properties.price
- productId string
Default:
An identifier for the item purchased. You must send a price and quantity or revenue with this field.$.properties.productId
-
- price number
Default:
The product’s price.price
- productId string
Default:
The product ID, like a SKU or another value unique to the specific product.productId
- quantity integer
Default:
The quantity of the product in the order.quantity
- revenue number
Default:
Revenue from the product.revenue
- revenueType string
Default:
The type of revenue.revenueType
- quantity integer
Default:
The quantity of the item purchased. Defaults to 1 if not specified.$.properties.quantity
- region string
Default:
The current region of the user.$.context.location.region
- revenue number
Default:
Revenue = price * quantity. If you send all 3 fields of price, quantity, and revenue, then (price * quantity) will be used as the revenue value. You can use negative values to indicate refunds. Note: You will need to explicitly set this if you are using the Amplitude in cloud-mode.$.properties.revenue
- revenueType string
Default:
The type of revenue for the item purchased. You must send a price and quantity or revenue with this field.$.properties.revenueType
- session_id string (datetime)
Default:
The start time of the session, necessary if you want to associate events with a particular system. To use automatic Amplitude session tracking in browsers, enable Analytics 2.0 on your connected source.$.integrations.Actions Amplitude.session_id
- time string (datetime)
Default:
The timestamp of the event. If time is not sent with the event, it will be set to the request upload time.$.timestamp
- user_id string
Default:
A unique identifier for a user. If your call references user ID you haven’t added to Amplitude yet, then the user tied to that ID will not be marked “new” until their first event. Required unless device ID is present.$.userId
- min_id_length integerAmplitude has a default minimum id length of 5 characters for
user_id
anddevice_id
fields. This field allows the minimum to be overridden to allow shorter id lengths. - referrer string
Default:
The referrer of the web request. Sent to Amplitude as both last touch “referrer” and first touch “initial_referrer”$.context.page.referrer
- trackRevenuePerProduct booleanWhen enabled, track revenue with each product within the event. When disabled, track total revenue once for the event.
- use_batch_endpoint booleanIf true, events are sent to Amplitude’s
batch
endpoint rather than theirhttpapi
events endpoint. Enabling this setting may help reduce 429s – or throttling errors – from Amplitude. More information about Amplitude’s throttling is available in their docs. - userAgent string
Default:
The user agent of the device sending the event.$.context.userAgent
- userAgentParsing boolean
Default:
Enabling this setting will set the Device manufacturer, Device Model and OS Name properties based on the user agent string provided in the userAgent fieldtrue
-
- utm_campaign string
Default:
$.context.campaign.name
- utm_content string
Default:
$.context.campaign.content
- utm_medium string
Default:
$.context.campaign.medium
- utm_source string
Default:
$.context.campaign.source
- utm_term string
Default:
$.context.campaign.term
Log Event V2
Default Trigger: type = “track”
Send an event to Amplitude
- adid string
Default:
Google Play Services advertising ID. (Android)coalesce($.context.device.advertisingId, $.context.device.idfa)
- android_id stringAndroid ID (not the advertising ID). (Android)
- app_version string
Default:
The current version of your application.$.context.app.version
- carrier string
Default:
The carrier that the user is using.$.context.network.carrier
- city string
Default:
The current city of the user.$.context.location.city
- country string
Default:
The current country of the user.$.context.location.country
- device_brand string
Default:
The device brand that the user is using.$.context.device.brand
- device_id string
Default:
A device identifier, like the Identifier for Vendor (IDFV) on iOS. Required unless the request includes acoalesce($.context.device.id, $.anonymousId)
user_id
. - device_manufacturer string
Default:
The device manufacturer that the user is using.$.context.device.manufacturer
- device_model string
Default:
The device model that the user is using.$.context.device.model
- dma stringThe current Designated Market Area of the user.
- event_id integerAn incrementing counter to distinguish events with the same user ID and timestamp from each other. Amplitude recommends you send an event ID, increasing over time, especially if you expect events to occur simultanenously.
- event_type string
Default:
A unique identifier for your event.$.event
- idfa string
Default:
Identifier for Advertiser. (iOS)coalesce($.context.device.advertisingId, $.context.device.idfa)
- idfv string
Default:
Identifier for Vendor. (iOS)$.context.device.id
- insert_id stringAmplitude will deduplicate subsequent events sent with this ID we have already seen before within the past 7 days. Amplitude recommends generating a UUID or using some combination of device ID, user ID, event type, event ID, and time.
- ip string
Default:
The IP address of the user. Use “$remote” to use the IP address on the upload request. Amplitude will use the IP address to reverse lookup a user’s location (city, country, region, and DMA). Amplitude has the ability to drop the location and IP address from events once it reaches our servers. You can submit a request to Amplitude’s platform specialist team here to configure this for you.$.context.ip
- language string
Default:
The language set by the user.$.context.locale
- library string
Default:
The name of the library that generated the event.$.context.library.name
- location_lat number
Default:
The current Latitude of the user.$.context.location.latitude
- location_lng number
Default:
The current Longitude of the user.$.context.location.longitude
- os_name string
Default:
The name of the mobile operating system or browser that the user is using.$.context.os.name
- os_version string
Default:
The version of the mobile operating system or browser the user is using.$.context.os.version
- platform string
Default:
Platform of the device.$.context.device.type
- price number
Default:
The price of the item purchased. Required for revenue data if the revenue field is not sent. You can use negative values to indicate refunds.$.properties.price
- productId string
Default:
An identifier for the item purchased. You must send a price and quantity or revenue with this field.$.properties.productId
-
- price number
Default:
The product’s price.price
- productId string
Default:
The product ID, like a SKU or another value unique to the specific product.productId
- quantity integer
Default:
The quantity of the product in the order.quantity
- revenue number
Default:
Revenue from the product.revenue
- revenueType string
Default:
The type of revenue.revenueType
- quantity integer
Default:
The quantity of the item purchased. Defaults to 1 if not specified.$.properties.quantity
- region string
Default:
The current region of the user.$.context.location.region
- revenue number
Default:
Revenue = price * quantity. If you send all 3 fields of price, quantity, and revenue, then (price * quantity) will be used as the revenue value. You can use negative values to indicate refunds. Note: You will need to explicitly set this if you are using the Amplitude in cloud-mode.$.properties.revenue
- revenueType string
Default:
The type of revenue for the item purchased. You must send a price and quantity or revenue with this field.$.properties.revenueType
- session_id string (datetime)
Default:
The start time of the session, necessary if you want to associate events with a particular system. To use automatic Amplitude session tracking in browsers, enable Analytics 2.0 on your connected source.$.integrations.Actions Amplitude.session_id
- time string (datetime)
Default:
The timestamp of the event. If time is not sent with the event, it will be set to the request upload time.$.timestamp
- user_id string
Default:
A unique identifier for a user. If your call references user ID you haven’t added to Amplitude yet, then the user tied to that ID will not be marked “new” until their first event. Required unless device ID is present.$.userId
- min_id_length integerAmplitude has a default minimum id length of 5 characters for
user_id
anddevice_id
fields. This field allows the minimum to be overridden to allow shorter id lengths. -
- initial_referrer string
Default:
Referrer url$.context.page.referrer
- utm_campaign string
Default:
$.context.campaign.name
- utm_content string
Default:
$.context.campaign.content
- utm_medium string
Default:
$.context.campaign.medium
- utm_source string
Default:
$.context.campaign.source
- utm_term string
Default:
$.context.campaign.term
-
- initial_referrer string
Default:
Referrer url$.context.page.referrer
- utm_campaign string
Default:
$.context.campaign.name
- utm_content string
Default:
$.context.campaign.content
- utm_medium string
Default:
$.context.campaign.medium
- utm_source string
Default:
$.context.campaign.source
- utm_term string
Default:
$.context.campaign.term
- use_batch_endpoint booleanIf true, events are sent to Amplitude’s
batch
endpoint rather than theirhttpapi
events endpoint. Enabling this setting may help reduce 429s – or throttling errors – from Amplitude. More information about Amplitude’s throttling is available in their docs. - userAgent string
Default:
The user agent of the device sending the event.$.context.userAgent
- userAgentParsing boolean
Default:
Enabling this setting will set the Device manufacturer, Device Model and OS Name properties based on the user agent string provided in the userAgent field.true