@todorov
Subsidizing the end user is usually the better approach.
To control user subsidies, you can:
1) Implement a time-based limitation.
2) Set a cap on the subsidy amount per user.
3) Stop subsidies after a certain level of user engagement scores is reached.
I prefer the third option.