I use to use the skyverge membership plugin. while it was good and it did have a lot of features, i moved to Plugin Republic – Members Only – [https://pluginrepublic.com/wordpress-plugins/](https://pluginrepublic.com/wordpress-plugins/)
It is slightly limited, it is enough for most sites. I use it to restrict products to members. I like it as it uses the wordpress user roles to determine the membership (add as many as you want) and it allows you to have more than 1 role per user.
You can add extra signup fields and create your own. (also chose what user role if you want clients to choose their role)
What it doesn’t to (yet) is restrict pages. I just use a basic 3rd party plugin that does this, no big deal for me.
It’s not as powerful as sky verge membership but it’s also a fraction of the price and does a good job of it.