Amplitude Destination

About 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

  1. Go to the Data Pipelines tab and click Connections.

  2. Click Add New under Destinations.

  3. Select the Amplitude destination.

  4. (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.

  5. Configure your destination.

    1. Api Key: Amplitude project API key. You can find this key in the "General" tab of your Amplitude project.

    2. Secret Key: Amplitude project secret key. You can find this key in the "General" tab of your Amplitude project.

    3. Endpoint: The region to send your data.

    Setup your destination
    Setup your destination

  6. 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.

The actions for your destination
The actions for your destination

Log Event

Default Trigger: type = “track”

Send an event to Amplitude.

  • adid string

    Default: coalesce($.context.device.advertisingId, $.context.device.idfa)

    Google Play Services advertising ID. (Android)
  • android_id string
    Android ID (not the advertising ID). (Android)
  • app_version string

    Default: $.context.app.version

    The current version of your application.
  • carrier string

    Default: $.context.network.carrier

    The carrier that the user is using.
  • city string

    Default: $.context.location.city

    The current city of the user.
  • country string

    Default: $.context.location.country

    The current country of the user.
  • device_brand string

    Default: $.context.device.brand

    The device brand that the user is using.
  • device_id string

    Default: coalesce($.context.device.id, $.anonymousId)

    A device identifier, like the Identifier for Vendor (IDFV) on iOS. Required unless the request includes a user_id.
  • device_manufacturer string

    Default: $.context.device.manufacturer

    The device manufacturer that the user is using.
  • device_model string

    Default: $.context.device.model

    The device model that the user is using.
  • dma string
    The current Designated Market Area of the user.
  • event_id integer
    An 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: $.event

    A unique identifier for your event.
  • idfa string

    Default: coalesce($.context.device.advertisingId, $.context.device.idfa)

    Identifier for Advertiser. (iOS)
  • idfv string

    Default: $.context.device.id

    Identifier for Vendor. (iOS)
  • insert_id string
    Amplitude 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: $.context.ip

    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.
  • language string

    Default: $.context.locale

    The language set by the user.
  • library string

    Default: $.context.library.name

    The name of the library that generated the event.
  • location_lat number

    Default: $.context.location.latitude

    The current Latitude of the user.
  • location_lng number

    Default: $.context.location.longitude

    The current Longitude of the user.
  • os_name string

    Default: $.context.os.name

    The name of the mobile operating system or browser that the user is using.
  • os_version string

    Default: $.context.os.version

    The version of the mobile operating system or browser the user is using.
  • platform string

    Default: $.context.device.type

    Platform of the device.
  • price number

    Default: $.properties.price

    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.
  • productId string

    Default: $.properties.productId

    An identifier for the item purchased. You must send a price and quantity or revenue with this field.
    • price number

      Default: price

      The product’s price.
    • productId string

      Default: productId

      The product ID, like a SKU or another value unique to the specific product.
    • quantity integer

      Default: quantity

      The quantity of the product in the order.
    • revenue number

      Default: revenue

      Revenue from the product.
    • revenueType string

      Default: revenueType

      The type of revenue.
  • quantity integer

    Default: $.properties.quantity

    The quantity of the item purchased. Defaults to 1 if not specified.
  • region string

    Default: $.context.location.region

    The current region of the user.
  • revenue number

    Default: $.properties.revenue

    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.
  • revenueType string

    Default: $.properties.revenueType

    The type of revenue for the item purchased. You must send a price and quantity or revenue with this field.
  • session_id string  (datetime)

    Default: $.integrations.Actions Amplitude.session_id

    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.
  • time string  (datetime)

    Default: $.timestamp

    The timestamp of the event. If time is not sent with the event, it will be set to the request upload time.
  • user_id string

    Default: $.userId

    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.
  • min_id_length integer
    Amplitude 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.
  • referrer string

    Default: $.context.page.referrer

    The referrer of the web request. Sent to Amplitude as both last touch “referrer” and first touch “initial_referrer”
  • use_batch_endpoint boolean
    If true, events are sent to Amplitude’s batch endpoint rather than their httpapi 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: $.context.userAgent

    The user agent of the device sending the event.
  • userAgentParsing boolean

    Default: true

    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
    • 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: $.context.app.version

    Version of the app the user is on.
  • carrier string

    Default: $.context.network.carrier

    The user’s mobile carrier.
  • city string

    Default: $.context.location.city

    The city in which the user is located.
  • country string

    Default: $.context.location.country

    The country in which the user is located.
  • device_brand string

    Default: $.context.device.brand

    The brand of user’s the device.
  • device_id string

    Default: coalesce($.context.device.id, $.anonymousId)

    A device identifier, like the Identifier for Vendor (IDFV) on iOS. Required unless the request includes a user_id.
  • device_manufacturer string

    Default: $.context.device.manufacturer

    The manufacturer of the user’s device.
  • device_model string

    Default: $.context.device.model

    The model of the user’s device.
  • dma string
    The Designated Market Area in which the user is located.
  • insert_id string
    Amplitude 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: $.context.locale

    Language the user has set on their device or browser.
  • library string

    Default: $.context.library.name

    The name of the library that generated the event.
  • min_id_length integer
    Amplitude 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: $.context.os.name

    The mobile operating system or browser of the user’s device.
  • os_version string

    Default: $.context.os.version

    The version of the mobile operating system or browser of the user’s device.
  • paying boolean
    Whether the user is paying or not.
  • platform string

    Default: $.context.device.type

    The platform of the user’s device.
  • referrer string

    Default: $.context.page.referrer

    The referrer of a web request. Sent to Amplitude as both last touch “referrer” and first touch “initial_referrer”
  • region string

    Default: $.context.location.region

    The geographical region in which the user is located.
  • start_version string
    The version of the app the user was first on.
  • userAgent string

    Default: $.context.userAgent

    The user agent of the device sending the event.
  • userAgentParsing boolean

    Default: true

    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
  • user_id string

    Default: $.userId

    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.
    • 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: $.userId

    The Global User ID to associate with the User ID.
  • min_id_length integer
    Amplitude 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.
  • user_id string

    Default: $.previousId

    The User ID to be associated.

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: coalesce($.context.device.id, $.anonymousId)

    A device identifier, like the Identifier for Vendor (IDFV) on iOS. Required unless the request includes a user_id.
  • group_type string
    The type of the group
  • group_value string
    The value of the group
  • insert_id string
    Amplitude 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 integer
    Amplitude 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.
  • time string

    Default: $.timestamp

    The timestamp of the event. If time is not sent with the event, it will be set to the request upload time.
  • user_id string

    Default: $.userId

    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.

Log Purchase

Default Trigger: type = “track”

Send an event to Amplitude.

  • adid string

    Default: coalesce($.context.device.advertisingId, $.context.device.idfa)

    Google Play Services advertising ID. (Android)
  • android_id string
    Android ID (not the advertising ID). (Android)
  • app_version string

    Default: $.context.app.version

    The current version of your application.
  • carrier string

    Default: $.context.network.carrier

    The carrier that the user is using.
  • city string

    Default: $.context.location.city

    The current city of the user.
  • country string

    Default: $.context.location.country

    The current country of the user.
  • device_brand string

    Default: $.context.device.brand

    The device brand that the user is using.
  • device_id string

    Default: coalesce($.context.device.id, $.anonymousId)

    A device identifier, like the Identifier for Vendor (IDFV) on iOS. Required unless the request includes a user_id.
  • device_manufacturer string

    Default: $.context.device.manufacturer

    The device manufacturer that the user is using.
  • device_model string

    Default: $.context.device.model

    The device model that the user is using.
  • dma string
    The current Designated Market Area of the user.
  • event_id integer
    An 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: $.event

    A unique identifier for your event.
  • idfa string

    Default: coalesce($.context.device.advertisingId, $.context.device.idfa)

    Identifier for Advertiser. (iOS)
  • idfv string

    Default: $.context.device.id

    Identifier for Vendor. (iOS)
  • insert_id string
    Amplitude 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: $.context.ip

    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.
  • language string

    Default: $.context.locale

    The language set by the user.
  • library string

    Default: $.context.library.name

    The name of the library that generated the event.
  • location_lat number

    Default: $.context.location.latitude

    The current Latitude of the user.
  • location_lng number

    Default: $.context.location.longitude

    The current Longitude of the user.
  • os_name string

    Default: $.context.os.name

    The name of the mobile operating system or browser that the user is using.
  • os_version string

    Default: $.context.os.version

    The version of the mobile operating system or browser the user is using.
  • platform string

    Default: $.context.device.type

    Platform of the device.
  • price number

    Default: $.properties.price

    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.
  • productId string

    Default: $.properties.productId

    An identifier for the item purchased. You must send a price and quantity or revenue with this field.
    • price number

      Default: price

      The product’s price.
    • productId string

      Default: productId

      The product ID, like a SKU or another value unique to the specific product.
    • quantity integer

      Default: quantity

      The quantity of the product in the order.
    • revenue number

      Default: revenue

      Revenue from the product.
    • revenueType string

      Default: revenueType

      The type of revenue.
  • quantity integer

    Default: $.properties.quantity

    The quantity of the item purchased. Defaults to 1 if not specified.
  • region string

    Default: $.context.location.region

    The current region of the user.
  • revenue number

    Default: $.properties.revenue

    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.
  • revenueType string

    Default: $.properties.revenueType

    The type of revenue for the item purchased. You must send a price and quantity or revenue with this field.
  • session_id string  (datetime)

    Default: $.integrations.Actions Amplitude.session_id

    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.
  • time string  (datetime)

    Default: $.timestamp

    The timestamp of the event. If time is not sent with the event, it will be set to the request upload time.
  • user_id string

    Default: $.userId

    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.
  • min_id_length integer
    Amplitude 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.
  • referrer string

    Default: $.context.page.referrer

    The referrer of the web request. Sent to Amplitude as both last touch “referrer” and first touch “initial_referrer”
  • trackRevenuePerProduct boolean
    When enabled, track revenue with each product within the event. When disabled, track total revenue once for the event.
  • use_batch_endpoint boolean
    If true, events are sent to Amplitude’s batch endpoint rather than their httpapi 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: $.context.userAgent

    The user agent of the device sending the event.
  • userAgentParsing boolean

    Default: true

    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
    • 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: coalesce($.context.device.advertisingId, $.context.device.idfa)

    Google Play Services advertising ID. (Android)
  • android_id string
    Android ID (not the advertising ID). (Android)
  • app_version string

    Default: $.context.app.version

    The current version of your application.
  • carrier string

    Default: $.context.network.carrier

    The carrier that the user is using.
  • city string

    Default: $.context.location.city

    The current city of the user.
  • country string

    Default: $.context.location.country

    The current country of the user.
  • device_brand string

    Default: $.context.device.brand

    The device brand that the user is using.
  • device_id string

    Default: coalesce($.context.device.id, $.anonymousId)

    A device identifier, like the Identifier for Vendor (IDFV) on iOS. Required unless the request includes a user_id.
  • device_manufacturer string

    Default: $.context.device.manufacturer

    The device manufacturer that the user is using.
  • device_model string

    Default: $.context.device.model

    The device model that the user is using.
  • dma string
    The current Designated Market Area of the user.
  • event_id integer
    An 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: $.event

    A unique identifier for your event.
  • idfa string

    Default: coalesce($.context.device.advertisingId, $.context.device.idfa)

    Identifier for Advertiser. (iOS)
  • idfv string

    Default: $.context.device.id

    Identifier for Vendor. (iOS)
  • insert_id string
    Amplitude 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: $.context.ip

    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.
  • language string

    Default: $.context.locale

    The language set by the user.
  • library string

    Default: $.context.library.name

    The name of the library that generated the event.
  • location_lat number

    Default: $.context.location.latitude

    The current Latitude of the user.
  • location_lng number

    Default: $.context.location.longitude

    The current Longitude of the user.
  • os_name string

    Default: $.context.os.name

    The name of the mobile operating system or browser that the user is using.
  • os_version string

    Default: $.context.os.version

    The version of the mobile operating system or browser the user is using.
  • platform string

    Default: $.context.device.type

    Platform of the device.
  • price number

    Default: $.properties.price

    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.
  • productId string

    Default: $.properties.productId

    An identifier for the item purchased. You must send a price and quantity or revenue with this field.
    • price number

      Default: price

      The product’s price.
    • productId string

      Default: productId

      The product ID, like a SKU or another value unique to the specific product.
    • quantity integer

      Default: quantity

      The quantity of the product in the order.
    • revenue number

      Default: revenue

      Revenue from the product.
    • revenueType string

      Default: revenueType

      The type of revenue.
  • quantity integer

    Default: $.properties.quantity

    The quantity of the item purchased. Defaults to 1 if not specified.
  • region string

    Default: $.context.location.region

    The current region of the user.
  • revenue number

    Default: $.properties.revenue

    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.
  • revenueType string

    Default: $.properties.revenueType

    The type of revenue for the item purchased. You must send a price and quantity or revenue with this field.
  • session_id string  (datetime)

    Default: $.integrations.Actions Amplitude.session_id

    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.
  • time string  (datetime)

    Default: $.timestamp

    The timestamp of the event. If time is not sent with the event, it will be set to the request upload time.
  • user_id string

    Default: $.userId

    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.
  • min_id_length integer
    Amplitude 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.
  Contents
Is this page helpful?