determine the per-user cost and make it available for the user to see it.
create a “show me ads” toggle for the user to enable. Indicate how much this covers their cost.
create a “sell my content” toggle and indicate how much this covers their cost.
create a donation field.
recalculate the numbers and prompt the user to make changes on a monthly basis.
It’s possible that enough donations would cover the entire cost of operations. In that case, as a non-profit it would be necessary to stop selling out the users when costs are covered.