Hi @conner, I’m looking for guidance on building user funnels from sessionized event data in Omni.
I’m working with session-level data where I need to track users through multiple funnel stages (e.g., page viewed → checkout started → order completed) with a time window (e.g., 7 days). The complexity is that I need to join sessions to themselves to identify conversions that happen in subsequent sessions within that window.
Creating an aggregated dbt layer first seems like the right approach, but I’d love to understand:
-
What’s the ideal structure for a funnel table? Should it be one row per user per entity, or per session?
-
How should I handle the self-join logic in dbt vs. letting Omni handle it?
-
Any best practices for making this performant and flexible for different funnel types?
Thanks!