Skip to main content

Password policy generator

Start from a Balanced, Strict or Passphrase preset aligned with current NIST guidance, then adjust minimum length, common-password blocking, history, expiration, attempt limits and optional compatibility rules before copying a summary and JSON configuration. Everything runs in your browser.

  • Clipboard

Embed this widget

Customize the result, check the live preview, then copy the code.

Preview

Embed code type

Code to copy

Responsive and automatically resized by Bethemesh.

Preset

Estimated level

Rules summary

JSON configuration

Was this tool useful?

How does this tool work?

This tool helps you write a consistent password policy from three presets and about ten settings. It is for administrators, security officers and developers who need to document or implement rules, and it produces a readable summary plus a JSON configuration.

The current reference is NIST SP 800-63B-4, published in July 2025: at least 15 characters when a password is the only authentication factor, 8 when a second factor is required, support for at least 64 characters, no character-class composition rules and no routine periodic changes. It also requires rejecting common, compromised or context-specific passwords and limiting consecutive failed attempts to no more than 100. The presets now follow those principles: Balanced uses 15 characters with no composition rule, no forced expiration and a 10-attempt threshold; Strict raises the minimum to 20 characters and uses a 5-attempt threshold; Passphrase uses 24 characters with no composition rule. Password history remains available for organisations that need it, but it is not treated as a NIST requirement.

Inputs are clamped to the tool limits: minimum length 6 to 128, history 0 to 50, expiration 0 to 3,650 days and failed-attempt threshold 0 to 100. The estimated level is an indicative score, not a NIST compliance certificate: it rewards a 15-character minimum, adds credit at 20 characters, rewards blocking common passwords, blocking obvious personal data, leaving periodic expiration disabled, configuring an attempt limit and allowing passphrases. Character-class requirements lower the score because NIST explicitly prohibits them, while password history is neutral. Warnings appear for any forced expiration, a minimum below 15 characters, composition requirements or a missing common-password blocklist.

How to use this tool

  1. Pick a preset

    Select Balanced, Strict or Passphrase: every field and switch is prefilled and the policy is displayed right away.

  2. Adjust the rules

    Change the minimum length, the number of previous passwords blocked, the expiration and the attempts before lockout, toggle character requirements and blocklists, then click Generate policy.

  3. Review and copy

    Check the estimated level and the warnings, then copy the rule summary or the JSON configuration. The reset button goes back to the Balanced preset.

Use cases

Write the password section of a security policy

Generate the rule summary for your organisation’s information security policy or IT charter, then rephrase it for end users.

Hand a specification to developers

Paste the normalised JSON into a ticket or repository so the team implements exactly the minimum length, history and lockout you agreed on.

Modernise a legacy policy

Replace an old rule such as 8 characters, 4 types and a change every 90 days with a policy aligned with NIST SP 800-63B-4, guided by the warnings shown for expiration and length.

Examples

Balanced password policy

Input

Preset: Balanced; Minimum length: 15; Block common or compromised passwords: on; Disallow obvious personal data: on; Forced expiration: 0 days (disabled); Failed attempts before rate limiting or lockout: 10; Allow and encourage passphrases: on; Require lowercase letters, uppercase letters, numbers and symbols: off

Result

Estimated level: Strong (score 12). Rules summary: minimum length of 15 characters, block common or compromised passwords, disallow obvious personal data, no forced expiration, rate limiting or lockout after 10 failed attempts, passphrases allowed.

Tips and best practices

  • Keep forced expiration at 0: NIST SP 800-63B-4 advises against periodic changes, which push users toward predictable variants such as Spring2026! then Summer2026!. Force a change when a compromise is detected instead.
  • A lockout threshold that is too low, such as 3 attempts, lets anyone deliberately lock other people’s accounts; prefer a temporary or progressive lockout after 5 to 10 failures.
  • The tool sets a minimum length; when implementing it, do not impose a low maximum and accept at least 64 characters as well as spaces so passphrases work.

Sources and references

Frequently asked questions

What minimum password length does NIST recommend in 2026?

NIST SP 800-63B-4 (July 2025) requires at least 15 characters when the password is the only authentication factor and 8 characters when it is combined with a second factor. Systems must also accept passwords of at least 64 characters.

Should a policy require uppercase, digits and special characters?

According to NIST SP 800-63B-4, no: composition rules are now prohibited because users meet them in predictable ways (capital first, digit and ! at the end). Length and blocking common or compromised passwords are far more effective, although some industry frameworks may still require them.

Should passwords be changed every 90 days?

No. NIST SP 800-63B-4 prohibits routine periodic password changes and requires a change when there is evidence of compromise. The tool therefore warns whenever a forced expiration period is configured.

How many attempts should be allowed before locking an account?

NIST requires rate limiting and sets an upper bound of 100 consecutive failed attempts. A service may choose a lower threshold based on its risk model, but temporary throttling or progressive delays are generally preferable to a permanent lockout that can be abused for denial of service.

Is the policy enforced automatically?

No. The tool produces a specification, as a summary and JSON, to document or implement in your directory, application or identity provider. Nothing is sent or stored: the policy is computed in your browser.

What does the generated JSON contain?

It holds the settings in a normalised form: minimumLength, characterRequirements (lowercase, uppercase, numbers, symbols), disallowCommonPasswords, disallowPersonalData, preventReuse, expirationDays, lockoutAttempts and allowPassphrases. Out-of-range values are brought back within the tool’s limits.

Related tools

Tools similar or complementary to this one.

Similar tools

Check how strong a password is: entropy, weak patterns, estimated time to crack and advice.

Security & privacyFeaturedUse this tool

Generate strong random passwords from 8 to 128 characters, with the entropy shown.

Security & privacyFeaturedUse this tool

Derive a salted PBKDF2-SHA-256 or SHA-512 password hash, or verify a password against an encoded value.

Security & privacyUse this tool