Your country

Tools that support it use your country for local currency, number formats, units and paper size. Your choice is saved only in this browser.

Type a name or a two-letter code. Use the up and down arrow keys to move through the countries, Enter to choose one and Escape to close.

Password Policy Generator & Checker

A modern password policy, the settings that enforce it, and a check of yours.

Free preview, no sign-upIncluded in your pass Premium tool Premium pass: ₹799 / $19.99 for 30 days On this device; its files download once
+2 +1 more details No upload Security

Free preview: the policy’s pages with your details and the first part of the wording, the first lines of each settings file and the first findings of your check. Locked until you unlock it: download and copy.

Premium pass ₹799 for 30 days or ₹249 for 1 week, one‑time. Premium pass $19.99 for 30 days or $7.99 for 1 week, one‑time. How to unlock

Try before you buy.

  • Free preview: the policy’s pages with your details and the first part of the wording, the first lines of each settings file and the first findings of your check.
  • Locked until you unlock it: download and copy.
  • Unlock: Premium pass, ₹799 for 30 days or ₹249 for 1 week, a one-time payment that never renews. Unlock: Premium pass, $19.99 for 30 days or $7.99 for 1 week, a one-time payment that never renews.

Ways to unlock shows how to get the full result.

See passes (opens in a new tab)

Printing this result is locked in the free preview.

Basis

NIST’s values: 15 characters for passwords used alone, 8 with another factor, at most 100 failed attempts.

Passwords are used
Length

Characters. NIST asks for at least 15 alone and 8 with another factor, and for systems to accept at least 64.

Failed sign-ins and reuse

0 = no history (NIST does not require one).

After the limit
Blocklist

New passwords are compared with a list of known and predictable passwords. Screen against:

Company, product and place names people use in passwords.

The document

Policy and settings

Check your current policy

Read on your device. Each finding quotes the sentence it is about, so you can check it.

Next steps Done. What next?

Start over

A Premium pass unlocks the full result. See passes

All security & privacy tools

About the Password Policy Generator & Checker

Many password policies still demand a capital letter, a digit and a symbol, and a new password every 90 days. NIST’s current guidance, SP 800-63B-4, says the opposite: make passwords long (at least 15 characters when a password is used on its own, 8 when another factor is always used too), let systems accept at least 64, screen every new password against a blocklist of breached and predictable passwords, and impose no composition rules and no periodic changes — only a change when there is evidence of compromise. Password managers and pasting are allowed, hints and security questions are not, and failed attempts are limited to at most 100.

Choose NIST’s values or a stricter internal rule, say how passwords are used, and this generator writes the policy document (with a Premium pass, copy it or download Word, Markdown or text) and the settings that enforce it: an Active Directory fine-grained password policy in PowerShell, pam_pwquality and pam_faillock files for Linux, and JSON for developers. Paste your current policy under Check your current policy to see, sentence by sentence, where it differs from the guidance.

Without a pass you see a free preview: the policy’s pages with your details and the first part of the wording, marked as a preview, the first lines of each settings file and the first findings of the policy check. The full policy, the settings and the downloads unlock with a Premium pass.

How to use it

  1. Choose the basis — NIST SP 800-63B-4, or a stricter internal rule with longer minimums and fewer allowed failures — and whether passwords are used on their own, with another factor, or both depending on the account.
  2. Adjust the numbers if you want: values below NIST’s minimums are refused with the reason.
  3. Pick what the blocklist screens against and add your own words (company, product and place names).
  4. Fill in the organisation, scope and owner for the document, then read the policy on the right. With a Premium pass, or after unlocking this result, copy it or download Word, Markdown or text.
  5. Open Windows (AD), Linux or JSON for the settings, and copy or download them with a Premium pass, or after unlocking this result.
  6. To review an existing policy, paste it into Check your current policy, or press Try an example.

Examples

An old-style policy, checked
Input
At least 8 characters with an upper-case letter, a digit and a symbol; passwords expire every 90 days; hints allowed; security questions; pasting disabled
Result
Gaps: minimum length (8 is too short for passwords used on their own), composition rules, periodic changes, no blocklist, hints, security questions, paste blocked, no limit on failed attempts. Not mentioned: the longest password accepted, a change after a compromise, how passwords are stored, a show-password option.
Settings for Active Directory
Input
NIST basis, passwords used on their own and with another factor
Result
New-ADFineGrainedPasswordPolicy with MinPasswordLength 15, ComplexityEnabled $false, LockoutThreshold 100; then msDS-MaximumPasswordAge set to “never” and the policy applied to Domain Users.

A fine-grained policy accepts lengths up to 255; the classic Group Policy setting stops at 14.

Common uses

  • Replacing an old password policy (complexity rules and 90-day expiry) with current guidance.
  • Writing the password section of an information security policy or an audit response.
  • Configuring Active Directory or Linux servers to match the written policy.
  • Giving developers the exact rules for a sign-up form.
  • Reviewing a supplier’s or a client’s password policy against NIST’s guidance.

