Read Audience Journey not working as expected | Community
Skip to main content
LuisCardenas
Level 2
July 8, 2026
Solved

Read Audience Journey not working as expected

  • July 8, 2026
  • 3 replies
  • 36 views

Hi everyone,

I'm investigating a behavior with Read Audience activities in Adobe Journey Optimizer and would like to know if anyone has experienced something similar.

Scenario

  • A profile meets the audience qualification conditions.

  • The profile qualifies for the audience (confirmed in both Monitoring and Profile Snapshot Export).

  • Batch audience evaluation runs daily at 18:00 UTC.

  • The journey is configured with:

    • Read Audience as the entry activity.

    • Scheduled daily.

    • Trigger after batch audience evaluation.

    • 5-hour time window.

Issue #1

Journey A is scheduled to start at 21:00 UTC.

Although the audience contains qualified profiles after the batch evaluation, no profiles enter the journey.

Issue #2

Journey B is scheduled to start at 21:30 UTC.

A specific profile did not enter the journey on the day it qualified for the audience.

Instead, it entered the journey 24 hours later, during the next scheduled execution.

The strange part is that, at the time the profile entered the journey, it no longer matched the audience conditions, and the segmentMembership information in the Profile Snapshot Export showed the profile with status = exited for that audience.

Has anyone seen similar behavior with Read Audience activities?

I'm particularly interested in understanding:

  • How the Read Audience activity determines which audience snapshot to consume.

  • Whether there are known timing or synchronization delays between Audience Service and Journey Orchestration.

  • Whether a profile can be picked up from a previous audience evaluation even if its current membership status is already exited.

Any insights or Adobe documentation explaining this behavior would be greatly appreciated.

Thanks!

 

@SatheeskannaK

Best answer by SatheeskannaK

Hi ​@LuisCardenas Yes, I’ve noticed these issues.

  • The Read Audience activity avoids evaluating live audience membership at runtime, relying instead on a Profile Snapshot Export. Generated sequentially after batch segmentation completes, this export can experience activation delays due to ingestion variability. Daily scheduled journeys allow you to define a specific time window to verify that fresh data is available prior to execution.
  • Enabling Trigger after batch audience evaluation anchors the journey to its scheduled time, using your configured window (such as 5 hours) to wait for the snapshot export. If the segmentation job finishes within this frame, the journey triggers; otherwise, it skips the execution entirely until the next occurrence. This absolute skip explains your Issue #1 symptom, where audiences qualify in Monitoring and Exports but yield zero entries. A segmentation job concluding at 18:00 UTC does not guarantee that the export AJO reads from is ready within your 21:00–02:00 window, as these involve distinct SLAs.
  • For incremental or recurring journeys, a separate lookback mechanic evaluates the 24 hours preceding the latest AEP segmentation service job. Because the profile snapshot export job follows segmentation to catch new profiles, scheduling a journey between these two processes means the incremental read won't capture profiles updated since the last run. Enabling the batch evaluation trigger extends this lookback to the last successful execution rather than a static 24-hour block, which explains why the Issue #2 profile was captured 24 hours later instead of dropped permanently.
  • How the Read Audience activity determines which audience snapshot to consume. -- Not a live re-query of current membership — it consumes whatever the Profile Snapshot Export produced for the evaluation cycle it's anchored to, diffed against the last successful execution (for incremental journeys).

  • Whether there are known timing or synchronization delays between Audience Service and Journey Orchestration. -- Yes, this multi-stage process includes segmentation completion, an approximate 2-hour readiness buffer before audience usability, snapshot export generation, and using in AJO. Usually Adobe recommends building a 2-3 hour buffer post-segmentation. 

  • Whether a profile can be picked up from a previous audience evaluation even if its current membership status is already exited. --  Yes, due to lookback-driven incremental reads relying on delta comparisons rather than active point-in-time checks. A profile enters because it qualified as a delta during the anchored lookback window, even if its real-time segmentMembership shifted to exited by the time the journey executed.

  • Given your 18:00 UTC batch schedule, I believe both journeys run a export SLA constraints. Adobe best practices suggest using "Synchronize read audience schedule with batch segmentation job" for recurring daily journeys targeting batch audiences. Additionally, I recommend reviewing the audience snapshot completion time and either adjusting the scheduled evaluation timing or modifying the journey schedule accordingly. 

https://experienceleague.adobe.com/en/docs/journey-optimizer/using/audiences-profiles-identities/audiences/target-audiences

3 replies

DavidKangni
Community Advisor
Community Advisor
July 8, 2026

Hi ​@LuisCardenas 

With Trigger after batch audience evaluation, you can define a time window of up to 6 hours for the journey to wait for fresh audience data from batch segmentation jobs. If the segmentation job completes within the time window, the journey triggers. Otherwise, it skips the journey until its next occurrence. This option ensures journeys run with accurate and up-to-date audience data.

