Amplitude Setup Guide

Set up Amplitude as a destination in RudderStack.

This guide will help you set up Amplitude as a destination in the RudderStack dashboard. It also lists the configuration settings required to correctly send data from the supported sources to Amplitude.

Connection compatibility

Destination info
  • Status: Generally Available
  • Supported sources: Android, iOS , Web, Unity, AMP , Cloud, Warehouse, React Native , Flutter, Cordova, Shopify
  • Refer to it as AM in the Integrations object.

Connection modes
SourceCloud modeDevice modeHybrid mode
AMPsupportednot supportednot supported
Androidsupportedsupportednot supported
Cloudsupportednot supportednot supported
Cordovasupportednot supportednot supported
Fluttersupportedsupportednot supported
iOSsupportedsupportednot supported
React Nativesupportedsupportednot supported
Shopifysupportednot supportednot supported
Unitysupportednot supportednot supported
Warehousesupportednot supportednot supported
Websupportedsupportednot supported
Supported message types
SourceIdentifyPageTrackScreenGroupAliasRecord
Cloud mode
Supported sourcessupportedsupportedsupportedsupportedsupportedsupportednot supported
Device mode
Androidsupportednot supportedsupportedsupportednot supportednot supportednot supported
Fluttersupportednot supportedsupportedsupportednot supportednot supportednot supported
iOSsupportednot supportedsupportedsupportednot supportednot supportednot supported
React Nativesupportednot supportedsupportedsupportednot supportednot supportednot supported
Websupportedsupportedsupportednot supportedsupportednot supportednot supported

Setup

  1. In your RudderStack dashboard, set up a source.
  2. Go to the Overview tab of your source and select Add Destination > Create new destination.
Add new destination in RudderStack dashboard
  1. Select Amplitude from the list of destinations. Then, click Continue.

Connection settings

SettingDescription
NameAssign a name to uniquely identify the destination in RudderStack.

You can include suffixes like -prod, -dev, -testing to differentiate connection environments.
API keySpecify your Amplitude project’s API key. You can find it in your Amplitude project’s General tab.
Residency serverChoose your Amplitude residency server from the following options:

  • Standard Server (US)
  • EU Residency server

Configuration settings

Configure the below settings to receive your data correctly in Amplitude.

Page settings

This section lets you configure how RudderStack sends page events to Amplitude.

warning
Check your event volume setup with Amplitude before configuring these settings.

Web device mode

The following settings are applicable when you have connected a source in web device mode:

Setting
Description
Track all pagesToggle on this setting to send all page events to Amplitude as Loaded a page.
Track categorized pagesIf you toggle on this setting and set useNewPageEventNameFormat to true in the integration options, then RudderStack sends events to Amplitude as Viewed {category} Page. Otherwise, it sends the events to Amplitude as Viewed page {category}.
Track named pagesIf you toggle on this setting and set useNewPageEventNameFormat to true in the integration options, then RudderStack sends events to Amplitude as Viewed {name} Page. Otherwise, it sends the events to Amplitude as Viewed page {name}.
warning

If you toggle on more than one of these settings, then RudderStack may send multiple events to Amplitude for a single page event.

For example, if a page category is present and you toggle on both Track all pages and Track categorized pages settings in the dashboard, then RudderStack sends two events to Amplitude for a single page event: Loaded a page and Viewed page {category}.

Mobile device mode

The following settings are applicable when you have connected a source in mobile device mode:

Setting
Description
Track all pagesIf you toggle on this setting and name is present in your screen event properties, then RudderStack sends the event to Amplitude as Viewed {name} Screen. Otherwise, it sends the event as Loaded a Screen.
Track categorized pagesUse this setting to send the screen events to Amplitude as Viewed {category} Screen.
Track named pagesIf you toggle on this setting and name is present in your screen event properties, then RudderStack sends the event to Amplitude as Viewed {name} Screen. If name is absent, RudderStack will not send the event.
warning
If you toggle on more than one of these settings, then RudderStack may send multiple events to Amplitude for a single screen event.

Cloud mode

The following settings are applicable when you have connected a source in cloud mode:

Setting
Description
Use custom page event nameUse this setting to set a specific event name format for your page calls.

See Set custom page event names for more information.
Page event name formatIf Use custom page event name is toggled on, then specify the event name format for your page calls.

For example, Viewed a {{name}}.

Screen settings

info
These settings are applicable when you have connected a source in cloud mode.

This section lets you configure how RudderStack sends screen events to Amplitude.

Setting
Description
Use custom screen event nameUse this setting to set a specific event name format for your screen calls.

See Set custom screen event names for more information.
Screen event name formatIf Use custom screen event name is toggled on, then specify the event name format for your screen calls.

For example, Viewed a {{name}}.

Identify and group settings

This section lets you configure how RudderStack sends identify and group calls to Amplitude.

Group trait settings

Setting
Description
Group name traitSpecify the group type to send as groupType to Amplitude.

Examples of a group type could be: Org ID, Org Name, or Industry.
Group value traitSpecify the group value to send as groupValue to Amplitude.

For example, if you set groupType as industry, then the groupValue parameter can be retail.

Identify trait settings

Setting
Description
Traits to incrementSet the traits to increment in your identify calls. You can input multiple traits by pressing the Enter key after each trait.

RudderStack increments these traits by the numerical value associated with the trait in your identify call.
Traits to set onceSpecify the traits where you want to set values only once—this prevents any overriding of the property value.

You can input multiple traits by pressing the Enter key after each trait.
Traits to appendThis setting lets you append a value or multiple values to a user property array.

