Troubleshooting the Segment / Amplitude integration

  • Updated

This article will describe how you can troubleshoot issues with seeing new event types or properties in Amplitude. This is often caused by one of the following issues: 

  • Your project has reached the instrumentation limit
  • The event type/property has been blocked or deleted in the Amplitude project.
  • There was no 200 Status Code returned for the request by Amplitude. 

Validate the events sent by Segment in Amplitude 

There are two ways for sending data from Segment to Amplitude:

  • Cloud mode (server-side integration)
  • Device mode (bundled - using the Amplitude SDKs)

Cloud mode

When the data is sent using cloud mode, all data is coming server-side through Segment (Segment uses the HTTP API to send data to Amplitude).

Screen_Shot_2020-06-16_at_19.58.46.png

In order for the events to show up in Amplitude, they must also be available in Segment, and the response code from Amplitude should be a 200 status code.

To ensure the event data is going through as expected:

  1. Set up a test user for triggering events in your app
  2. Use the Segment Debugger to check for the events in Segment
  3. After there is a 200 status code in Segment, you can then validate this data in Amplitude 

Device mode

However, when the data is sent using device mode, the data is sent from the client side, to both Segment and Amplitude.

Screen_Shot_2020-06-16_at_20.04.07.png

To ensure if the event data is going through as expected:

  1. Set up a test user for triggering events in your app
  2. Use the Segment Debugger to check for the events in Segment
  3. For web applications, check the browser's network activity to find the 200 Status Code of the request. You can also use the Amplitude Instrumentation Debugger extension available for Chrome. 

If the events are batched and the event upload threshold is too high or too long, this could also cause client-side events to go missing. In this case, the events might be sent to Amplitude with a delay.