Users should not have to identify themselves regardless of the service being paid or free. Because stopping spam and bots is possible without requiring the user to provide an email or a phone number.
If it were only email I could use software that blocks spam email. But there's no way I know of that can block spam phone calls. And I, at least, get spam phone calls.
Signing up on donotcall.gov doesn't help. There's always some checkbox in some terms of service somewhere that grant people the right to contact me that I don't know about.
But the biggest reason I don't want to give my phone number is I want to not feel the way being required to give my phone number makes me feel. I feel like a tracked inmate.
Right back at you: why do you need a phone number from a user? Why do you need anything from a user? What problem are you trying to solve that cannot be solved in any other way except by asking for people's phone number?
I should also say I'm sick of online services accepting only a trackable token as a verification mechanism. There's a simple way to not need this. And it's probably because it's so simple that it isn't used, because online services want to track people.
It should be possible to be a human being without owning an email address or a phone number and today in the USA this isn't possible.
Yes it does get written, but if you are asking how to do it, instead of proactively trying, you probably cant do it on your own. 98% of developers cant