Number Tools
Five powerful number utilities — percentages, random numbers, base conversions, Roman numerals, and number properties. All instant, all private, all free.
Five powerful number utilities — percentages, random numbers, base conversions, Roman numerals, and number properties. All instant, all private, all free.
Choose from 5 tabs: Percentage (5 modes), Random/Dice, Base Converter, Roman Numerals, or Number Properties.
Type your numbers. Percentage and Properties tools update instantly as you type. Random tools use a Generate or Roll button.
Use the Share button to copy a URL that restores your exact inputs. Copy individual results or the full report. All runs locally.
Percentage change is directional — it measures how much one value changed relative to the original. Percentage difference is symmetric — it measures the difference relative to the average of the two values, with no "before" or "after." Use % change for before/after comparisons (price changes, growth rates) and % difference when comparing two equal peers.
It uses the browser's built-in Math.random() function, which produces cryptographically unpredictable results in modern browsers. When "Unique only" is selected, a Fisher-Yates shuffle algorithm ensures no duplicates. All numbers are generated entirely on your device — nothing is sent to a server.
The dice roller uses Math.random() which produces a uniform distribution over [0, 1). Each die face has exactly equal probability. Over many rolls, results converge to the expected distribution. It's as fair as any physical die — the expected average for a d6 is 3.5.
The base converter supports Decimal (10), Binary (2), Hexadecimal (16), Octal (8), and any Custom Base from 2 to 36. For bases above 10, it uses digits 0–9 plus letters A–Z. Enter a number in any base and see all conversions simultaneously. Binary output also shows nibble (4-bit) grouping and bit-length classification.
Standard Roman numerals represent integers from 1 to 3,999 (I to MMMCMXCIX). Numbers outside this range cannot be expressed with the traditional seven symbols. The Year Mode is a convenient way to convert historical dates and copyright years directly.
It uses trial division up to √n. For any composite number n, at least one factor must be ≤ √n, so checking up to that point is sufficient. For numbers up to 10,000,000, this requires at most ~3,162 division operations — nearly instant in JavaScript.
These classify a number by the sum of its proper divisors (all divisors excluding the number itself). A number is abundant if the sum exceeds it (e.g., 12: 1+2+3+4+6=16 > 12), deficient if the sum is less (e.g., 9: 1+3=4 < 9), and perfect if the sum exactly equals it (e.g., 6: 1+2+3=6). About 75% of all integers are deficient.
Yes! Click the "Share" button on any tab. This copies a URL that encodes all your current inputs. When someone opens the link, the tool restores exactly the same values so they can see your calculation. Your inputs are also automatically saved to localStorage so they persist across page reloads.
No. All calculations run 100% in your browser using JavaScript. Nothing is uploaded to a server. You can even use most features offline after the page loads (only Chart.js loads from a CDN on first visit).
Bill is $84. What is an 18% tip? Use "X% of Y": (18 ÷ 100) × 84 = $15.12
Item now costs $68 after a 15% discount. What was the original? → $68 ÷ (1 − 0.15) = $80
Pick 6 unique numbers from 1–49. Use the Numbers generator with Unique mode, min=1, max=49, count=6.
Roll 2d6 + 3 for a sword attack. Select d6, set 2 dice and +3 modifier. Results animate individually.
Color #FF8C00 = 255, 140, 0 in decimal. Enter FF in Hex mode → Decimal = 255.
Enter 360 in Number Properties. It has 24 divisors — more than almost any number in its range, making it ideal for angles.