Notes / Properties
Property dictionaries for mobile funnels
2 February 2026
A named event without a dictionary is a headline without a style guide. Mobile funnels fail in the properties: iOS sends plan_id as a string, Android as an int, and a webview injects PlanId. The Property Dictionary Lab exists because Event Family Studio participants kept finishing week three with beautiful names and chaotic keys.
Nullability is a product decision
If coupon_code is optional, say so. Analysts filling gaps with “unknown” in SQL will invent a sixth funnel stage. The dictionary we use in class has three states only: required, optional, forbidden on that event.
Enums drift
Free-text source fields become a folksonomy: “push”, “Push ”, “notification_centre”. Lock the enum in the RFC and reject unknown values in debug builds. Production can still receive junk from old app versions; the volume pass will show you when it is safe to stop mapping aliases.
PII flags
UK teams cannot treat this as optional colouring. If a property might identify a person, it is marked, and it does not belong in a broadly shared dashboard extract. We will not design an evasion; we will leave the field out of the teaching catalogue.