Switch to Kinde for user authentication

If you are currently using a different authentication tool to manage users, you can switch to Kinde pretty quickly. The method described here involves importing user details from CSV files into Kinde.

Before you begin, get a Kinde account and set it up. Once you’ve done this, prepare to bring across your users. You’ll need all your user’s details, including emails and in some cases, encrypted passwords.

Step 1: Prepare user data

You can export user details and data fairly easily from most auth providers. However some companies, like Auth0, require you to separately request password details for users and this can take a little while. If you’re using your own auth system, prepare data as described below.

File format

User data can only be imported from a CSV file. Depending on what you currently use for auth, you will need to export or prepare data in a CSV file. Note that if you use Auth0, user data comes in a CSV file and passwords are provided in a JSON file.

Kinde can import files up to 1MB, which is around 10,000 records.

Export data from Auth0

When you export user data from Auth0, export all the default fields and add these additional ones to the export: app_metadata, blocked, user_metadata, username, last_ip, last_login, logins_count, multifactor, name, phone_number, phone_verified.

Export data from other systems or your own system

When exporting data from another auth system or your own system, the CSV file you export may need to be edited to ensure data is formatted in rows with these column headings.

User data will usually include some or all of the following:

  • email - this is a required field to import to Kinde
  • first_name and last_name
  • id - unique to the auth provider and helps us match records as they are imported.
  • email_verified - account verification status: TRUE or FALSE
  • hashed_password - encrypted using an algorithm such as bcrypt, crypt or md5
  • hashing_method - tells us which algorithm was used to encrypt the password
  • salt - extra characters added to passwords to make them stronger
  • salt_position - position of salt in password string. Prefix (before) or suffix (after).

*Note that only the email field is mandatory, but the more data that you bring in, the easier we can set up your users in Kinde.

Check for errors

Before importing, check the CSV for missing information or duplication. Kinde will check for some errors during import, and report these back to you.


If you want your users to have an uninterrupted sign in experience as you change providers, you will need to bring their password data from your auth provider. Passwords are usually ‘hashed’ or encrypted so they cannot be read and they may be ‘salted’ as well (see above).

If you decide not to import passwords, however, it’s not a big deal. Users will be prompted to reset their password or sign in using whatever authentication methods you have chosen to set up in Kinde.

Step 2: Set up user authentication

Before you import your users, you’ll want to set up the authentication method they can use when signing up or signing in. The following options are available:

  • Passwords - switch this option on before importing user passwords
  • Passwordless - users will be sent a one-time code to sign in
  • Social sign-on (SSO) - users can sign up and in using Google, Apple, etc.

For information, see Set up user authentication.

Step 3: Import Users

Once you have your user details, you’re ready to import them.

  1. In Kinde, go to Users, then select Add users.

  2. Select the Import users tab and then select the option for your situation:

    • Import from Auth0
    • Import from a CSV
  3. Follow the on-screen prompts to upload the user data.

  4. If there are any errors with the import, you will be able to view them afterwards.

  5. Most import errors can be fixed by editing the CSV file and then re-importing into Kinde. Any records that have already been imported and have not been edited, will be ignored.

Impact for end users

  • Importing all users and passwords should mean that your users won’t notice anything when they next sign in.
  • If a user changes their password after the user export and while the migration is in progress, they will be prompted to reset their password on the next sign in.
  • If you have set up a new authentication method as part of the user migration (for instance, going passwordless) your users will be prompted to use the new method on sign in.

Get more support

See Kinde in action

Find out what Kinde can do in a live demo with one of our experts.

Book a demo

Talk to us

If you can’t find what you’re looking for in our help center - email our team. We’d love to hear from you.

Contact support
Talk to us