Force full registration now or only when needed?
I'm creating an app where most users will only use it temporarily, like guests at an event. For this reason I used Firebase Anonymous Login, to where they just supply a name and they're ready to go with a persistent and usable account. This is good enough for probably 80% of users.
However there's a secondary feature that maybe 20% of users will use where users will need to access the our website, in which case they'll need to upgrade to a full email/password account on the app to access the account on the web.
So I'm faced with a dilemma, on one hand it's much more work for me to integrate an anonymous user login screen as well as a email/pass returning users login, as well as an upgrade account screen, and more difficult to explain to a current user why they need to upgrade their account to an email/pass to use this other feature, but for the 80% of users who never need to upgrade their account just supplying a name and not bothering with email is much simpler.
On the other hand, if I just force everyone to sign in with an email and password I can prevent myself from having to create all the extra screens, as well as prevent any confusion of who has what kind of account and how/when/why to upgrade to a full account. But I unnecessarily burden the 80%.
Which direction is better?