Numeric

PINs without the obvious patterns.

For locks, cards and devices that only accept digits. KeyMint can skip the codes everyone tries first.

Generated in your browser with the Web Crypto API. Nothing is sent or stored.

Generated in your browser Web Crypto randomness Honest entropy figures No accounts, no storage

PIN settings

Short PINs have a small number of combinations. Use one only where the device or service insists, and rely on its limit on failed attempts.

Quick presets

Generate several at once

Choose 5, 10 or 20 to compare candidates side by side. Nothing is stored — the list disappears when you close the tab.

PINs are short by design

A four-digit PIN has ten thousand possibilities; six digits has a million. Those numbers are tiny compared with a password, and they are only safe because the device limits how many guesses an attacker gets. Use a PIN where a service insists on one — not as a substitute for a password.

A surprising share of real PINs are 1234, 0000 or a birth year. KeyMint can reject those patterns, which removes a handful of combinations but keeps you out of the first few thousand guesses anyone would try.

Generated entirely in your browser

KeyMint never receives your passwords. There is no account, no database, no server-side generation and no password history. Close the tab and everything you generated is gone.

Nothing is transmitted

Passwords are never sent anywhere — not to KeyMint, not to an analytics service, not to a breach-checking API, and never placed in a URL.

Nothing is stored

No local storage, no cookies, no IndexedDB. Pinned passwords live in the page's memory and vanish when you close it.

Real randomness

Every choice comes from crypto.getRandomValues() with rejection sampling, so no character or word is more likely than another.

Read the full privacy note

Other ways to make a password

Each mode is the same generator with a different shape. Nothing you make in one is carried into another.