Build a Basic Any-Order Query

Configure your Event Sources and create the User Defined Events you want to analyze.

3 min readProduct documentationzinzu Any-Order Behavior User Guide

Before You Begin

Events can come from different tables or views. Their EventOwner values must identify the same entity across sources.

Example: Identity checks use APPLICATION_ID, while consent records use REQUEST_ID. Both must contain the same application identifier for zinzu to combine their records.

Build the Query

  1. Expand Journey Builder and select Any Order Behavior.
  2. Enter a descriptive query name.
  3. Drag the required User Defined Events into the event basket, or use their add buttons.
  4. Leave the system filter basket empty for a basic query.
  5. Click Submit Query to review the execution settings.

Example name:Applications with all verification actions

Event basket:Identity Verified + Address Verified + Consent Received

Illustration: Application-verification query with three events and no system filters.

How It Works

zinzu examines each EventOwner’s records chronologically and collects records matching the required events. Unmatched records are skipped—they do not interrupt the match or fill a required event occurrence.

Example: Your query requires Identity Verified + Address Verified + Consent Received.

An application’s timeline contains:

  1. Consent Received — collected.
  2. Profile Updated — skipped.
  3. Identity Verified — collected.
  4. Email Sent — skipped.
  5. Address Verified — collected; the set is complete.

The three required actions match even though they occurred in a different order and had unrelated activity between them. You do not need an Any (wildcard) control.

Illustration: Collect required events and skip unrelated records.

Without system filters or negation, the set completes as soon as every required occurrence matches. zinzu then starts collecting another set from later records. Records from a completed set are not reused to create overlapping combinations.

Additional records for an already-matched event are normally skipped unless another copy or a Recurring filter makes them relevant.

Note:Skipped records still count toward the sequence record limit. Timing filters use the matched records’ timestamps, so time spent between those records still affects the measured duration.

When to Use It

Application verificationFind applications with Identity Verified + Address Verified + Consent Received, regardless of their order or other activity between them.

Illustration: Applications with all verification actions.

Feature adoptionFind users who performed Report Created + Dashboard Opened + Export Used, even across visits with other actions in between.

Illustration: Feature adoption.

Operational checksFind orders with Inventory Checked + Payment Authorized + Address Validated, regardless of which check happened first.

Illustration: Operational checks.

These examples require the actions to occur, without enforcing their order.

Continue readingMultiple occurrences
Search documentation · Esc to close
Open original image ↗