This article covers some frequently asked questions about Segment integration in Amplitude.
Before you consider an event missing from Amplitude, remember that if the event is not in Segment then it will not be in Amplitude. Also, make sure that your requests from Segment received a successful response before considering an event missing. Once you make sure that the event is in Segment and got a successful response, here are the first 3 things you should confirm: Has Amplitude been enabled as a destination? Amplitude must be explicitly added as an integration for each source in your Segment instance: Has the correct API Key been inputted? Double-check the Amplitude API Key value in project settings in your Amplitude UI to make sure the correct one is used in Segment. Is the syntax correct? Sometimes it is not obvious that there are instrumentation errors, so always double-check the code for syntax errors (Browser’s ‘Console’ tab can be helpful): After going through the above steps and confirming those requirements are correct, send data to Amplitude by calling Why am I not seeing any data in Amplitude?
track
. Data will be visible after you track your first event.
If you went over the limit, any data sent after that will not be ingested. If you want to ingest more event types you have to delete events to get back under the limit.Are you over the event-type instrumentation limit?
Check your deleted/blocked events. Deleting event types also blocks all future instances of events with the same name. If you send any data to a deleted or blocked event name in Amplitude it won't come through.Is the event Deleted/blocked from Amplitude?
Check your Debugger tab to see if there are any errors. If there are no instances of the missing event in the Debugger, try to send a test event of that event type. If the event never comes through to Segment in the first place, then it won't show up in Amplitude. Are there any Errors in Segment's debugger?
For track calls, you can choose to only send certain events to certain integrations. So double-check if the event is sending and that Amplitude is enabled. You can also enable/disable specific integrations directly in the instrumentation code, so check that Amplitude isn't disabled in the actual code. For page/screen calls, there's no way to see all the individual names of the pages but you can see from the activity if page calls are being received by Segment. You can also check the raw JSON of the requests to verify if the Amplitude integration has been turned off:
Does the event exist in Segment?
This article explains the difference between the two types of properties. What is the difference between an event property and a user property?
In order to send user properties via Segment, you would have to call Why do I not see any user properties or only [Amplitude] user properties?
identify
and include your user properties in the traits
field. You can read more about an identify
call in the Segment documentation.
If you went over the limit, then that may be why you are missing properties in Amplitude. Any data sent after you are over the limit will not be ingested. You will need to delete the properties to get back under the limit to ingest new properties.
Are you over the event property type instrumentation limit?
Check your deleted/blocked properties. Deleting properties also blocks all future instances of properties with the same name. If you attempt to send any data to Amplitude with the deleted or block property name, it won't come through. Is the property deleted/blocked from Amplitude?
If you don't see it in Segment, you won't see it in Amplitude. Check your Segment's debugger to make sure that the property appeared in Segment first.
Did the property come through in the raw payload to Segment?
Check your tracked properties and make sure they exist in Segment.
Does the property exist in Segment's schema?
Sometimes it is not obvious that there are instrumentation errors, so always double-check the code for syntax errors (Browser’s ‘Console’ tab can be helpful): See Segment's specs here on the best way to format your data. Amplitude also has a limit of 1024 characters, so if the property value is too long, this might be the reason why it is not showing up in Amplitude.
Spot any syntax code errors/other instrumentation errors?
Amplitude attempts to determine the user's location from their IP address, if available. This may be different from the location information recorded by Segment.Why is the location information (city and/or country) from Segment's data different from the location information in Amplitude's data?
A session is defined as a period of time that the user has the application open in the foreground. If session tracking is available, events logged within the same session will have the same session ID. A new session is started if the application enters the foreground after being in the background or closed for more than five minutes.What is the definition of a session?
If you are using the Amplitude Classic integration in Cloud mode, Segment does not provide session tracking by default, so you will see Session ID = -1 in Amplitude. Segment doesn’t have a concept for a session. You will have to pass in the sessionId for your server-side calls from Segment to Amplitude see details here. If you use Segment's client-side bundled integration it will use Amplitude's native SDKs. They will track Session IDs for you here are the options from Segment:Why do all of my events have a
sessionId
of -1?
See the previous answer.Why are there no session length calculations in Amplitude Dashboard?
Segment SDK might not have all the APIs provided by the Amplitude SDK; however, you can still access features by directly calling Amplitude's SDKs.What if their SDK doesn’t support feature X? [device-mode]
Submit a Support ticket with the following details: Lastly, share the raw data for an event that should've been in Amplitude, but is missing. We need a full payload of the event, including the endpoint used, header, body, etc.
Still have questions?
Thanks for your feedback!
October 29th, 2024
Need help? Contact Support
Visit Amplitude.com
Have a look at the Amplitude Blog
Learn more at Amplitude Academy
© 2024 Amplitude, Inc. All rights reserved. Amplitude is a registered trademark of Amplitude, Inc.