How to implement a multi-vote feature system in MS based on subscription tiers with live vote count? Answered
Hey, is there a up vote/ down vote or like feature without commenting?
The goal is to collect votes from users what kind of features they want to see in the future and should vote for their favorite. (There will be a list from which they can like/upvote their favorite)
Different plans should habe different amounts of votes, eg: basic=1 vote, pro=3 votes, enterprise= 5 votes.
Also, is it possible to then also display the amount of likes live?
Comments
14 comments
Hey Felix! Good news - we have this tutorial for exactly that 😁https://www.memberstack.com/scripts/62-upvote-button
It doesn’t cover the different vote counts for different tiers bit, but it should do 98% of the job !
Thank you. The tutorial guides me to copy a component from webflow. Unfortunately I don‘t get redirected to a webflow project but to the actual website which is why i can‘t copy the component. Any idea from where and how i can copy the necessary elements?
Thank you in advance! ✌️
https://memberstack.slack.com/archives/C033F0SLTLK/p1724501353257499?thread_ts=1724458390.706619&cid=C033F0SLTLK
Hey Felix Gräf, you can clone the free template for Upvote feature from here.
Hope this helps.
Yesss, thank you A J
hey, In the make.com setup I need to activate Live as shown in the video but the selection doesnt evene xist for me on my screen. Any idea how to fix that? There is also a filter condition after the router which didn’t get explained. Also, the counter is going into the negative for some reason, maybe due to the filter.
Thank you!
Hey Felix Gräf, the first issue that you mention is unfortunately because of the Webflow update. In the new version that you see in your Make workflow, you won't find the Live option, instead you will have to add another module to Publish that item specifically. So its not a problem on your part, just a different way has to be adapted to ultimately get the same result after the Webflow update 😐.
As for the second question, I believe the filter essentially check if upvoted value is true then takes it via the first route, if it is false takes it via the second route to remove the vote accordingly.
Hope this helps.
Alright, thanks for the reply A J. How do I set up the filter in make.com for that? Thank you in advance!
You can have something like 'upvote' (the field that you get from webhook is equal to 'true' and on the second filter you can have it equal to 'false'. You can use text is equal to filter for simplicity, it would work just fine.
okay it doesnt work as I thought. For some reason when I click the upvote button it goes up +1 but after like a sec the vote count gets a -1. Same thing for the downvote. -1 when I click and then +1 after a sec. I tracked the signal in Make and the filters do work correctly by only triggering either upvote or downvote. It happens in exactly the same moment after the second webflow module is being triggered 😅.
https://memberstack.slack.com/archives/C033F0SLTLK/p1724623481662959?thread_ts=1724458390.706619&cid=C033F0SLTLK
Hey Felix Gräf, my guess here is the last module in the make workflow might be taking the value of upvote from the first webflow module rather than the second one (i.e. the updated one), could you check if the last webhook response module has the updated vote value mapped in it?
Yup... You were right. I used the mapping from the first module. Now it works. Thank you so much
A J. At this point I'm half convinced that u got superpowers. I appreciate your support!
Hey, i have a question regarding the upvote feature. Is it possible to limit the amount of votes a user has based on their plan?
Eg a basic user has 1 vote, a pro user has 3 votes, and a enterprise user has 5 votes. Thank you!
Hey Felix Gräf, I believe since we are already passing member ID info to the webhook in the workflow, you could try fetching the member and have a filter based on plans and the number of items in 'upvotes' in the Member JSON, in order to decide whether to consider / disregard the vote (based on your custom logic).
But that might confuse the user, if they don't know why they aren't able to see the upvotes (unless you are thinking of having an intimation that only specified number of upvotes allowed based on your plan).
In case you want to have a feature where you show the upvote button if there are remaining upvotes that a user can do based on their plan and probably once they use up their last upvote, they can be intimated to upgrade if they want to upvote more items, I believe you can take inspiration from the Credit System feature. Here instead of having a custom field which tracks credit, you could store the max number of upvotes a user can make and have the same logic of reduction once they upvote an item and intimate them to upgrade / take necessary action accordingly. Hope this helps.
Would you say its best if we include one upvote and one downvote route for each plan?
(So if we would have 3 different plans we would have 6 routes overall)
If you want to have a limit on votes, I believe you should have the check before the upvote / downvote route, so you check the plan and the votes given, if they are eligible for votes, only then proceed with upvote / downvote route. You can also have it separately as 6 routes and it would be functional in the same way. The former approach just gives you less number of modules to maintain in general.
Please sign in to leave a comment.