Issue
You may experience an intermittent issue where specific events successfully land in Segment but fail to reach your Iterable destination. When reviewing the Delivery Overview or Event Delivery tabs in the Segment Console, these events do not appear as failures, and no error messages are generated to explain why the data is missing in Iterable.
Product
Segment
Environment
Segment Console
Cause
For the classic Iterable integration, identifying a user by userId is perfectly valid for existing users. However, for email-based Iterable projects, the first event sent for a new user must include an email address so Iterable can create the user profile.
If Segment sends an event to Iterable with only a userId and no email for a brand-new user, Iterable's API accepts the request and returns a successful 200 OK response to Segment, but silently discards the event on their end because they cannot create the profile. Because Segment receives a success response, these events are categorized as "Successful Deliveries" in the Segment Console, masking the underlying rejection.
Resolution
To resolve this issue and ensure events are successfully processed by Iterable for new users, follow these steps:
- Identify the specific tracking calls (e.g., Track or Identify events) that are intermittently failing to appear in Iterable.
- Review your instrumentation and backend code for those specific events.
- Ensure the email property is consistently populated and passed in the payload alongside the userId, particularly for events that might trigger for brand-new users.
- Alternatively, ensure an Identify call containing both the userId and email is sent to Segment prior to sending any subsequent Track events for new users.
Additional Information
Iterable enforces strict key naming conventions for user identification. You must send the email parameter to Segment exactly as email. Passing the email value using variations like customer_email, user_email, or mail will cause Iterable to silently reject the payload.