Note that:

  • If the specified trait does not have a value set yet, it is initialized to an empty list before the new values are appended.
  • If the trait has an existing value and it is not a list, it is converted into a list with the new value appended.
warning
This setting is not supported in the web device mode.
Traits to prependThis setting lets you prepend a value or multiple values to a user property array.

Note that:

  • If the specified trait does not have a value set yet, it is initialized to an empty list before the new values are prepended.
  • If the trait has an existing value and it is not a list, it is converted into a list with the new value prepended.
warning
This setting is not supported in the web device mode.

Destination settings

The following sections detail the advanced destination-specific settings you can configure in the RudderStack dashboard.

Amplitude IT

Setting
Description
Notes
Secret keySpecify your Amplitude project’s secret key.Secure your secret key if you plan on deleting users for GDPR purposes.
Version nameSet a version name for your page that RudderStack sends to Amplitude for more detailed events.This setting is applicable only for the web device mode.
Map device brandCapture brand, manufacturer, and model information for mobile devices. Amplitude computes device_family as device_family: {device_brand} {device_manufacturer} {device_model}.This setting is applicable only for the mobile device mode.

Ecommerce settings

info
These settings are applicable for sources connected in cloud mode and web device mode
Setting
Description
Track products as single eventUse this setting to track an array of products as a single event. RudderStack passes the event with the original event name and all products as properties.

If you toggle off this setting, each product is tracked as a separate event with the name Product purchased.

info
Use this setting to reduce the number of events sent to Amplitude while still maintaining all the product information within a single event.
Track revenue per productUse this setting to control the revenue tracking granularity. If you toggle on this setting, then RudderStack tracks the revenue of each product in an event individually. Otherwise, the event is sent as an aggregate revenue of all products.

See the following sections for more information on tracking revenue and completed orders in different connection modes:

Other settings

Setting
Description
Client-side Events FilteringThis setting lets you specify which events should be blocked or allowed to flow through to Amplitude.

See Client-side Events Filtering for more information.

info
This setting is only applicable for sources connected in device mode and sending track events. For mobile SDKs, it is applicable for the app lifecycle events.
Consent management settingsConfigure the consent management settings for the specified source by choosing the Consent management provider from the dropdown and entering the relevant consent category IDs.

See Consent Management in RudderStack for more information on this feature.

Amplitude SDK settings

The following settings let you customize the Amplitude SDK when sending events in device mode.

warning
Add the Amplitude SDK to your project before configuring these settings.

JavaScript

Setting
Description
Proxy server URLUse this setting to send data to Amplitude using a domain proxy to relay event requests.

warning
The proxy server URL must be of a secure protocol type (HTTPS). Otherwise, RudderStack drops the proxy domain information and sends the data to Amplitude directly, without using the proxy domain.
Replace device ID with anonymous IDToggle on this setting to use anonymousId instead of the device ID.

Note that RudderStack’s JavaScript SDK generates the anonymousId. To set your own anonymousId, use the setAnonymousId() method.
Disable attributionUse this setting to disable attribution tracking. When toggled on, RudderStack does not track attribution using the GCLID, UTM parameters, and referrer information.
Save referrer, URL params, GCLID only once per sessionWhen toggled on, RudderStack tracks referrer, UTM parameters, and GCLID only once per session and ignores any new values that may enter a user’s session.
Batch event upload period (ms)Set the time limit (in ms) between batch uploads.
Batch event upload thresholdSet the minimum number of events that RudderStack sends in a batch.
warning

With the latest Amplitude SDK updates, the following configuration settings are now removed from the RudderStack dashboard:

  • Force HTTPS
  • Track GCLID
  • Track referrer information
  • Track UTM properties
  • Reset referrer or UTM params for new sessions
  • Batch events prior to upload

For older Amplitude web device mode instrumentations, the above settings will still be applicable. However, you will not be able to modify them. To update these settings, contact RudderStack support.

iOS

Setting
Description
Track session eventsUse this setting to send session start and end events.
Use IDFA for device IDUse this setting to send the iOS IDFA instead of device ID to Amplitude.
Batch event upload period (ms)Set the time limit (in ms) between batch uploads.
Batch event upload thresholdSet the minimum number of events that RudderStack sends in a batch.

Android

Setting
Description
Enable location listeningUse this setting tocapture user location information for anyone who has granted app location permission.
Track session eventsUse this setting to send session start and end events.
Use advertising ID for device IDUse this setting to send the Android Advertising ID instead of device ID to Amplitude.
Batch event upload period (ms)Set the time limit (in ms) between batch uploads.
Batch event upload thresholdSet the minimum number of events that RudderStack sends in a batch.

React Native

Setting
Description
Applicable platform
Track session eventsUse this setting to send session start and end events.iOS and Android
Use IDFA for device IDUse this setting to send the iOS IDFA instead of device ID to Amplitude.iOS
Batch event upload period (ms)Set the time limit (in ms) between batch uploads.iOS and Android
Batch event upload thresholdSet the minimum number of events that RudderStack sends in a batch.iOS and Android
Enable location listeningUse this setting tocapture user location information for anyone who has granted app location permission.Android
Use advertising ID for device IDUse this setting to send the Android Advertising ID instead of device ID to Amplitude.Android

RudderStack SDK settings

You can configure the following settings in your RudderStack SDK while sending events to Amplitude:

Setting
Description
Notes
residencyServerSets the Amplitude server zone.

Default value: AMPServerZone.US
Configurable values are AMPServerZone.US and AMPServerZone.EU.
useBatchApplicable only for the Android SDK, this parameter determines whether to use the batch API.

Default value: true
The value for Batch event upload threshold dashboard setting should be greater than 0.

Next steps



Questions? Contact us by email or on Slack