How Randomness Works
How TableRoll generates random results in your browser.
All random results on TableRoll are produced in your browser, not on our servers.
Random source
Modern browsers provide crypto.getRandomValues, which fills a buffer with cryptographically strong random values. TableRoll uses this to produce fair integers for dice rolls and weighted selections. In older environments without this API, the page falls back to Math.random.
Weighted selections
For weighted tables, each enabled entry receives a slice proportional to its weight. A random value is generated across the total weight, and the entry whose slice contains that value is returned.
Range-based selections
For range tables, TableRoll rolls the chosen die and returns the first entry whose range contains the result. The editor validates that ranges do not overlap or leave gaps.
Private data
Your saved tables, presets, notes and generator states are stored in your browser's localStorage. They are not uploaded or indexed.
Limitations
Computer randomness is pseudorandom. While browser crypto APIs are suitable for gaming, they are not certified for gambling, cryptography or legally regulated draws.