Troubleshoot the Event API

Troubleshooting steps when sending event data to Optimizely.

I sent events via the API, but they are not showing up on the Results page.

  • Experiment was/is not running
    • Make sure the experiment is running and the events have timestamps within the bounds of the running experiment.
  • Event payload was malformed
    • Inspect the payload to verify that all required identifiers are properly set to conform with the API's Reference. If the API returns with a 204 Response code, it means that the Optimizely Logging Service has received and persisted in the payload. This response code is not an indication that the event payload has been validated.
  • Event had one or more incorrect or missing identifiers
    • Inspect the payload and verify that all required identifiers are properly set.
  • Event was missing a decision
    • When activating users, verify that you sent a decision event and that the decision event had an earlier timestamp than the conversion events. Read How Optimizely counts conversions for more information.
  • Decision was sent but not attributed to the correct event campaign_id
    • When activating users, make sure the entity_id matches the campaign_id for the variation the user was assigned to.
  • Event had an incorrect or out-of-bounds timestamp
    • When activating and tracking users, make sure timestamps have the correct format (a 13-digit integer, representing time since epoch in milliseconds) and are within bounds of the running experiment.

I sent events with revenue values via the API, but the revenue is not calculated correctly on the Results page.

  • Revenue is missing from event payload
    • Make sure revenue is present under the correct conversion event.
  • Revenue has incorrect value
    • Make sure revenue has an integer value and represents the revenue in cents.

I sent events via the API and I see some results but I did not get the expected values.

  • Duplicate events are sent
    • Optimizely detects events that have the same entity_id, uuid and timestamp and saves only one of them. Make sure each event is using a unique uuid or timestamp before sending.
  • Events have out-of-bounds timestamps
    • Make sure timestamps have the correct format (a 13-digit integer, representing time since epoch in milliseconds) and are within bounds of the running experiment.
  • Conversion events have timestamps older than the decision event's timestamp
    • Make sure the conversion events have timestamp values that are equal to or more recent than the related decision event's timestamp.

Additional resources


Did this page help you?