If you have sandbox instance, it is strongly advised for admin to install it in sandbox before install in Production. Admin and user can fully test the app in sandbox before go for Production. Although, you always can uninstall it.
Once you enter your Salesforce login credential, in Step 2. Choose security level. There is option who should able to access the package, this is very good to minimize impact when not all users need to access this package.
If you select the first option Grant access to admins only, what does this mean, who is admin actually? It mean users with profile Customize Application permission enabled.
What will the installation package do:
- Object permissions—“Read,” “Create,” “Edit,” “Delete,” “View All,” and “Modify All” enabled
- Field-level security—set to visible and editable for all fields
- Apex classes—enabled
- Visualforce pages—enabled
- App settings—enabled
- Tab settings—determined by the package creator
- Page layout settings—determined by the package creator
- Record Type settings—determined by the package creator
Selection in installation process do not impacts to app licenses (for not free app). If the app is licensed at user level (not org-wide license), you’ll need to add licenses manually for each users from Setup | Installed Packages | app name | Manage Licenses. This is important, because even if you pick Grant Access to All Users, users will still need to have a license to the app in order to be able to see any of its components. Exception for Sandbox instance, add license activity is not needed.
Reference: Install a Package