Three tools solving three unrelated problems: looking at the same number in another base, producing a batch of values that do not collide, and typesetting a figure so a human can read it. What they share is the browser's numeric type, and therefore one common ceiling — the safe integer range ends at 2^53 - 1.
Which tool should I use?
- Base Converter
- For memory addresses, permission masks, colour values and the hexadecimal constants in config files; the four base fields stay in sync. Integers only — the decimal point will not go in — and negatives are written with a leading minus rather than in two's complement, so
-8appears as-1000in binary, not as the run of ones a register would show. A warning appears once a value leaves the safe integer range, and at that point the output can no longer be trusted. - Random Generator
- For a batch of test data, a unique identifier, or placeholder strings. The source of randomness differs between the tabs, and that matters more than the feature list: the UUID tab calls the browser's
crypto.randomUUID, a cryptographic source, while the integer and string tabs useMath.random, whose output can be worked back to its internal state. Fine for fixtures; not for passwords, API keys or the token in a reset link. - Number Formatter
- For making a figure presentable in a report: thousands separator, decimal separator, decimal places from 0 to 10, and scientific notation. On the way in only
.is recognised as the decimal point, so a European-style1.234,56is misread as 1.234. Decimal places are applied by rounding, so reducing them discards precision for real rather than merely shortening the display.
Shared limitations
- All three accept half-width Arabic numerals only, so full-width digits copied out of a report have to go through the full-width converter in the text section first. Random integers and strings come in batches of up to 100, with a maximum string length of 256.
- Base conversion and number formatting both rest on the browser's
Numbertype, so any value past 2^53 - 1 — snowflake IDs, 64-bit database keys — is silently rounded in transit. Keep those on the server side as strings or big integers. - Generation and conversion happen on your machine; random values are not requested from a server and no result is recorded anywhere. The corollary is that nothing survives leaving the page, so press copy while you still can. The page does carry third-party advertising resources, unrelated to the values computed here.
FAQ
Can I use the random strings as passwords?
Not advisable. The string tab draws on Math.random, whose internal state can be reconstructed from enough output — adequate for test fixtures, inadequate for anything protecting access. Use the UUID tab when you need a strong value; for actual passwords, a password manager remains the better answer.
Why is my hexadecimal result a different length than expected?
What is shown is the shortest representation of the value: no leading zeros and no notion of a fixed width. 255 comes out as FF, not 000000FF, so pad it yourself when aligning to a 32-bit or 64-bit field.