Hi, I’m currently building a resource website that contains articles and downloadable templates. Those resources are accessible for registered and logged in users (using Memberstack). However, they are limited to only access certain amount of the resources per month (like Medium), is it possible to do this in Webflow?
Webflow handles publishing, but in terms of controlling content access, it only has two options-
- Password protecting a page / folder
- The Webflow Memberships system in BETA
The requirements for the Membership system are still in flux, but to my knowledge there isn’t any kind of content metering system, where you get access to X things per month. In fact, that’s quite rare in general today.
Usually you get access to tiered content-
- YouTube - FREE content (ad supported) or PAID content (exclusive to YouTube Red members).
- Your local Mexican buffet. FREE = no entry. $10 = salads. $20 = full buffet. $30 = plus dessert and the Mariachi band.
- Your cable company- specifies which networks you have access to, and not how many movies you’re allowed to watch.
That’s easier for your customers too, because if you limit their access, you’ll encounter frustration- that accidental click that cost them a point on an article they weren’t interested in.
There are ways to implement a system like this, but they’d involve a points system and an ecommerce system where you purchase ( permanent ) access to content-with-points, which is a common pattern on stock photography sites, and Audible.
But from a practical implementation standpoint, you’re better off with tiered access- and Memberstack already appears to support this.
Added note- your title is different from the description in your email. If you actually want to limit non-paying user’s access to articles, I think most gated-content membership systems support that. Both Memberstack and Webflow Memberships BETA should offer some form of limited access to FREE users. However it’s likely to be gated as FREE rather than “you get 5 articles.”
The comment above definitely explains the situation natively in Webflow, but I work at Memberstack and wanted to explain a potential workaround for what you are trying to do. In case you aren’t familiar with the product, Memberstack is a very common memberships/authenticantion manager for Webflow (you can find out more info here).
I can imagine a possible solution to this using an Airtable document, Zapier, Memberstack and some custom code. Here is my thinking:
i) In Memberstack create two different free-tier membership plans (in this example I’ll call it Free Plan (<5) and Free Plan (>5) ). Memberstack lets you gate content based on Membership status, so you can make it so that all content is available in the <5 plan and none is available in the >5 (presumably, you’d have a paid account as well which should be identical to the <5 plan).
ii) Create an integration between your user base in Memberstack and in Zapier so that membership data is the same between the two (this is good practice in any case for Memberstack if you want any backend functions other than those already available).
iii) [This is where is might differ from Medium] Whenever a user wants to access one of the free articles, make them submit a form with their user-id auto-submitted in an HTML embed (here is a tutorial on what I mean by that).
iv) On that form submission, use a script in Zapier to increment a field on Airtable, maybe called something like “Free Articles Count”, by one. There are a couple ways of doing this (the third comment in this post is an example). note, this will require a bit of coding.
v) Again, using a script in Zapier, when that count reaches 5, you can create a trigger that switches the membership-id from a <5 account to a >5 one. Again, this might require some custom code (I can look more into this if you’d like me to).
There might be a way to indicate to the user how many accounts there are left (I’d imagine this would require some kind of Airtalbe integration with a field on a user-dashboard – I can look into this as well). But, in theory, this should give you something like what you are looking for.
Again, this is just me spitballing – let me know if you want me to clarify anything.