authentication – Is there any way to guarantee real user registration?

I would like to provide some free tokens to users on registration, I don’t want bot accounts to register and get free tokens. Is there any way to prevent this?

I would like to use phone verification, but I am not sure if it’s obsolete. I was able to find services that provide virtual numbers such as Twilio. So not sure if phone verification is enough.

Do I have other options? GCP and AWS force credit card registration but that’s very inconvenient to the user.