Allow pre-exposure start events for retention metrics
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 39.9k
- Forks
- 3.4k
- Avg merge
- 6h 51m
- Merged PRs (30d)
- 232
Description
Feature request
Problem
Retention metrics currently require the start event to occur after feature flag exposure. This means you can't use signup as the start event when the flag fires later in the user journey.
A customer wants to answer: "among users randomly assigned at a flag gate, did the test variant improve signup-anchored retention?" This is a valid causal comparison (both groups are randomized at the gate), but the engine returns 0/0 because of the post-exposure timestamp filter.
Context
No major competitor supports this but I couldn't find a reason why this could be an issue.
Ticket: https://posthoghelp.zendesk.com/agent/tickets/52643 (moved to PostHog: https://us.posthog.com/project/2/support/tickets/55470)
Debug info
- [ ] PostHog Cloud, Debug information: [please copy/paste from https://us.posthog.com/settings/project-details#variables]
- [ ] PostHog Hobby self-hosted with `docker compose`, version/commit: [please provide]
- [ ] PostHog self-hosted with Kubernetes (deprecated, see [`Sunsetting Kubernetes support`](https://posthog.com/blog/sunsetting-helm-support-posthog)), version/commit: [please provide]
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files, tests, or entry points. Start by locating the retention-metrics logic that applies the post-exposure timestamp filter, then determine how pre-exposure start events should be handled; done means signup-anchored retention returns a valid comparison for users randomized at a later flag gate.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- analytics
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100