Before you start
You need:
- An Auth0 development tenant configured with Universal Login and a custom domain.
- Auth0 CLI installed and configured with your development tenant.
- A GitHub repository to contain your ACUL custom loign screens.
- An inventory of your Classic Login experience assets:
- UI components.
- CSS/theme tokens and brand assets.
- Validation rules (email format, required fields).
- Error handling behavior.
Initialize an ACUL project
If you have not configured your development tenant with Auth0 CLI, use the auth0 login command.
login-id and login-password authentication screens.
To learn more, read auth0 aclu on GitHub.
Customize ACUL screens
Customize thelogin-id and login-password screens to align to your organization standards.
You should consider the following:
- Reuse existing CSS/theme and React components.
- Apply branding (assets, typography, layout).
- Add basic client-side validation (email required/format; password required).
- Standardize error presentation (consistent and accessible).
Validate the ACUL migration
To validate the user end-to-end login experience, you can use the auth0 acul command:- The authentication flow uses your custom UI for the
login-idandlogin-passwordscreens and that they display correctly. - Wrong password and other server-side error messages are clearly rendered.
- Users are successfully redirected back to your application.
- Email validation, if enabled, behaves as expected.
Deploy ACUL screens to production tenant
The ACUL screen project includes a deployment setup you can use, as a starting point, to deploy your screens to production. The ACUL deployment steps include:- Building your screen asset bundles.
- Publishing them to your CDN.
- Enabling ACUL to your Auth0 production tenant.
Cutover and rollback strategy
Unless you are using a proxy to direct traffic to different tenants, migration from Classic to Universal Login can not be done in a gradual rollout. For single tenant migrations, we suggest treating it as a controlled production change:- Complete staging validation.
- Cut over during a planned window.
- Have a clear rollback strategy and procedure.
- Tenant A: current Classic Login.
- Tenant B: Universal Login with ACUL enabled.
- Use a proxy/traffic-splitting layer to route a percentage of authorization traffic to Tenant B and ramp up over time.