Random Decimal Generator

random
Loading feedback…

Generate random decimal values inside a range you control. Choose 0–8 decimal places, create up to 1,000 values, allow or prevent duplicates, then copy or download the results.

Last updated: August 1, 2026Author: Mateo DíazReviewed by: Riley Williams
Random Decimal Generator
In-browser
Generate random decimals with precise ranges and decimal places

Presets

0.3000 and 0.3 carry the same numeric value, yet a CSV fixture, classroom worksheet, or screenshot test may care about those trailing zeros. This random decimal generator keeps the exact number of places you choose.

Fast, too.

Set the range, precision, and quantity. The results arrive one per line, ready to copy into a spreadsheet or download as a plain text file.

Generate decimal values

Put the lowest allowed value in Minimum and the highest in Maximum. Both fields accept negatives and decimals from -1,000,000 through 1,000,000.

  1. Choose Decimal places from 0 to 8.
  2. Enter a quantity between 1 and 1,000.
  3. Press Generate. Copy keeps the line breaks, while Download saves the batch as random-decimals.txt.

Precision 0 produces whole numbers. That small setting preserves the old integer workflow for a range such as 1 through 12, and it is useful when a test field rejects a decimal point.

Range and precision work together

The generator builds a fixed decimal grid inside your bounds. With a minimum of 1, a maximum of 1.1, and two decimal places, there are 11 possible values from 1.00 through 1.10.

Boundaries are included when they land on that grid.

If a bound carries more digits than the selected precision, the available grid moves inward. A range of 0.001 through 0.009 at two decimal places contains no valid value, because neither 0.00 nor 0.01 sits inside it. The tool shows an error instead of quietly widening the range.

  • Two places gives familiar money-shaped output such as 14.20, though this tool does not apply a currency symbol.
  • 4 places. Handy for rates and rough test measurements.
  • Zero switches to whole numbers.
  • Eight decimal places can model small ratios, but check whether the destination accepts that much precison before pasting 1,000 rows into it.

I think four places is a comfortable default for generic test data. Two often looks suspiciously price-like, and eight creates visual noise (especially in a narrow database console at 125% zoom).

Example decimal batches

A simple 0-to-1 run with three places might produce:

0.418
0.903
0.127
0.550
0.061

Every line has three digits after the point, including 0.550. Generate again and the batch changes.

Negative ranges behave the same way. Set minimum -5, maximum 5, decimal places 2, and quantity 4. One possible result is:

-3.74
0.09
4.21
-0.60

For whole values, choose the Whole preset or set decimal places to 0. A 1-to-6 range then behaves like a six-sided die, with repeated rolls allowed unless Unique values is turned on.

Unique values

Switch on Unique values when a batch cannot contain the same fixed decimal twice. The generator samples without replacement, so 2.40 will appear at most once in that result.

The range has to be wide enough. From 0.0 through 0.2 at one decimal place, only 0.0, 0.1, and 0.2 are available. Asking for four unique values produces a clear error..

Duplicates are normal when the switch is off. They become more likely as the requested quantity gets close to the number of possible values, a detail that can surprise someone generating 95 values from a grid that contains 101.

Random test data

Decimal batches are useful for checking input validation and chart behavior. A QA sheet with exactly 37 generated percentages can reveal labels that collide only around 99.87, while a batch crossing zero helps expose code that assumes every measurement is positive.

  • Populate a spreadsheet column before testing formulas.
  • API fixtures for weights, rates, coordinates, and scores. Keep units in a separate field so 12.50 is not mistaken for kilograms when the contract expects pounds.
  • Stress a chart with values near its upper and lower limits. Generate a broad batch, then add the exact boundaries manually when those endpoints must be covered.
  • Mock prices, with caution. Binary floating-point arithmetic can make money calculations awkward in JavaScript, so production financial code often stores minor units or uses a decimal library.

Random input broadens coverage, although it cannot replace deliberate boundary tests. Keep a failing batch when it uncovers a bug. The tool has no seed, and clicking Generate again will create a different sequence.

Sampling and simulations

A column of values between 0 and 1 can feed a quick classroom simulation or a rough Monte Carlo sketch. The output uses a discrete grid, and the grid spacing is set by decimal places. At precision 2 there are 101 possible values from 0.00 through 1.00; at precision 4, that grows to 10,001.

So resolution matters.

Use enough places for the model, then remember that rounding the output later changes the distribution of displayed values. I could be wrong here, but eight places is usually overkill for a visual demo where the chart bins values into tenths anyway.

For named outcomes, the Random Choice Picker is easier than assigning labels to decimal intervals. The Random Wheel Spinner gives a visible draw, and the Number Sorter can order a copied batch after generation.

How randomness is selected

The page asks your browser for random bytes through crypto.getRandomValues. It then uses rejection sampling to choose evenly from the fixed-precision values that fit inside the range. This avoids the small modulo bias that can occur when raw random integers are squeezed into an uneven interval.

Generation stays local. And no seed is accepted or stored.

That makes replay impossible. If a generated set matters to a bug report, lab note, or 4:12 PM handoff to the next developer, download it before closing the tab. A screenshot can work for five numbers; it becomes miserable at 500.

When the result needs another check

The tool formats output at the requested precision, but another program may remove trailing zeros after import. Excel might display 4.20 as 4.2 depending on the cell format even though the imported numeric value is unchanged.

Watch these cases:

  • A minimum greater than the maximum stops generation.
  • Blank fields are rejected by the browser form.
  • If the interval too tight for the chosen precision, widen the bounds or add decimal places.
  • Unique mode can run out of available values. Lower the quantity, increase precision, or expand the range.

Keep regulated drawings and high-stakes security decisions inside a reviewed system with an audit trail. Browser-generated output has no participant log, signed record, or replayable seed.

Privacy

The bounds and results remain in the browser while you use the page. Nothing needs to be uploaded to Textavia for generation, copying, or the text-file download.

Closing the tab clears the working state. Save a batch first when you need it later.

Frequently Asked Questions
Choose from 0 through 8 decimal places. Precision 0 produces whole numbers, while precision 8 keeps eight digits after the decimal point.
Yes. Both bounds can be decimal or negative values between -1,000,000 and 1,000,000. The selected precision determines which fixed decimal values fit inside that range.
Yes. Turn on Unique values to sample without replacement. The available range must contain at least as many fixed-precision values as the requested quantity.
The tool uses crypto.getRandomValues and rejection sampling to choose evenly from the fixed-precision values inside your range. Generation runs in your browser.
No seed is accepted or stored, so a generated sequence cannot be replayed. Copy or download any results you need to keep.