crack-time.tools

We rated the most common leaked passwords with our own strength meter

The estimator on this site, like most password crack-time calculators, scores a password by its length and the kinds of characters in it. We ran it over the 755,994 most frequently used passwords in a public leak list. It rated 204,232 of them (27.0%) Reasonable or better, and 13,509 (1.8%) Strong or Very strong. Every one of them is in a list anyone can download, so an attacker tries them before any brute force starts: against bcrypt at cost 12, the whole list takes one RTX 5090 about 5.3 minutes per stolen hash.

Correction, 1 November 2026. The first version of this analysis used all 1,000,000 entries of the list and reported 34.9% rated Reasonable or better and 42,813 rated Strong or better. A reviewer pointed out that only the first 755,994 entries are ordered by how often the password occurs. The remaining 244,006 are passwords that occur once each (bar one stray duplicate), listed in reverse byte order, so they are not "most common" and have no meaningful rank. They supplied 29,304 of the Strong ratings. This page now covers the ranked entries only.

This is a known problem, measured again

That length-and-character-set meters overrate real passwords is not news. Xavier de Carné de Carnavalet and Mohammad Mannan showed it across commercial meters in "From Very Weak to Very Strong: Analyzing Password-Strength Meters" (NDSS 2014), and Dropbox's zxcvbn estimator (Daniel Lowe Wheeler, USENIX Security 2016) was built to fix it by checking dictionaries and patterns. What this page adds is a current, reproducible measurement of one specific meter, ours, against one public list, with the scripts and data published so anyone can check it.

What we measured

The estimator computes entropy as length × log₂(character-set size), counting 26 for lowercase, 26 for uppercase, 10 for digits and 33 for symbols when any of each appears. It labels the result: under 28 bits Very weak, under 40 Weak, under 60 Reasonable, under 80 Strong, and Very strong above that. That model answers one question well: how long would a password take to find if the attacker had to try every combination of its characters?

Attackers do not start there. They start with passwords other people have already used, in order of popularity. The list we used is the xato-net list in SecLists, built from Mark Burnett's 2015 public release of 10 million username and password pairs and sorted by how often each password occurs. A password's rank on it is, roughly, the number of guesses a dictionary attack needs to reach it.

The analysis script lists four questions in its header: what share of the list the estimator rates Reasonable or better and Strong or better; the same split by rank; how far its time estimate sits from the dictionary attack; and how it rates passwords that meet a typical complexity policy. The correction above changed which entries count, not the questions.

How the estimator labels the 755,994 most common leaked passwords
xato-net list (SecLists), ranked entries only, scored with the crack-time.tools estimator
Show as a table
LabelPasswordsShare
Very weak201,94326.7%
Weak349,81946.3%
Reasonable190,72325.2%
Strong12,2761.6%
Very strong1,2330.2%
Total755,994100%

The labels and the guess counts fail in different places

Near the top of the list the labels are mostly right. In the top 1,000 only 39 passwords score Reasonable or better, because the most common passwords are short and use one kind of character: 123456, password, qwerty. Further down, people add length and a digit or two, and the share labelled Reasonable or better rises to 29.4% in the last band.

The time estimates are wrong everywhere, in a different pattern. The last column compares the estimator's average brute-force guesses (half the keyspace) with the password's rank. It is largest in the top 1,000, where even a "Weak" password is assumed to need hundreds of thousands of times more guesses than the attacker actually spends.

Rank on the listPasswordsReasonable or betterStrong or betterMedian overestimate of guesses
top 1,0001,0003.9%0.1%about 700,000x
1,001 to 10,0009,0006.2%0.2%about 44,000x
10,001 to 100,00090,00012.0%0.3%about 2,900x
100,001 to 755,994655,99429.4%2.0%about 29,000x

Overestimate does not depend on the hash or the hardware, because the estimator's time and the dictionary time divide by the same guess rate. Figures rounded to two significant digits.

What it calls strong

These are the most common passwords at each label, the ones a dictionary attack reaches first, with their rank. Only profanity has been left out.

Most are keyboard walks. 1qaz2wsx3edc is three columns of a QWERTY keyboard, and q1w2e3r4t5y6u7i8 alternates the number row with the row below it. They are long and mix letters with digits, which is all a length-and-character-set model can see. Some of the Very strong entries, such as Hd764nW5d7E1vb1, look machine-generated and probably come from automated account sign-ups that reused one password. The list cannot tell those apart from people, so they stay in the counts.

Complexity rules do not help

269 passwords in the ranked list meet a common composition policy: at least 8 characters with uppercase, lowercase, a digit and a symbol. The estimator rates every one of them Reasonable or better, and 157 of them Strong or Very strong. The most common are L58jkdjP! (#14,581), P@ssw0rd (#15,585), 1qaz!QAZ (#19,834), !QAZ2wsx (#20,047), 1qaz@WSX (#50,842), ZAQ!2wsx (#57,210). Apart from the first, which looks machine-made, they are the same few substitutions and keyboard patterns that attackers' rules generate.

NIST's current guidance points the same way. SP 800-63B-4, section 3.1.1.2, says verifiers "SHALL NOT impose other composition rules (e.g., requiring mixtures of different character types)" and "SHALL compare the prospective secret against a blocklist that contains known commonly used, expected, or compromised passwords." NIST frames the blocklist as a defence against online guessing. Our point is a related one: a password that is on a public list also falls first in an offline attack, whatever the strength meter says.

How long the list takes to try

Using hashcat rates we measured, or derived from a published benchmark (see how fast a GPU guesses each password hash), trying all 755,994 ranked passwords against one stolen hash takes:

bcrypt still matters. Each stolen hash has its own salt and needs its own run through the list, which turns a database of a million users into a long job. It cannot rescue an individual password that is on the list.

What to do with this

The estimator on the home page now checks a sample against the 100,000 most common entries of this list, and can optionally check it against Pwned Passwords.

Method and limitations

Data and code: summary results (JSON), counts by rank band (CSV), analysis script and fetch script, which downloads both lists by commit and checks their checksums.

Updated .