Amplitude integration summary

Stitch’s Amplitude integration relies on the Amplitude Query product add-on, which utilizes a Snowflake database to store data.

Amplitude integrations can replicate event and merged user ID data. Refer to the Schema section for more info.

Amplitude feature snapshot

A high-level look at Stitch's Amplitude (v1) integration, including release status, useful links, and the features supported in Stitch.

STITCH
Release status

Released on August 29, 2018

Supported by

Singer Community

Stitch plan

Standard

API availability

Available

Singer GitHub repository

singer-io/tap-amplitude

REPLICATION SETTINGS
Anchor Scheduling

Supported

Advanced Scheduling

Supported

Table-level reset

Unsupported

Configurable Replication Methods

Unsupported

DATA SELECTION
Table selection

Supported

Column selection

Supported

Select all

Supported

TRANSPARENCY
Extraction Logs

Supported

Loading Reports

Supported

Connecting Amplitude

Amplitude setup requirements

To set up Amplitude in Stitch, you need:

  • To be on an Amplitude Enterprise or Growth plan. Amplitude requires this to access the Query product add-on.

  • To have purchased the Amplitude Query product add-on. Query is an Amplitude-managed Snowflake database, which Stitch’s integration replicates data from.


Step 1: Retrieve your Snowflake credentials

Stitch’s Amplitude integration connects to your Amplitude-managed Snowflake database to replicate data.

To connect Stitch to Amplitude, you’ll need to retrieve your Snowflake credentials from Amplitude. Reach out to Amplitude support or your Amplitude Success Manager to get your credentials.

When you receive your credentials, you can move onto the next step.

Step 2: Add Amplitude as a Stitch data source

  1. Sign into your Stitch account.
  2. On the Stitch Dashboard page, click the Add Integration button.

  3. Click the Amplitude icon.

  4. Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.

    For example, the name “Stitch Amplitude” would create a schema called stitch_amplitude in the destination. Note: Schema names cannot be changed after you save the integration.

  5. In the Amplitude Snowflake Username field, enter your Snowflake username.
  6. In the Amplitude Snowflake Password field, enter the Snowflake user’s password.
  7. In the Amplitude Snowflake Account field, enter the Snowflake account.
  8. In the Amplitude Snowflake Warehouse field, enter the name of the Snowflake warehouse.
  9. In the Amplitude Snowflake Database field, enter the name of the Snowflake database.

Step 3: Create a replication schedule

In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.

Amplitude integrations support the following replication scheduling methods:

To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.

Initial and historical replication jobs

After you finish setting up Amplitude, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.

For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.

Free historical data loads

The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.


Amplitude table reference

Stitch’s Amplitude replicates two types of tables: Events and merged user IDs.

For each project in your Amplitude account, a set of these tables will be available for replication. Stitch will append a project’s ID to each table name to make them easily identifiable. For example: If a project has an ID of 168342, the events table for the project will be named events_168432.

You can identify which tables are for a specific project by comparing the ID in the table name to the projects in your Amplitude account. You can access this page in your Amplitude account by clicking the User menu (top right corner) > Settings > Projects.

Highlighted project ID field in the Amplitude UI


events

events_[project_id] tables contain info about the events logged in your Amplitude projects.

Note: Each event table will have the project ID appended. For example: If a project has an ID of 168342, the events table for the project will be named events_168432.

Replication Method

Key-based Incremental

Primary Key

uuid

Replication Key

event_time

Useful links

Amplitude documentation

adid

STRING

amplitude_event_type

STRING

amplitude_id

NUMBER

app

NUMBER

city

STRING

client_event_time

DATE-TIME

client_upload_time

DATE-TIME

country

STRING

data

STRING

device_brand

STRING

device_carrier

STRING

device_family

STRING

device_id

STRING

device_manufacturer

STRING

device_model

STRING

device_type

STRING

dma

STRING

event_id

NUMBER

event_properties

STRING

event_time

DATE-TIME

event_type

STRING

followed_an_identity

BOOLEAN

groups

STRING

idfa

STRING

ip_address

STRING

location_lat

NUMBER

location_lng

NUMBER

os_name

STRING

os_version

STRING

paying

STRING

region

STRING

server_upload_time

DATE-TIME

session_id

NUMBER

start_version

STRING

user_creation_time

DATE-TIME

user_id

STRING

user_properties

STRING

uuid

STRING

version_name

STRING

merge_ids

merge_ids_[project_id] tables contain info about merged users. These are users whose records have been merged with other user records to eliminate duplicates.

For example: If an anonymous user logs events anonymously before signing in, they will go from being anonymous to a recognized user. Without merging the user’s records, it’ll look like two users with two sets of events, rather than one user completing a series of events.

For more info on how Amplitude handles merging users, refer to their documentation.

Note: Each table will have the project ID appended. For example: If a project has an ID of 168342, the merged ID table for the project will be named merge_ids_168432.

Replication Method

Key-based Incremental

Primary Keys

amplitude_id

merge_server_time

merged_amplitude_id

merge_event_time

Replication Key

merge_event_time

Useful links

Amplitude documentation

amplitude_id

NUMBER

merge_event_time

DATE-TIME

merge_server_time

DATE-TIME

merged_amplitude_id

NUMBER


Questions? Feedback?

Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.