-
-
Notifications
You must be signed in to change notification settings - Fork 7.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NPS: Update frequency of the NPS #20492
Conversation
10 hours? How do you expect this to show? Does anyone actually leave an instance of Strapi open for 10 hours......? |
I know it is a lot, we received a lot of complaints from the users for the frequency of the nps survey, the first request of the Product was to show the survey after 3 days of activity. This delay is not stored in the local storage, instead is counted from the first rendering of the component, product is aware of it, I'll let @yanniskadiri explain his reasons |
This should be regardless of people closing their tabs or reloading right? Since we're using usePersistentState |
the time isn't cumulative from what i can see on the code? we set a timeout, now 10 hours and when the component unmounts we don't add "how long its been open for" we just say, bye bye? EDIT: i'd love to be proved wrong please 😅 |
yeah we are not using usePersistantState for this timeout, so it is like @joshuaellis says...maybe we can keep track of the time passed since the first registration like we do for the other delays I mean store the value in the local storage |
yeah that would make more sense, if we've not shown the NPS keep track of "spent delay" & then when someone dismisses, you reset that spent time so next time to shows we count again. |
I don't think you're wrong @joshuaellis 💀 So the problem is the use of a long setTimeout, right? Maybe instead we can do some sort of polling solution with setInterval? Something that runs every minute or so to check if the modal should be displayed based on the data in localstorage |
yes, it can be a solution. Just take another aspect into consideration, the 5 minute timeout is now also used in conjunction with the other timeouts, I mean for example if 90 days have passed since the first response then before showing the nps survey we wait 5 minutes of activity (this it means if we change it to 10 hours we have to wait for 10 hours of activity)... I think we can avoid this behavior and immediately show the NPS survey when 90 days have passed (this value is calculated at the first rendering of the NPS component) |
This should be discussed with Yannis, IMO do it in a public channel so everyone has some visibility & we're all on the same page 😄 |
As a quick win we decided to try with 30 minutes just to see if we can stop the complaints, otherwise we can discuss and plan a better approach for the issue, thanks for the contribution team |
good idea, 30 mins is probably reasonable. Someone should be monitoring the repsonses though, if we're not getting any then we know it's too long |
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
What does it do?
It changes the delays to display the NPS for the first time (from 5 minutes to 30 minutes) and after the first dismissal (from 7 days to 14 days)
Why is it needed?
Many users complain about the frequency of NPS
How to test it?
Related issue(s)/PR(s)
CS-795