Hello, what are some ways to prevent users from taking advantage of the free trial to get all the data they need and no longer using the actor. I had recently changed the trial duration from 3 days to 2 hours. I think I want to lower the trial period again but I can't until some time later due to having changed it recently.
There's no out of the box option to do that, you have to do this yourself inside the actor, you can check whether it is a paid Apify user, otherwise just don't return all the data/slice it/dont navigate to next pages and log a related error message for them to subscribe.
One more thing I typically do, I check if it isn't a paid Apify user, I get his last runs and make sure he's only allowed to run a small number of runs per hour
Is there any documentation on checking if the user is a paid Apify user? If I update the actor, would it reflect immediately? Let's say I put in the restriction, the current user who is abusing it will face limits that I impose immediately correct?
To check if a user is a paying apify user (which indicate a good thing and it's just a free user abusing the platform/your actor(s)), you can use something like this:
When you implement this in your code, once you build the actor it should goes into effect immediately for users running your actor using the latest tag, and you can prevent them from using older builds by deleting them from the actor's dashboard
The goal is to give enough value in your free trial that your user will appreciate your product, but not enough so that he will want more and continue to pay.
It's variable per product, but you should always expect that some user will be a net loss and that is ok as long as enough user convert to paying user.
Yes, donβt worry too much about free users achieving their goals during the trial period, as they are only a minority. Our focus is on developing excellent Actors to attract and retain users in the long run.