What SP 800-63B-4 requires

  • Length: at least 15 characters for passwords used as a single factor, at least 8 for passwords used only with another factor; systems SHOULD accept at least 64. All printable ASCII characters, the space and Unicode SHOULD be accepted, each code point counting as one character, normalised with NFC (§3.1.1.2).
  • No composition rules (SHALL NOT) and no periodic changes (SHALL NOT), but a forced change when there is evidence of compromise (SHALL).
  • Blocklist (SHALL): the whole new password is compared with known, expected or compromised values — earlier breaches, dictionary words, the service name, the user name — refused with the reason, and guidance is offered.
  • Entering passwords: password managers and autofill SHALL be allowed, pasting SHOULD be, and an option to show the password SHOULD be offered; no hints readable before sign-in, no knowledge-based questions, no truncation.
  • Failed attempts: no more than 100 consecutive failures per account, by disabling the password (§3.2.2); bot checks, growing delays and risk checks may be added.
  • Storage: salted (at least 32 bits) and hashed with a password hashing scheme resistant to offline attacks, cost as high as practical.

The publication page has the complete document.

The Active Directory settings

The PowerShell creates a fine-grained password policy (a Password Settings Object) with New-ADFineGrainedPasswordPolicy and applies it to a group. A PSO accepts a minimum length of 0 to 255 (schema), while the classic Group Policy setting accepts 0 to 14 (Microsoft Learn). Expiry is switched off — and with Disabled until reset, a locked account stays locked until an administrator unlocks it — with the value Microsoft documents for “never” (-9223372036854775808; PSO attribute constraints)), set after the policy is created, because the observation window may not be longer than the lockout duration. Turning complexity off also removes Windows’ check for the account name in the password, and Active Directory has no blocklist of its own, so add a password filter that screens against one on every domain controller.

The Linux settings

  • pam_pwquality (pwquality.conf(5)): minlen with every credit at 0 is a plain minimum length; minclass, maxrepeat and maxsequence at 0 mean no composition rules; dictcheck, usercheck, gecoscheck and badwords screen against the cracklib dictionary, the user name, the account’s full name and your own words.
  • pam_faillock (faillock.conf(5)): deny is the limit; unlock_time = 0 keeps an account locked until it is reset.
  • Expiry: PASS_MAX_DAYS in login.defs applies to new accounts; chage -M -1 removes the maximum age from an existing one.

How the policy check works

The text is split into sentences and rules — at full stops, semicolons, bullets and line breaks, with Markdown and wiki formatting ignored — and each is read for the topics above: lengths (in digits or words), composition terms, expiry periods, blocklists, hints, security questions, paste, lockout numbers, truncation and storage. A requirement and its negation are told apart where they stand (“must contain a digit” is a gap; “digits are not required” and “no upper-case letters, digits or symbols are required” are not), and numbers next to “with MFA” count as the minimum for passwords used with another factor. A lockout that lifts by itself after some minutes is marked for checking, because SP 800-63B-4 asks for the password to stop working after at most 100 consecutive failures. Every finding quotes its sentence, so check it before you act: the reading is careful, but a policy can phrase things in ways no pattern foresees.

Limitations

  • This is a template based on NIST SP 800-63B-4; other rules may apply to you (a regulator, a contract, a payment-card standard). Have it reviewed before you adopt it.
  • A fine-grained password policy has one minimum length: give accounts that always use another factor their own policy if their minimum differs.
  • Neither Active Directory nor pam_pwquality checks breached-password lists out of the box: the policy requires it, and the settings name what to add.
  • The policy check reads English text, quotes what it bases each finding on, and can miss unusual wording.

Privacy

On this device; its files download once

The policy, the settings and the check are made in your browser; nothing you type or paste is uploaded. Your choices, including the organisation name, are remembered in this browser only so the policy is the same next time — Reset clears them.

Frequently asked questions

What do I get without a pass?

Without a pass, Password Policy Generator & Checker shows the policy’s pages with your details and the first part of the wording, the first lines of each settings file and the first findings of your check. Until you unlock it, the result can’t be downloaded or copied. A Premium or Ultimate pass, a one-time payment that never renews, unlocks the full result. The pricing page lists the passes and their prices.

Does NIST really say passwords should not expire?

Yes. SP 800-63B-4 says verifiers SHALL NOT require users to change passwords periodically, and SHALL force a change when there is evidence of compromise. Forced changes lead to predictable patterns — the same word with a number that goes up by one — which attackers know to try.

Why 15 characters, and when is 8 enough?

Length is what makes a password hard to guess. SP 800-63B-4 asks for at least 15 characters when the password is the only thing standing between an attacker and the account, and allows 8 when the password is always used together with another factor, such as an authenticator app or a security key.

Are composition rules (upper case, digits, symbols) wrong?

SP 800-63B-4 forbids them: people meet them in predictable ways (a capital first letter, “1!” at the end), so they add little strength and much frustration. The blocklist stops the predictable passwords instead.

Is a lockout after 3 or 5 attempts allowed?

Yes — the guidance sets a ceiling of 100 consecutive failures, and lower limits are allowed. Very low limits let anyone who knows a user name lock that person out, so many organisations choose about 10 together with growing delays.

How do I screen passwords against breaches?

Compare new passwords with a list of passwords from known breaches, for example through a k-anonymity service that never receives the password itself — the Pwned Password Checker shows how such a check works. In Active Directory this needs a password filter on the domain controllers; on Linux, a cracklib dictionary built from such a list.

Quick answers and tool search

Type to search tools or to get a quick answer, for example 18% of 2500. Use the up and down arrow keys to move through the results, Enter to choose, and Escape to close.