Skip to main content

Hi! 

 

I have a cohort created where user property filter ‘userType = premium’.

I know that I have set this property on 950+ users in Amplitude, as I set it using API and received a success for all 950. Individually navigating to the “user look-up” page for a user also shows that “userType = premium” is set in each user.

However, in the cohort, I can only see 176 users who have this property, no matter what I set the date range to.

 

I can confirm there are users who have this property set properly in Amplitude (eg. cy7ggf9aKcgg9B2zpFmX3RLSuFG2) but do not show up in the cohort.

 

I have been unable to figure out why this is the case and any help to uncover this would be highly appreciated!

 

HI @Puneet Kohli 

Can you share the cohort definition? Are you setting the usertype property with an event or with an Identity API call?


I have created using the identity API

 

The cohort definition

is 

“where userType = premium”

”in the last 90 days” 


Note that it doesn’t matter what date range I use, the problem is the same


Since you are using the Identify API call to update this property, I suspect that not all of the 950 users have sent an event after this update. If an Identify call is sent after the event, the updated value is not reflected with the event. It will be reflected at the top of a user's profile, but will not appear in chart results until another event is sent after the Identify call.

So most likely only 176 of those could have sent an event which makes the property available and thus their inclusion in the cohort. I could be misinterpreting your case here, but let me know if you can verify this with some sample users. For a user not included in your cohort, check if their latest event has the userType property in the raw payload.


Is there no way to get them segmented into the cohort without waiting for them to send an event?


And for them to keep showing up in the cohort, do they need to have that property within the last N days on their events, or once I set the property on the user it stays there even if I don’t send that value for future events?


Here’s a detailed understanding on how Amplitude applies user properties.

Once a user property is set on a user, it will persist on all future events unless you change it’s value explicitly.

 


Reply