For example, if a journey is scheduled for 9 PM daily, you specify 5 hours to wait before the journey runs. When the journey wakes up at 9 PM, it checks for a fresh audience, meaning an audience newer than the one used in the previous journey execution. During the specified time window, the journey will execute immediately upon detecting the fresh audience. If no fresh audience is detected, the journey execution will be skipped for that day.

 

That being said, it means your segmentation job (export, evaluation and propagation to UPS) is taking more than 3+5 hours to complete.

Please check in you monitoring how long your segmentation job is taking to complete.

 

Thanks,

David

 

David Kangni
SatheeskannaK
Community Advisor
SatheeskannaKCommunity AdvisorAccepted solution
Community Advisor
July 8, 2026

Hi ​@LuisCardenas Yes, I’ve noticed these issues.

  • The Read Audience activity avoids evaluating live audience membership at runtime, relying instead on a Profile Snapshot Export. Generated sequentially after batch segmentation completes, this export can experience activation delays due to ingestion variability. Daily scheduled journeys allow you to define a specific time window to verify that fresh data is available prior to execution.
  • Enabling Trigger after batch audience evaluation anchors the journey to its scheduled time, using your configured window (such as 5 hours) to wait for the snapshot export. If the segmentation job finishes within this frame, the journey triggers; otherwise, it skips the execution entirely until the next occurrence. This absolute skip explains your Issue #1 symptom, where audiences qualify in Monitoring and Exports but yield zero entries. A segmentation job concluding at 18:00 UTC does not guarantee that the export AJO reads from is ready within your 21:00–02:00 window, as these involve distinct SLAs.
  • For incremental or recurring journeys, a separate lookback mechanic evaluates the 24 hours preceding the latest AEP segmentation service job. Because the profile snapshot export job follows segmentation to catch new profiles, scheduling a journey between these two processes means the incremental read won't capture profiles updated since the last run. Enabling the batch evaluation trigger extends this lookback to the last successful execution rather than a static 24-hour block, which explains why the Issue #2 profile was captured 24 hours later instead of dropped permanently.
  • How the Read Audience activity determines which audience snapshot to consume. -- Not a live re-query of current membership — it consumes whatever the Profile Snapshot Export produced for the evaluation cycle it's anchored to, diffed against the last successful execution (for incremental journeys).

  • Whether there are known timing or synchronization delays between Audience Service and Journey Orchestration. -- Yes, this multi-stage process includes segmentation completion, an approximate 2-hour readiness buffer before audience usability, snapshot export generation, and using in AJO. Usually Adobe recommends building a 2-3 hour buffer post-segmentation. 

  • Whether a profile can be picked up from a previous audience evaluation even if its current membership status is already exited. --  Yes, due to lookback-driven incremental reads relying on delta comparisons rather than active point-in-time checks. A profile enters because it qualified as a delta during the anchored lookback window, even if its real-time segmentMembership shifted to exited by the time the journey executed.

  • Given your 18:00 UTC batch schedule, I believe both journeys run a export SLA constraints. Adobe best practices suggest using "Synchronize read audience schedule with batch segmentation job" for recurring daily journeys targeting batch audiences. Additionally, I recommend reviewing the audience snapshot completion time and either adjusting the scheduled evaluation timing or modifying the journey schedule accordingly. 

https://experienceleague.adobe.com/en/docs/journey-optimizer/using/audiences-profiles-identities/audiences/target-audiences

Thanks, Sathees
LuisCardenas
Level 2
July 9, 2026

Hi, ​@SatheeskannaK ​@DavidKangni - Thank you both for your help.

 

On another note, have you ever encountered a situation where a profile entering (and completing OK) a journey and going through an email action activity doesn’t actually gets targeted by the action? - This happened specifically in journey B.

 

No message feedback event was received by the profile and the journey report shows the email KPIs as 0.

DavidKangni
Community Advisor
Community Advisor
July 9, 2026

@LuisCardenas run this query using the profile id

you will see what happened to the profile within your journey

 

SELECT
timestamp,
--_experience.journeyOrchestration.stepEvents.journeyVersionID,
_experience.journeyOrchestration.stepEvents.profileID,
_experience.journeyOrchestration.stepEvents.nodeName,
_experience.journeyOrchestration.stepEvents.journeyNodeProcessed,
_experience.journeyOrchestration.serviceType,
to_json(_experience.journeyOrchestration.profile),
to_json(_experience.journeyOrchestration.serviceEvents)
FROM journey_step_events
WHERE _experience.journeyOrchestration.stepEvents.journeyVersionID='<journeyVersionID>'
AND DATE(timestamp) > (now() - interval '<last x days>' day)
AND
(
_experience.journeyOrchestration.stepEvents.profileID='<profileID>'
OR _experience.journeyOrchestration.profile.ID='<profileID>'
)
ORDER BY timestamp;

thanks,

David

David Kangni
LuisCardenas
Level 2
July 9, 2026

Hi ​@DavidKangni 

 

Here is a screenshot of the result of the query you just shared. It says ‘true’ as node processed.

However, I’m also sharing a screenshot of the query I’m using to check the feedback status of the email node within the journey with null values: