Adobe Audience Manager Business Practitioner Expert study materials
Adobe Audience Manager Business Practitioner Expert study resources

The Trait Rule That Never Fires

Adobe Audience Manager Business Practitioner Expert · Put your knowledge to work in context.

All case studies

The Trait Rule That Never Fires

An analyst builds a trait to capture high-intent users: signal event_type equals add_to_cart AND signal cart_value is greater than 100. The trait shows zero population after a week, though cart events are flowing. Investigation shows event_type arrives as a string and cart_value arrives as a string like "149.00". The analyst also built a second trait using event_type contains cart that does populate. Leadership wants the high-intent trait live for a campaign launching in two days.

1. Explain why the AND trait fails while the contains trait works, and what the fix is.

Read the worked answer

The two traits fail for different reasons, which is the key insight:

  • event_type contains cart works because contains is a substring match on a string - add_to_cart contains cart, so it fires. Operator and data type are compatible.
  • event_type equals add_to_cart AND cart_value > 100 fails on the numeric comparison. cart_value arrives as the string "149.00". A greater-than comparison against a string either does not evaluate as numeric or does not evaluate at all, so the AND condition can never be satisfied - and an AND trait requires all conditions true.

The fix: make the comparison type-correct. Either (a) ensure cart_value is ingested/normalized as a numeric signal so > 100 evaluates numerically, or (b) if the platform only supports string operators on that signal, redesign the logic to avoid a numeric comparison (e.g., bucket values into a categorical signal upstream).

Diagnostic habit: when an AND trait is empty but its components look present, test each condition individually to find the failing clause rather than debugging the whole rule.

2. With a two-day deadline, what is the safest interim approach and what risk must you flag?

Read the worked answer

Interim approach: ship a trait that is known to work and approximates intent, while the numeric fix is in progress.

  • Build the campaign trait on conditions you have verified fire (e.g., event_type contains add_to_cart), and if a coarse value signal exists, layer it. Test in a small population before launch.
  • Do not ship the broken numeric AND trait just to have something live - an empty trait silently delivers zero audience and wastes the campaign window.

Risks to flag explicitly:

  • Over-broad audience. Without the value filter, low-value carts are included. This may dilute ROAS and should be communicated to the campaign owner, not hidden.
  • The real fix is upstream. The durable solution is normalizing cart_value to numeric at ingestion. The interim trait is a bridge, and someone must own retiring it.

Document the interim trait's logic and its known limitation so the campaign team can interpret results correctly.