Configuring two-factor authentication

You can choose among multiple options to add a second source of authentication to your account.

You can configure two-factor authentication using a mobile app or via text message. You can also add a security key.

We strongly recommend using a time-based one-time password (TOTP) application to configure 2FA. TOTP applications are more reliable than SMS, especially for locations outside the United States. TOTP apps support the secure backup of your authentication codes in the cloud and can be restored if you lose access to your device.

Warning:

  • If you're a member, billing manager, or outside collaborator to a private repository of an organization that requires two-factor authentication, you must leave the organization before you can disable 2FA on GitHub.
  • If you disable 2FA, you will automatically lose access to the organization and any private forks you have of the organization's private repositories. To regain access to the organization and your forks, re-enable two-factor authentication and contact an organization owner.

Configuring two-factor authentication using a TOTP mobile app

A time-based one-time password (TOTP) application automatically generates an authentication code that changes after a certain period of time. We recommend using cloud-based TOTP apps such as:

Tip: To configure authentication via TOTP on multiple devices, during setup, scan the QR code using each device at the same time. If 2FA is already enabled and you want to add another device, you must re-configure 2FA from your security settings.

  1. Download a TOTP app.

  2. In the upper-right corner of any page, click your profile photo, then click Settings. Settings icon in the user bar

  3. In the left sidebar, click Account security. User account security settings

  4. Under "Two-factor authentication", click Enable two-factor authentication. Enable two-factor authentication option

  5. Under "Two-factor authentication", select Set up using an app and click Continue.

  6. Under "Authentication verification", do one of the following:

    • Scan the QR code with your mobile device's app. After scanning, the app displays a six-digit code that you can enter on GitHub.
    • If you can't scan the QR code, click enter this text code to see a code that you can manually enter in your TOTP app instead. Click enter this code
  7. The TOTP mobile application saves your GitHub account and generates a new authentication code every few seconds. On GitHub, type the code into the field under "Enter the six-digit code from the application". If your recovery codes are not automatically displayed, click Continue. TOTP enter code field

  8. Under "Save your recovery codes", click Download to download your recovery codes to your device. Save them to a secure location because your recovery codes can help you get back into your account if you lose access. List of recovery codes to download

  9. After saving your two-factor recovery codes, click I have saved my recovery codes to enable two-factor authentication for your account.

  10. After you've saved your recovery codes and enabled 2FA, we recommend you sign out and back in to your account. In case of problems, such as a forgotten password or typo in your email address, you can use recovery codes to access your account and correct the problem.

Configuring two-factor authentication using text messages

If you're unable to authenticate using a TOTP mobile app, you can authenticate using SMS messages. You can also provide a second number for a fallback device. If you lose access to both your primary device and your recovery codes, a backup SMS number can get you back in to your account.

Before using this method, be sure that you can receive text messages. Carrier rates may apply.

Warning: We strongly recommend using a TOTP application for two-factor authentication instead of SMS. GitHub doesn't support sending SMS messages to phones in every country. Before configuring authentication via text message, review the list of countries where GitHub supports authentication via SMS. For more information, see "Countries where SMS authentication is supported".

  1. In the upper-right corner of any page, click your profile photo, then click Settings. Settings icon in the user bar

  2. In the left sidebar, click Account security. User account security settings

  3. Under "Two-factor authentication", click Enable two-factor authentication. Enable two-factor authentication option

  4. Under "Two-factor authentication", select Set up using SMS and click Continue.

  5. Under "Authentication verification", select your country code and type your mobile phone number, including the area code. When your information is correct, click Send authentication code.

    2FA SMS screen

  6. You'll receive a text message with a security code. On GitHub, type the code into the field under "Enter the six-digit code sent to your phone" and click Continue.

    2FA SMS continue field

  7. Under "Save your recovery codes", click Download to download your recovery codes to your device. Save them to a secure location because your recovery codes can help you get back into your account if you lose access. List of recovery codes to download

  8. After saving your two-factor recovery codes, click I have saved my recovery codes to enable two-factor authentication for your account.

  9. After you've saved your recovery codes and enabled 2FA, we recommend you sign out and back in to your account. In case of problems, such as a forgotten password or typo in your email address, you can use recovery codes to access your account and correct the problem.

Configuring two-factor authentication using a security key

After you configure 2FA using a mobile app or via text message, you can add a security key, like a fingerprint reader or Windows Hello. The technology that enables authentication with a security key is called WebAuthn. WebAuthn is the successor to U2F and works in all modern browsers. For more information, see "WebAuthn" and "Can I Use."

On most devices and browsers, you can use a physical security key over USB or NFC. Some browsers can use the fingerprint reader, facial recognition, or password/PIN on your device as a security key.

Authentication with a security key is secondary to authentication with a TOTP application or a text message. If you lose your security key, you'll still be able to use your phone's code to sign in.

  1. You must have already configured 2FA via a TOTP mobile app or via SMS.

  2. Ensure that you have a WebAuthn compatible security key inserted into your computer.

  3. In the upper-right corner of any page, click your profile photo, then click Settings. Settings icon in the user bar

  4. In the left sidebar, click Account security. User account security settings

  5. Next to "Security keys", click Add. Add security keys option

  6. Under "Security keys", click Register new security key. Registering a new security key

  7. Type a nickname for the security key, then click Add. Providing a nickname for a security key

  8. Activate your security key, following your security key's documentation. Prompt for a security key

  9. Confirm that you've downloaded and can access your recovery codes. If you haven't already, or if you'd like to generate another set of codes, download your codes and save them in a safe place. If you lose access to your account, you can use your recovery codes to get back into your account. For more information, see "Recovering your account if you lose your 2FA credentials." Download recovery codes button

  10. After you've saved your recovery codes and enabled 2FA, we recommend you sign out and back in to your account. In case of problems, such as a forgotten password or typo in your email address, you can use recovery codes to access your account and correct the problem.

Further reading

Did this doc help you?Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

Or, learn how to contribute.