Paywall Rate Limit
This module allows site owners to set a limit on how many times anonymous users can view certain content before a paywall is applied. It provides a new rule for paywall access, a block to inform users about their access status and remaining views, and uses Drupal's core flood API for rate limiting based on session ID or IP address.
Sometimes a site owner may let anonymous users navigate a little before applying the paywall rule. For example, that visitor could visit 10 different nodes of a specific bundle before showing the paywall block.
For this, module adds a new RolePaywallAccessRule to let anonymous visit a predefined content the chosen x times before applying the restriction.
It also adds a new block to be shown whenever the user is attained to rate limits (allowed or denied) with info like:
Access to content is Allowed Current articles views between 22:00:16 and now: x of max allowed.
Note that rate limit could be configured on session id basis or ip basis, it use the core flood api under the hood. It is recommended to use the session id basis as if not the public ip of your current connection will be used, so if used in a multiple computers home, one device in the subnetwork could waste the paywall limit.
On the other hand, note that session id could be easily superseded, as a simple incognito session in major browsers (or any other method that restarts the session) could reset the session id and so on the limit counter.