Skip to main content

I’ve defined a cohort to exclude internal users by defining it as:
Did have user property email, does not contain, catchbio.com any time since 1/1/2024
 

However when I look at charts with this cohort filter applied I still get some events for users with catchbio.com emails for example “alex+test06@catchbio.com”. We’ve been making a lot of test accounts in succession to de-bug things. 

I’ve even added the specific emails directly to the list of does not contain. What am I missing?
 


Thanks,
Alex​​​​​​​

Hi Alex,

Thank you for reaching out! I understand you’re experiencing an issue with your cohort definition to exclude internal users based on the email property, as events for users with 'catchbio.com' emails are still appearing. Let’s work through this together.

From your description and the screenshots provided, it seems the issue might be related to how Amplitude evaluates user properties over time. Here are a few key points to consider:

**Cohort Logic**: When using the 'does not contain' filter, Amplitude includes users who, at any point in the selected time range, did not have the specified value for the user property. This means:

- If a user performed an event without an email containing 'catchbio.com' at any time during the time range, they would qualify for the cohort, even if their email now contains 'catchbio.com.'
- The cohort logic evaluates user properties at the event level, not based on the most recent user property value.

**Possible Scenarios**:

- Users may have performed events before their email property was set or with a different email value.
- If the email property was updated via the Identify API, the update applies only to future events and is not retrospective. This could result in events with older email values still appearing.

**Suggested Next Steps**:

- Update your cohort definition to filter users based on their **most recent** email property value. This ensures that only users whose current email does not contain 'catchbio.com' are excluded.
- You can find more details about cohort definitions and filtering in our Behavioral Cohorts documentation: https://amplitude.com/docs/analytics/define-cohort#user-property-clauses.

Let me know if these steps help clarify the issue or if you’d like further assistance. I’m happy to dive deeper into this with you!

Best,
Eddie


P.S. Checkout upcoming events and user meetups on our events page.

@eddie.gaona thank you. The explanation of how the cohort logic works with ‘does not contain’ is really helpful for wrapping my head around the issue. Using “most recent” does seem to work the way I want it to. Much appreciated!


Hi Alex,

I’m glad I could help. If you have any other questions or run into anything else, don’t hesitate to reach out—I’m always happy to assist.

Best,
Eddie


P.S. Checkout upcoming events and user meetups on our events page.

Reply